终于搞定了多张图片合成一份pdf文档!
之前在论坛讨论过这个问题,当时ee同学给出的解决方法是: convert *.jpg xx.pdf 用的是imagemagick来做的,但这个搞起来非常慢,并且生成的pdf文档要比全部图片总量大好几倍,所谓事倍功半。另外,直接运行这条命令后会发现生成的pdf文档中的图片排序有问题,irc上fvw同学提供了解决排序问题的方法: convert $(ls *.jpg|sort -n) xx.pdf 但只能解决排序问题,其它效果一样。其实convert有很多参数可选的,man convert后发现太多了,看着头疼,所以放弃了imagemagick。 印象中有img2pdf软件的,但ubuntu软件源里没有,网上找了大都是exe的,后来终于找到了linux版本的,但只提供tar包与rpm包,于是尝试了编译img2pdf,结果这9.7k的软件依赖关系却那么复杂,在外文网站上看到依赖autoconf, automake, libtool, lib6c, libdb4.3, libdb4.3-dev, libjpeg62, libjpeg62-dev, libpng12, libpng12-dev, libtiff4, libtiff4-dev, zlib1g, zlib1g-dev,后来终于装齐,但编译起来还是不对,最后才发现还需要安装panda于是下载编译,最后连伯克利的数据库都装上了,但最终失败!可能是libtool版本造成的……这里提供了安装img2pdf的方法。 其实irc上delectate告诉过我ee找到convert *.jpg xx.pdf命令的页面,但光看楼主了,后面的回复没看,但看过之后才知道后面更有价值! 一种方法是用F-spot打印到pdf,此法相对convert速度快,合成后的pdf为convert后的一半左右,算是不错。 另一种方法是用pdfjoin,此法最好,速度快,结合排序命令合成后的pdf与原图片目录的大小一致,算是达到了最终目的!但需要安装pdfjam,约一百多兆。 终极解决方案: 先将所有jpg文件重命名为pdf: rename ‘s/\.jpg$/\.pdf/’ *.jpg 合成刚重命名的pdf文件为一份: pdfjoin $(ls *.pdf|sort -n) –outfile xx.pdf 无敌了! (function() { var jaxlChat = document.createElement(“script”); jaxlChat.type = “text/javascript”; jaxlChat.async = [...]



