Политика безопасности 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" />