问题标签 [im4java]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
838 浏览

java - 使用 im4java 创建透明画布

如何使用 im4java 创建一个空的透明画布。

使用命令行,我可以这样做:

但是使用 im4java,我被卡在 canvas 命令上:

但这只会引发无法找到 out.png 的错误。所以我假设它想用它作为输入图像。

如何创建新图像?

0 投票
1 回答
2885 浏览

image - 如何使用 im4java 提高图像质量?

我正在使用 im4java 库进行 ImageMagick 的图像处理操作。

我正在使用的代码如下所示:

但是生成的图像质量很差。使用命令行做同样的事情会产生 4 倍的大小和更好的质量。使用 im4java 时是否需要设置任何额外的设置?文件格式为.jpg。提前致谢...

0 投票
0 回答
950 浏览

graphicsmagick - 调整 GIF 大小会丢失动画

我正在使用 GraphicsMagick (1.3.16) 和 im4java (1.4.0) 创建 GIF 的缩略图。在命令行中,我可以执行以下操作:

缩略图创建成功,保留动画。但是我的应用程序中的某些内容没有翻译,因为看似相同/相似的命令:

创建仅捕获动画的单个图像的缩略图。注意:输入通过管道输入,输出捕获为 BufferedImage。

如果有帮助,这里是用于创建我正在使用的上述 cmd 的代码块:

我错过了什么?!

编辑:有趣的是,当我改变

图像是用动画正确创建的。

我还发现从 s2b.getImage() 返回的 byte[] 长度只有 4,8777 字节(作为单个图像的 gif),而使用直接文件路径成功创建的 gif thumb 是 190,512 字节,这让我相信问题在于命令/流的某些设置。

0 投票
1 回答
1193 浏览

java - im4java 转换为 jpg,图像崩溃

我想使用 im4java 将图像从 gif 转换为 jpeg。执行后应该有一张gif和一张ipeg图片。但是当我这样做时。有3张图片。一个是原始gif,一个是新的nomarl jpeg,另一个是崩溃的jpeg图片。有些图片可能会导致此问题。有些可能不会。有没有人知道为什么?谢谢


0 投票
1 回答
2205 浏览

java - im4java 读取图像

我尝试使用库 im4java 读取 Java 中的图像:

问题是 Info() 无法识别图像。一个例外被称为:

在路线中,我试图放置完整的路线,但它不起作用。然后我尝试用命令和操作来做,但不工作:

错误是:

0 投票
1 回答
544 浏览

java - 对 im4java 的性能进行基准测试

我在我的项目中使用 im4java 来处理各种图像处理技术,例如裁剪、调整大小、填充和旋转。在此之前,我使用的是java.lang.Runtime.exec在命令提示符下运行命令。现在,当我对这两种方法进行基准标记时,它们几乎给出了相同的结果!我不需要 的并行处理功能im4java,因为一个进程的输出是另一个进程的输入,因此是顺序的。就我而言,它只提供了一个优势:易用性。就这样。

您是否认为我的代码中缺少某些内容或缺少某些内容?任何建议都会有很大帮助。提前致谢!

0 投票
1 回答
3210 浏览

java - 在 Java jUnit 中比较 2 个图像的最佳方法是什么?

我正在编写一个 junit 测试用例来验证裁剪和调整大小类。该类相当简单,它只是通过 Im4Java 将调用委托给 ImageMagick。但是为了正确地做事,我正在尝试编写一个 jUnit 测试用例。

我使用 Photoshop 手动创建了预期的结果图像,并试图将它们与我的裁剪/调整大小类生成的图像进行比较。问题是 ImageMagick 编写的标题和 Photoshop 编写的标题不同。所以简单的逐字节比较是行不通的。

ImageMagick 提供了一个比较功能,当从命令行运行时,预期结果与我的班级产生的结果之间没有像素差异。但是 Im4Java 没有为此比较函数提供任何包装方法。

不必自己调用 Runtime.exec() ,有没有办法可以在我的测试用例中比较这两个图像?

0 投票
1 回答
748 浏览

java - im4java 中的进程池

伙计们在我的项目(java)中使用 imagemagick 库进行图像处理。当多个请求到达服务器时,它的响应非常缓慢。现在,多个convert命令(作为单个进程执行)同时执行,以避免process pooling在 im4java 中考虑延迟。以下替代方案会有帮助吗?:

  • im4java 中的进程池- 有没有办法仅在 im4java 中实现(我应该使用 gm4java 包装器,我猜它支持进程池 - 但是,它几乎没有限制,比如不使用缓冲图像)?
  • 专用服务器- 使用专用服务器仅用于图像处理(我想要的最少)。

我应该采用其他方法吗?提前感谢您的帮助!

0 投票
1 回答
1474 浏览

imagemagick - GraphicsMagick 裁剪:显示将被裁剪的内容

我正在开发一个照片应用程序,我需要一些建议,我应该如何使用 Graphics/ImageMagick 解决以下问题。

  1. 给定一张分辨率为:2048x1536 的照片
  2. 给定一个指定的分辨率:1864x1228
  3. 调整图像大小并用图像填充指定的分辨率(现在是 1864x1398)
  4. 原始图像的高亮区域将被裁剪(至 1864x1228)

我有一个可行的解决方案,可以正确调整图像大小和裁剪图像:

问题是我应该如何执行以下操作:显示完整图像而不是裁剪版本,并突出显示将被裁剪的图像区域。我更喜欢裁剪图像周围的红色边框,并显示带有 alpha 层的裁剪部分。

我有一个我不太喜欢的想法:从原始图像生成一个带有 alpha 层的图像,并将裁剪后的图像放在它上面,并带有红色边框。它似乎不是最佳解决方案:) 我的另一个想法是使用 javafx imageviews 来做到这一点,但它似乎也不是最理想的。

笔记:

  • 我正在使用带有 GM 的 im4java。我也接受命令行解决方案(我会弄清楚并将其发布在 im4java 中;)
  • 我们可以限制只讨论水平图像,我可以弄清楚垂直操作

任何意见将不胜感激。

0 投票
2 回答
3164 浏览

image - 如何使用 im4java 调整图像大小?

我正在尝试使用 im4java 调整图像大小。我还没有找到任何工作示例,并且他们的 JavaDocs 不完整。

尽管进行了渲染提示调整,OOTB Java 解决方案仍不足,并导致生成的图像质量不佳。