Car*_*l R 8 memory pdf thumbnails
在我正在研究的系统中,我们将生成缩略图作为工作流程的一部分.有时pdf文件非常大(打印尺寸为3平方米),并且可能包含巨大的位图图像.
是否有针对缩略图生成的程序,这些程序针对处理如此大的pdf文件的内存占用而优化
生成的缩略图可以是png或jpg.
ImageMagick是我用于所有CLI图形的东西,所以也许它可以为你工作:
convert foo.pdf foo-%png
Run Code Online (Sandbox Code Playgroud)
这会生成三个单独的PNG文件:
foo-0.png
foo-1.png
foo-2.png
Run Code Online (Sandbox Code Playgroud)
要仅创建一个缩略图,请将PDF视为数组([0]是第一页,[1]是第二页,等等):
convert foo.pdf[0] foo-thumb.png
Run Code Online (Sandbox Code Playgroud)
由于您担心内存,使用该-cache选项,您可以限制内存使用:
-cache 阈值兆字节可用于像素缓存的内存.
图像像素存储在存储器中,直到消耗了阈值兆字节的存储器.后续像素操作缓存在磁盘上.对内存的操作要快得多,但如果您的计算机没有足够的可用内存,您可能需要调整此阈值.
因此,要缩放PDF文件并调整其大小,您可以运行此命令,其最大内存使用量应为20mb左右:
convert -cache 20 foo.pdf[0] -resize 10%x10% foo-thumb.png
Run Code Online (Sandbox Code Playgroud)
或者您可以使用-density指定输出密度(900将其缩小很多):
convert -cache 20 foo.pdf[0] -density 900 foo-thumb.png
Run Code Online (Sandbox Code Playgroud)