1

我正在寻找一种简单的方法来为生成为 pdf 的标签生成预览。如果我可以将这些 pdf 文件转换为图像并在实际打印/下载之前将它们展示给用户,那就太好了。

该应用程序当前在 Jruby on rails 环境中运行,但我们很有可能切换到两个应用程序,一个在本机 ruby​​(主应用程序)中运行,一个在 jruby(pdf 工具)中运行。因此,选择并不仅限于这些世界之一。

到目前为止,我看到以下选项:

  • RMagick:看起来很成熟,ImageMagick 作为后端,可能不适用于 jruby
  • RMagick4J:与 RMagick 一样,但可用于 JRuby,显示为非活动状态,仅支持子集。
  • Jmagick:Java 的 JNI 接口,仅适用于 JRuby

PDF 生成本身将始终在 Jruby 环境中,因此 JMagick 听起来是个好主意(预计可能的 JNI 麻烦)。另一方面,如果解决方案不限于一个平台,那就太好了。

有任何想法吗?建议?糟糕的经历?也许是一个完全不同的想法?

谢谢!

4

3 回答 3

2

你在 Linux 上吗?

sudo apt-get install imagemagick

在你的红宝石代码做

system "convert -colorspace rgb -density 150 ../path/whatever.pdf ../path/whatever.jpg"

-density 是最终图像的 DPI

-colorspace 修复了我在颜色消失时遇到的问题

于 2013-01-17T22:54:43.080 回答
1

这是 ImageMagick 的一个非常薄的纯 Ruby 包装器。您可以通过一些模块方法轻松地将您想要的任何命令发送到 ImageMagick:

www.misuse.org/science/2008/01/30/mojomagick-ruby-image-library-for-imagemagick/

它在 jruby 上也应该可以正常工作,因为没有 DLL 魔法或引擎盖下的任何东西。

于 2009-05-20T18:06:29.453 回答
1

我使用IText生成/操作 PDF。它是一个 Java jar,但从 JRuby 调用它真的很容易。如果将它与FlyingSaucer项目结合使用,您还可以生成图像。两者都非常易于使用。

于 2009-06-04T14:46:09.607 回答