我正在尝试使用命令行程序convert将PDF转换为图像(JPEG或PNG) . 这是one of the PDFs,我正在尝试转换 .
我希望程序能够修剪多余的空白区域并返回足够高质量的图像,以便轻松读取上标 .
这是我目前的best attempt . 如你所见,修剪工作正常,我只需要提高分辨率 . 这是我正在使用的命令:
convert -trim 24.pdf -resize 500% -quality 100 -sharpen 0x1.0 24-11.jpg
我试图做出以下有意识的决定:
-
将其调整得更大(对分辨率没有影响)
-
使质量尽可能高
-
使用
-sharpen
(我尝试了一系列值)
任何有关在最终PNG / JPEG中获得图像分辨率的建议都将非常感谢!
11 回答
当批量处理大型PDF到PNG和JPG以使用
convert
使用的底层gs
(又名Ghostscript)命令时,我发现它更快更稳定 .您可以在
convert -verbose
的输出中看到该命令,并且还有一些可能的调整(YMMV)很难/无法通过convert
直接访问 .但是,使用
gs
进行修剪和锐化会更难,所以,就像我说的那样,YMMV!似乎以下工作:
它导致the left image . 将此与我的原始命令(the image on the right)的结果进行比较:
(要 really 查看并欣赏两者之间的差异,右键单击每个并选择"Open Image in New Tab..." . )
还要记住以下事实:
右侧较差的模糊图像的文件大小为1.941.702字节(1.85 MByte) . 它的分辨率为3060x3960像素,使用16位RGB色彩空间 .
左侧更好,更清晰的图像文件大小为337.879字节(330 kByte) . 它的分辨率为758x996像素,使用8位灰色空间 .
所以,不需要调整大小;添加
-density
标志 . 密度值150很奇怪 - 尝试一系列值会导致两个方向上看起来更糟糕的图像!我个人喜欢这个 .
这是文件大小的两倍多,但对我来说看起来更好 .
-density 300
设置PDF呈现的dpi .-trim
删除与角点像素颜色相同的任何边缘像素 .-quality 100
将JPEG压缩质量设置为最高质量 .像
-sharpen
这样的东西不能很好地处理文本,因为它们会撤消字体渲染系统所做的事情以使其更清晰 .如果你真的希望它被炸毁,请使用此处调整大小以及可能更大的dpi值,例如
targetDPI * scalingFactor
这将以您想要的分辨率/大小呈现PDF .imagemagick.org上的参数说明是here
我在命令行上使用
pdftoppm
获取初始图像,通常分辨率为300dpi,所以pdftoppm -r 300
,然后使用convert
进行修剪和PNG转换 .通常我用原始分辨率的'pdfimages'提取嵌入的图像,然后使用ImageMagick的转换为所需的格式:
这会生成最佳和最小的结果文件 .
注意:对于有损JPG嵌入图像,您必须使用-j:
有了最近的poppler,你可以使用-all将有损保存为jpg而无损为png
在很少提供的Win平台上,您必须从以下位置下载最近的(0.37 2015)'poppler-util'二进制文件:http://blog.alivate.com.au/poppler-windows/
它还为您带来了良好的效果:
还有一个建议是你可以使用GIMP .
只需在GIMP中加载PDF文件 - >另存为.xcf,然后就可以对图像执行任何操作 .
Linux用户在这里:我尝试了
convert
命令行实用程序(对于PDF到PNG),我对结果不满意 . 我发现这更容易,效果更好:用pdftk提取pdf页面
例如:
pdftk file.pdf cat 3 output page3.pdf
用
GIMP
打开(导入)pdfimportant:将导入
Resolution
从100
更改为300
或600 pixel/in
在
GIMP
导出为PNG(将文件扩展名更改为.png)Edit:
根据
Comments
中的要求添加了图片 . 转换使用的命令:convert -density 300 -trim struct2vec.pdf -quality 100 struct2vec.png
GIMP
:以300 dpi(px / in)进口;导出为PNG压缩级别3 .我没有在命令行上使用GIMP(请参阅下面的评论) .
您附加的PNG文件看起来很模糊 . 如果您需要对生成为PDF预览的每个图像使用其他后处理,则会降低解决方案的性能 .
2JPEG可以将您附加的PDF文件转换为漂亮的锐化JPG并在一次调用中裁剪空边距:
在Mac上预览实际上很容易 . 您所要做的就是在预览中打开文件并另存为(或导出)png或jpeg,但请确保在窗口底部至少使用300 dpi以获得高质量的图像 .
使用此命令行:
这应该是正确的按照您的要求转换文件 .