问题标签 [jmagick]

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 回答
119 浏览

png - 无法使用 Jmagick 库读取 PNG 格式的图像

我能够读取 JPEG 格式的图像并且可以写入 JPEG 格式的图像。我想对 PNG 格式的图像做同样的事情,但我不知道该怎么做。

0 投票
1 回答
1045 浏览

java - tomcat下的原生库配置

我试图让 JMagick 库在 Tomcat 下工作,以便在上传后进行一些图像翻译。

Magic 以半存根 library.jar 存档和本地库 libJMagick.so 的形式出现。我使用过
System. LoadLibrary ("JMagick");
但在catalina.out抱怨找不到库时出现错误(详细信息在此消息的末尾)。关键条款是:

原因:java.lang.RuntimeException: Can't load MagickLoader (class not found) at magick.Magick.(Magick.java:25)

那么我应该把这些库放在哪里,目前它们在 WEB-INF/lib 中,以便 tomcat 可以使用它们

0 投票
0 回答
530 浏览

java - 在 Mac 上安装 JMagick 以使用 Eclipse

我尝试了许多不同的安装 Imagemagick 的方法(据我所知,我应该得到 jmagick)—— brew、二进制文件、这个安装程序:http ://cactuslab.com/imagemagick/等等。

然后我尝试按照这里所说的去做:http ://www.rori.me/tech/installing-imagemagick-jmagick-with-eclipse-ubuntu/,但找不到 libJMagick.so 文件——我只有一个魔法.so 文件。我尝试将eclipse指向那个,但我继续得到

线程“主”java.lang.UnsatisfiedLinkError 中的异常:java.library.path 中没有 JMagick

尝试运行小示例程序时出错。

谁能帮帮我吗?

0 投票
1 回答
421 浏览

java - Image Magick Java 支持

大多数时候,当我使用 Jmagick API 时,我得到ImageInfo() init<>异常。有没有人有同样的想法。它是普遍发生还是需要在 Image Info 类上解决?或者我这边有什么错误。帮助表示赞赏。

谢谢。

0 投票
1 回答
483 浏览

java - 来自 ImageMagick (JMagick) 的饲料 tesseract (Tess4J)

我正在尝试创建一个可以对多种格式的图像进行 OCR 的 Java 程序。图像不能直接从文件中读取,因为它们的字节要通过网络发送。

我目前能够使用 ImageIO 读取图像像素的原始字节。但是我想支持 ImageMagick 支持的所有格式,所以使用 JMagick 读取图像,然后将原始字节提供给 Tess4J。我不确定我应该如何处理这个问题。我发现这个函数可以给我字节:

