是否可以在不创建新图像的情况下将子图像绘制到 canvas
Is it possible to draw a sub image to a canvas witout creating a new Image
我最近一直在试验一些自定义组件,但在资源分配方面遇到了一些问题。
例如,如果我有这样的方法:
void paintSubImage(Graphics g, int x, int y, int w, int h, Image img){
g.drawImage(img.subImage(x,y, w, h), 0, 0);
}
在这种情况下,对 subImage 的调用实际上生成了一个新图像。
有什么办法可以解决这个问题。我不害怕直接访问 RGB int 数组,但我不确定将其绘制到图形上下文的最佳方法。
那确实效率很低。 "better" 方法是在图形目标和绘图上设置剪辑,这样只会显示您想要的图像部分。
我最近一直在试验一些自定义组件,但在资源分配方面遇到了一些问题。 例如,如果我有这样的方法:
void paintSubImage(Graphics g, int x, int y, int w, int h, Image img){
g.drawImage(img.subImage(x,y, w, h), 0, 0);
}
在这种情况下,对 subImage 的调用实际上生成了一个新图像。 有什么办法可以解决这个问题。我不害怕直接访问 RGB int 数组,但我不确定将其绘制到图形上下文的最佳方法。
那确实效率很低。 "better" 方法是在图形目标和绘图上设置剪辑,这样只会显示您想要的图像部分。