【发布时间】:2011-12-15 05:00:10
【问题描述】:
我正在尝试在 Java 中剪切图像的某个部分并将其保存回磁盘。有没有一个函数可以从 X、Y 中截取指定宽度和高度的图像?
【问题讨论】:
-
你试过在你最喜欢的搜索引擎中输入“java image crop”吗?还是在stackoverflow搜索栏里?
-
到底为什么这被关闭为“过于宽泛”?甚至已经发布了一个清晰简洁的答案!
我正在尝试在 Java 中剪切图像的某个部分并将其保存回磁盘。有没有一个函数可以从 X、Y 中截取指定宽度和高度的图像?
【问题讨论】:
你通常会
BufferedImage(dst)。Graphics 对象src)BufferedImage 上绘制所需的部分
ImageIO将缓冲图像写入文件。在代码中:
Image src = ImageIO.read(new File("duke.jpg"));
int x = 10, y = 20, w = 40, h = 50;
BufferedImage dst = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
dst.getGraphics().drawImage(src, 0, 0, w, h, x, y, x + w, y + h, null);
ImageIO.write(dst, "png", new File("duke_cropped.png"));
鉴于此.jpg...
...它会生成这个.png:
【讨论】: