【发布时间】:2011-05-21 00:10:59
【问题描述】:
我想将一个图像的一部分复制到另一个较小的图像中:换句话说,复制一个子矩形。
我有一个用于源的 Graphics2D 对象,我可以为目标制作一个对象,并且我知道 targetGraphics2D.drawImage(Image img,....) ,但是我如何从 sourceGraphics2D 中获取该 img?
答案(根据 aioobe):源需要是 Image 而不是 Graphics2D。
Image.subImage()是获取源码相关部分的方法。
【问题讨论】:
-
请注意 subImage() 不会复制底层图像数据,至少对于 BufferedImage。因此,如果您在通过 subImage() 获得的图像上绘制,您也会修改原始图像,而使用 target.createGraphics().drawImage(Image img, ...) 您实际上是在复制。
标签: java image graphics graphics2d image-clipping