将 PDF 转换为 JPG 的替代解决方案
Posted
技术标签:
【中文标题】将 PDF 转换为 JPG 的替代解决方案【英文标题】:alternative solution to convert PDFs to JPG 【发布时间】:2011-12-14 16:19:53 【问题描述】:我已经使用 ImageMagick 和 Ghostscript 完成了我的课程。我不理会它,继续其他领域的开发,一整天我一直在拖网论坛试图让 ImageMagick 在我的 CentOS 服务器上工作,现在我可能会沮丧地哭泣...... .
有没有更简单的解决方案来简单地将所有文本 PDF 转换为 jpg 缩略图,这样我就可以解决这个令人头疼的问题了?似乎没有人知道“Postscript Delegate Failed”是什么意思,我不知道我要安装、删除、重新安装多少次,./configure
,make
,make install
,tar
,羽毛,挂起,绘制和分割 Ghostscript 和所有开发库......将 PDF 转换为缩略图有多难?????
救命!!请!!!!
【问题讨论】:
【参考方案1】:在 CentOS 上?
/usr/bin/evince-thumbnailer --help
Usage:
evince-thumbnailer [OPTION...] <input> <ouput> - GNOME Document Thumbnailer
Help Options:
-h, --help Show help options
Application Options:
-s, --size=SIZE
它生成PNG;很容易转换。 -s SIZE
选项似乎代表 最小 维度,保留纵横比。 (对我来说,-s 128
的美国信函大小的文件生成了 128×166 像素的 PNG。)
它在evince
包中。
【讨论】:
我刚刚安装并尝试了它,它没有给出错误消息,但它也没有给出缩略图:( 听起来那里可能存在更大的问题……rpm -q --verify evince
是否显示包和依赖项已正确安装?您传递的输出文件名是否在没有写权限的目录中?在(CentOS 5、Fedora 15、Fedora 16)上为我工作……
我很好吃 - yum install evince。
虽然找到了其他东西....通过直接使用 gs 我已经设法获得所有要转换的文本 PDF,但是有谁知道给 gs 哪个选项来指定最大尺寸?有问题的 PDF 为 1040x3700,我希望它的缩略图最大为 80 像素...有些 PDF 可能宽或高,所以我需要一个最大的统计数据。
可能存在与权限相关的问题或类似问题?我假设您的用户对输入具有读取权限,并且对包含输出的目录具有rwx
权限(以及该目录路径上的rx
),&c(通常的嫌疑人)?【参考方案2】:
好的,我找到了解决方案。忘记尝试让ImageMagick 转换您的PDF。我在这方面花了几个月的时间,但从未找到解决方案。
所以改为这样做。
直接使用gs
将PDF文件转换为jpeg。
exec("gs -sDEVICE=jpeg -o $tmp_image -dJPEGQ=95 $pdf_name 2>&1");
有了 tmp_image,您就可以运行 ImageMagick convert
应用程序
exec("convert -colorspace RGB ".$tmp_image." -geometry 80x80 -quality 100 ".$thumb_image." 2>&1");
记得unlink($tmp_image);
停止混乱。您应该有转换后的 PDF
【讨论】:
以上是关于将 PDF 转换为 JPG 的替代解决方案的主要内容,如果未能解决你的问题,请参考以下文章
iText PDF;如何使用 Java 将 jpeg2000 转换为 jpg
仿百度文库方案[openoffice.org 3+swftools+flexpaper] 使用iText将jpgjpegpng转换为pdf
仿百度文库方案[openoffice.org 3+swftools+flexpaper] 使用iText将jpgjpegpng转换为pdf