java - 在保持尺寸的同时移动图像

标签 java image image-processing

我有一张图片,我想将其移动一些 x、y 值然后保存。我的问题是我想保留原始尺寸,以便在移动图像后留下 x 和 y“空白”空间。

还有,有什么方法可以将“空白”区域设置为黑色吗?

示例:我将一张 600x600 的图像向下移动 45 并向左移动 30,这样图像仍然是 600x600,但结果具有 45 英寸的高度和 30 英寸的“空白”空间。

到目前为止,我一直在使用 BufferedImagegetSubimage 方法来尝试解决这个问题,但我似乎无法恢复到原始尺寸。

关于如何解决这个问题有什么想法吗?

最佳答案

您可以通过创建一个新的缓冲图像并在其上绘图来做到这一点。

// Create new buffered image
BufferedImage shifted = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
// Create the graphics
Graphics2D g = shifted.createGraphics();
// Draw original with shifted coordinates
g.drawImage(original, shiftx, shifty, null);

希望这能奏效。

关于java - 在保持尺寸的同时移动图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16401779/

相关文章:

用于控制进程生命周期的 Java 库

java - 如何从 MapReduce 中引用本地 HDFS 文件?

java - SqlServer2016,Hibernate 架构验证 : Missing table, 但表存在于数据库中

iOS侧滚动图画小说

java - eclipse java 如何将 sqlite-jdbc-(VERSION).jar 放入我的项目并使用它

c - 如何读取.pgm文件并使用malloc分配内存?

image - ffmpeg 在不同时间点在视频中嵌入多个图像

image-processing - OpenCV 模板匹配和透明度

image-processing - 谁给我推荐了一个专业的计算机视觉网站,这样我就可以在里面提问

c++ - 查找图像上的主色