图像魔术代笔脚本'delegate'安全策略阻止转换



这似乎与我之前的问题有关,其中存在一个ghostscript错误,因此ImageMagick开发人员制定了阻止PDF转换的安全策略。通过调整策略文件,使权限从"无"(默认情况下(更改为"读取 |写">

我的类似问题在运行表单命令时启动

convert input.pdf output.jpg

现在使用 ghostscript 版本 9.27 (2019-04-04( 和 imagemagick 版本 7.0.8-56 Q16 x86_64 (2019-07-21( (我相信这是每个版本的最新版本(,我收到此错误

convert: attempt to perform an operation not allowed by the security policy `gs' @ error/delegate.c/ExternalDelegateCommand/378.
convert: no images defined `output.jpg' @ error/convert.c/ConvertImageCommand/3273.

所以我对/etc/ImageMagick-7/policy.xml进行了 sudoedit,以便将<policymap>中唯一未注释的行从

<policy domain="delegate" rights="none" pattern="gs" />

<policy domain="coder" rights="read | write" pattern="PDF" />
<policy domain="delegate" rights="read | write" pattern="gs" />

但问题仍然存在。如果只是注释掉或删除上述行,则结果相同。这在我的多个 Arch 机器上是可重现的。

有没有办法绕过此安全策略默认值?这样做安全吗?

<policy domain="delegate" rights="none" pattern="gs" />

需要注释掉。现在在 arch wiki 的 imagemagick 页面上注意到了这一点。该页面当前引用了以下错误报告:FS#59778、FS#62171

出于某种原因,这并没有立即对我有用。不知何故,我今天通过将策略.xml移动到备份(删除(、运行转换命令并将上面的行注释掉的原始内容移回来让它工作。

我只有以下问题之一:convert: no images defined 'output.jpg' @ error/convert.c/ConvertImageCommand/3273.

在我的系统上,这修复了它:brew install ghostscript .(通过 如何使用自制软件安装图像魔术?

我在OSX上使用ImageMagick,通过自制软件安装。

最新更新