首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用imagick去除pdf文件中的注释

使用imagick去除pdf文件中的注释
EN

Stack Overflow用户
提问于 2021-04-27 03:52:24
回答 1查看 83关注 0票数 1

我用imagick把pdf翻译成jpg;

但由于pdf文件中存在注释,所以返回的区域为黑色,当我将图片悬停在pdf文件中时会出现注释。

图像文件:

原始pdf示例:

我的代码:

代码语言:javascript
复制
$img = new Imagick('./pige.pdf[1]');
$img->setImageBackgroundColor('white');

$img = $img->flattenImages();

$img->setImageFormat('jpg');
$img->writeImage('image.jpg');
EN

回答 1

Stack Overflow用户

发布于 2021-04-29 07:11:34

因此,我的解决方案是使用imagick更改默认安装的gs:

这似乎是默认随ImageMagick一起安装的ghostscript版本中的错误。Ghostscript是实际执行从pdf到渲染位图的转换的程序。

我尝试了从https://www.ghostscript.com/download/gsdnld.html下载的最新版本的Ghostscript

使用命令行转换PDF:

代码语言:javascript
复制
gs-9540-linux-x86_64 -sstdout=%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 '-sDEVICE=pngalpha' -dTextAlphaBits=4 -dGraphicsAlphaBits=4 '-r72x72' '-sOutputFile=/var/app/bugs/bug389/gs_output.png' '-f/var/app/bugs/bug389/pige.pdf'

而且它似乎工作得很好。

我想如果你:

  • 通过运行哪个gs
  • 来查找ghost脚本在您的计算机上的位置,然后只需将该文件(在将原始文件备份到某处之后)替换为从https://www.ghostscript.com/download/gsdnld.html下载的文件,这可能会解决您的问题。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67272985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档