但是我必须编写特殊的方法来将获得的 PixelPacket 对象转换为连续字节。我可以做到这一点,但也许有更好的方法来做到这一点?例如,我可以在这种方法中使用一些非常原始的文件格式(甚至比http://en.wikipedia.org/wiki/BMP_file_format#mediaviewer/File:BMPfileFormat.png还要多):

imageInfo对象必须指向这种原始格式,然后我可以从bytes数组中删除像素信息。

这是正确的方法还是我应该使用更简单(更快/更健壮)的东西?

编辑

我发现我想到的格式称为PNM

0 投票
1 回答
4432 浏览

java - 无法让 JMagick 工作

我对 JMagick 库有奇怪的问题。我使用 Debian,所以我安装了 libjmagick6-java 和 libjmagick6-jni,以下是我完成的步骤:

  • 我已经jmagick-6.6.9.jar从复制/usr/share/java/$JAVA_HOME/jre/lib/ext/
  • 我已将/usr/lib/jni(where is libJMagick.so) 设置为本地库位置:
    • JRE 系统库(在 eclipse 中)
    • jmagick-6.6.9.jar(在 Eclipse 中)

我还在简单的 Java 项目中测试了 JMagick 并且它可以工作,但是在第二个项目中,它是在 Tomcat 6 中运行的 Web 应用程序,它只是不工作..

这是我的代码,它可以工作 - 所以必须正确安装 jmagick

这是 webapp 中不工作的代码:

最后这里是提到的代码抛出的异常:

请告诉我一些如何解决这个问题的想法..提前谢谢!

0 投票
2 回答
628 浏览

java - Im4java 中的 -define 和 -limit

我需要知道如何将 imagemagick 命令行命令转换为 java im4java 代码命令行:

我知道如何在 im4java 中使用 convert 和 -append 但是 -define 和 -limit 呢?这是我得到的:

也许只是添加op.limit("memory 40GiB")op.define("registry:temporary-path=F:\\imageMagick")?不知道是不是一样。。

0 投票
1 回答
220 浏览

java - JMagick - 如何改变亮度和对比度?

我想通过使用 jmagick 来改变图像的亮度和对比度。

0 投票
2 回答
2049 浏览

java - 在 Android 中将位图转换为 TIFF

我正在开发一个具有外部 API 的项目,我需要通过该 API 提交图像,并且该 API 的要求是图像是具有第 4 组压缩的 TIFF。我尝试了几种不同的方法将我的位图转换为 TIFF,包括在 Android 中使用 JAI imageio、将 libtiff 移植到 NDK 和使用 OpenCV。这里通常推荐 JAI imageio 作为一种可能的解决方案,但我发现即使我找到了 JAI imageio 的独立版本,我仍然对 javax.imageio 有未满足的依赖关系,因此无法构建我的应用程序。移植 libtiff 应该可以工作,并且我的代码中有一个分支,我已经开始了这个过程,但由于这样做需要时间,我更喜欢替代解决方案。OpenCV我也开始实现了,

目前,我一直在使用https://github.com/paulasiimwe/Android-ImageMagick的 Android 移植版 ImageMagick ,这似乎是一种很有前途的方法。到目前为止,我已经在我的应用程序中进行了设置,并且能够将图像输出到文件中以验证图像。我可以使用它来转换为几种不同的图像格式,但是当我尝试转换为 TIFF 时,我收到了一个 SIGSEGV 并且应用程序崩溃了。

相关的代码片段是:

我尝试了对 setMagick 和 setCompression 的不同调用的各种排列,所有这些都产生相同的结果。如果调用了 setMagick("TIFF"),那么当它到达 image.writeImage(info) 时,应用程序将崩溃并显示以下输出:

有没有人在 Android 中使用 ImageMagick 转换为 TIFF,或者是否有人知道在 Android 中转换为 TIFF 的干净方法,该方法经过验证可以实际工作。我知道这一定是可能的,因为 Play 商店中有用于转换图像格式的应用程序,其中包括转换为 TIFF,其中包括来自发布此 Android 端口的 Paul Asiimwe 的应用程序。

编辑#1:

通过使用以下代码,我可以获得一个在所有其他方面似乎都是正确的未压缩 TIFF,但它不会将其压缩为第 4 组压缩。

0 投票
1 回答
3452 浏览

java - 如何让 im4java 使用 BufferedImage

我正在使用im4java 1.4.0 版从 Java访问ImageMagick功能。它可以很好地处理与文件之间的图像。

开发人员指南有一节介绍使用缓冲图像而不是将输出写入文件,并且有一个测试 (TestCase13) 演示了使用缓冲图像作为输出。但是,当我使用缓冲图像运行任何操作时,我会收到一条org.im4java.core.CommandException说明:no ImageReader for given format.

我尝试了许多不同的东西(包括添加jai_imageio.jar以提供其他格式),但似乎没有任何效果。显示问题的基本测试代码(基于 im4java.jar 的 TestCase13)是:

运行它会引发以下错误:

该错误发生在该convertCmd.run行上,但是,问题似乎在于将 outputConsumer 设置为 stream2BufferedImage。我该如何解决?im4java 和 BufferedImages 是否存在已知错误?有没有比导出到临时文件然后将其读回 BufferedImage 更好的解决方法?我知道 JMagick(作为 im4java 的替代品),但由于其他原因还没有找到一个好的解决方案。

提前感谢您的任何帮助或想法。