Политика безопасности ImageMagick 'PDF' блокирует конвертацию
Кажется, политика безопасности Imagemagick не позволяет мне выполнять это преобразование из pdf в png. Преобразование других расширений, кажется, работает, но не из PDF. Я не менял никаких настроек imagemagick с тех пор, как установил его... Я использую Arch Linux, если ОС имеет значение.
[email protected] $ convert -density 300 -depth 8 -quality 90 input.pdf output.png
convert: attempt to perform an operation not allowed by the security policy 'PDF' @ error/constitute.c/IsCoderAuthorized/408.
convert: no images defined 'output.png' @ error/convert.c/ConvertImageCommand/3288.
Ответы
Ответ 1
Ну я добавил
<policy domain="coder" rights="read | write" pattern="PDF" />
непосредственно перед </policymap>
/etc/ImageMagick-7/policy.xml
</policymap>
в /etc/ImageMagick-7/policy.xml
и это заставляет его работать снова, но не уверен насчет последствий этого для безопасности.
Ответ 2
Как указано в некоторых комментариях, вам нужно отредактировать политики ImageMagick в /etc/ImageMagick-7/policy.xml
. В частности, в ArchLinux на момент написания (01/01/2019) следующая строка не закомментирована:
<policy domain="coder" rights="none" pattern="{PS,PS2,PS3,EPS,PDF,XPS}" />
Просто оберните его между <!--
и -->
, чтобы прокомментировать, и преобразование PDF должно снова сработать.
Ответ 3
Для меня в моей системе archlinux строка уже была без комментариев. Мне пришлось заменить "нет" на "читать | написать", чтобы это работало.
Ответ 4
для меня на Arch Linux я должен был комментировать:
<policy domain="delegate" rights="none" pattern="gs" />