gpt4 book ai didi

java - 在 JAVA 中将多个 JPEG 文件转换为多页 TIFF 的 ImageMagick 示例

转载 作者:行者123 更新时间:2023-11-29 08:52:51 27 4
gpt4 key购买 nike

我的要求是将多个 jpeg 文件转换为一个多页 Tiff 文件。最初,我经历了这个 post并且我能够使用 jai_imageio 库在 java 中创建 tiff 文件,但不幸的是这些库不是开源的。后来听说了ImageMagick这可以给我我想要的东西。我在我的机器上安装了 ImageMagick 并编写了一个小的实用程序,它将多个 jpeg 作为输入并提供一个 TIFF 文件作为输出。

代码:

try {
Process p = Runtime
.getRuntime()
.exec("C:/Program Files/ImageMagick-6.8.8-Q16/convert E:/1.jpg E:/2.jpg E:/3.jpg -compress JPEG "
+"E:/mul.tiff");
p.waitFor();

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

该实用程序工作得很好,但上面程序的问题是,我无法调试,即使我为输入文件指定了错误的路径,上面的代码也不会抛出任何错误。

我知道 Jmagick它为 ImageMagick 提供了一个 Java 接口(interface)。如果有人为我提供一个 Jmagick 示例程序,它可以通过多个 jpeg 作为输入创建多页 tiff,这对我会有帮助。

谢谢。

最佳答案

经过大量谷歌搜索,我找到了 im4java这帮助我将多个 jpeg 转换为一个 tiff。它是 ImageMagick 的 java 包装器.有关设置和示例,请访问 this .下载所需的 jar here并将其放入您的类路径中。

这是我正在使用的示例代码。

     // create the operation, add images and operators/options
ConvertCmd cmd = new ConvertCmd();
IMOperation op = new IMOperation();
op.addImage("E:/jpeg/001.jpg");
op.addImage("E:/jpeg/003.jpg");
op.addImage("E:/jpeg/006.jpg");

op.compress("JPEG");
op.format("TIFF");// set the format.
op.addImage("E:/im4j-compressed.tiff");

// execute the operation
cmd.run(op);

关于java - 在 JAVA 中将多个 JPEG 文件转换为多页 TIFF 的 ImageMagick 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21830161/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com