我正在寻找一种简单的方法来生成以pdf格式生成的标签的预览。如果我能将这些pdf转换为图像并在实际打印/下载之前将它们显示给用户,那就太棒了。
该应用程序当前正在Jruby on rails环境中运行,但我们很可能会切换到两个应用程序,一个在本机ruby(主应用程序)中运行,另一个在jruby(pdf工具)中运行。因此,选择并不仅限于这些世界之一。
到目前为止,我看到以下选项:
PDF生成本身将永远处于Jruby环境中,因此JMagick听起来是个好主意(期待可能的JNI麻烦)。另一方面,如果解决方案不限于一个平台,那将是很好的。
有什么想法吗?建议?糟糕的经历?也许是一个完全不同的想法?
谢谢!
答案 0 :(得分:2)
你在Linux上吗?
sudo apt-get install imagemagick
在你的红宝石代码中
system "convert -colorspace rgb -density 150 ../path/whatever.pdf ../path/whatever.jpg"
-density是最终图像的DPI
-colorspace修复了我看到的颜色问题
答案 1 :(得分:1)
这是ImageMagick的一个非常薄的纯Ruby包装器。您可以通过一些模块方法轻松地将任何命令发送到ImageMagick:
www.misuse.org/science/2008/01/30/mojomagick-ruby-image-library-for-imagemagick /
它也应该在jruby上工作正常,因为没有DLL魔法或任何东西。
答案 2 :(得分:1)
我使用IText进行PDF生成/操作。它是一个Java jar,但从JRuby调用它真的很容易。如果将它与FlyingSaucer项目结合使用,您还可以生成图像。两者都很容易使用。