我正在尝试使用命令行程序转换将PDF转换为图像(JPEG或PNG)。这是我正在转换的pdf文件之一。

我想让程序去掉多余的空白,并返回足够高质量的图像,以便上标可以轻松读取。

这是我目前最好的尝试。正如你所看到的,修剪工作很好,我只是需要锐化的分辨率相当多。这是我正在使用的命令:

convert -trim 24.pdf -resize 500% -quality 100 -sharpen 0x1.0 24-11.jpg

我试着做了以下有意识的决定:

调整它的大小(对分辨率没有影响) 尽可能提高质量 使用-锐化(我已经尝试了一系列值)

任何建议,请在最终的PNG/JPEG图像的分辨率更高,将非常感谢!


当前回答

我发现,当使用转换使用的底层gs(又名Ghostscript)命令将大型pdf批量处理为png和jpg时,它既更快又更稳定。

你可以在convert -verbose的输出中看到这个命令,还有一些可能的调整(YMMV),这些调整很难/不可能直接通过convert访问。

然而,这将很难做你的修剪和锐化使用gs,所以,正如我所说的,YMMV!

其他回答

在mac电脑上使用预览其实很容易做到。你所要做的就是在预览中打开文件,并另存(或导出)png或jpeg格式,但要确保你在窗口底部使用至少300 dpi来获得高质量的图像。

你附上的PNG文件看起来真的很模糊。如果您需要对生成为PDF预览的每张图像使用额外的后处理,则会降低解决方案的性能。

2JPEG可以将PDF文件转换为一个漂亮的锐化JPG文件,并在一次调用中裁剪空边距:

2jpeg.exe -src "C:\In\*.*" -dst "C:\Out" -oper Crop method:autocrop

对于Windows(在W11上测试):

magick.exe -verbose -density 150 "input.pdf" -quality 100 -sharpen 0x1.0 output.jpg

你需要安装:

ImageMagick https://imagemagick.org/index.php。

ghostscript https://www.ghostscript.com/releases/gsdnld.html

额外的信息:

注意使用-flatten参数,因为它只能生成首页作为图像 使用-scene 1参数从索引1开始,其中包含图像名称 上面提到的转换命令已经被弃用,取而代之的是魔法

convert -density 300 * airbnb.pdf

在我看来很完美

看来以下方法是有效的:

convert           \
   -verbose       \
   -density 150   \
   -trim          \
    test.pdf      \
   -quality 100   \
   -flatten       \
   -sharpen 0x1.0 \
    24-18.jpg

它的结果是左图。将其与我的原始命令的结果进行比较(右侧的图像):

  

(为了真正看到和欣赏两者之间的差异,右键单击每个,并选择“在新选项卡中打开图像…”)

还要记住以下事实:

右边最糟糕的模糊图像的文件大小为1.941.702字节(1.85 MByte)。 它的分辨率是3060x3960像素,使用16位RGB颜色空间。 左边图像比较清晰,文件大小为337.879字节(330 kByte)。 它的分辨率是758x996像素,使用8位灰色空间。

所以,不需要调整大小;添加-density标志。密度值150很奇怪——尝试一个范围的值会导致图像在两个方向上看起来都很糟糕!