我在java中有一个程序,其中tif文件在源缓冲图像中读取,然后这个缓冲的图像被复制为目标缓冲图像。 当我在磁盘上写入此缓冲图像时,图像会丢失其坐标信息。 可以做些什么,以便不丢失坐标信息?
我的代码是:
/* Check if imageType if tif */
if (imageType.equalsIgnoreCase(TIFF)) {
bufferedImageType = BufferedImage.TYPE_INT_RGB;
}
BufferedImage destination = new BufferedImage(source.getWidth(), source.getHeight(),
bufferedImageType);
/* Loop to cover all pixels */
for (int width = 0; width < source.getWidth(); width++) {
/* Loop to cover all lines */
for (int height = 0; height < source.getHeight(); height++) {
destination.setRGB(width, height, source.getRGB(width, height));
}
}
file = new File(TEMP_DIR + TEMP_FILE_NAME + "tif");
ImageIO.write(destination, "tif", file);
答案 0 :(得分:0)
我知道这篇文章很老了,但不过......
如果您正在讨论在此过程中丢失的所有标头数据,那么您可以使用Apache Commons Imaging将标头从源图像文件复制到目标图像文件。
以下是一个例子: