当前位置: 代码迷 >> 综合 >> 利用convert【ImageMagick】把pdf批量转换为图片踩坑(gs报错和清晰度问题)
  详细解决方案

利用convert【ImageMagick】把pdf批量转换为图片踩坑(gs报错和清晰度问题)

热度:23   发布时间:2023-12-28 21:03:47.0

利用convert【ImageMagick】把pdf批量转换为图片踩坑

  • 前言
    • 坑1 gs报错
        • 解决方案:
    • 坑2 导出的文件太模糊
      • 解决方案
        • 参数介绍:
    • 总结
        • 最后附上完整的命令

前言

最近做一个pdf显示文件内容的时候由于pdf太大,考虑转换成jpg显示在页面上,但是当我使用
convert转换文件的时候遇到了2个问题,记录下来供大家参考也作为自己的备忘。

坑1 gs报错

convert ./11.pdf ./检测报告/aa.jpg
convert: attempt to perform an operation not allowed by the security policy `gs' @ error/delegate.c/ExternalDelegateCommand/378. convert: no images defined `tikz.jpg' @ error/convert.c/ConvertImageCommand/3282.

解决方案:

sudo vim /etc/ImageMagick-7/policy.xml
  • 然后搜索 gs (输入 /gs)
  • 再注释 这一行
	<!--  <policy domain="delegate" rights="none" pattern="gs" /> -->
  • 然后保存 shift + :
  • wq

坑2 导出的文件太模糊

解决方案

添加-density 参数即可

参数介绍:

-density 200
图像每英寸面积内的像素点数,数值越高图片质量越高
-quality 100
这个为转换图片时的压缩率,0-100之间

总结

最后附上完整的命令

convert -density 300   -quality 100 -units PixelsPerInch  ./11.pdf ./aa.jpg
  相关解决方案