Ошибка при преобразовании JPG в PDF


57

Каждый раз, когда я хочу конвертировать jpgфайл с pdfпомощью этой команды

convert *.jpg pictures.pdf

У меня есть это сообщение об ошибке:

convert: not authorized `pictures.pdf' @ error/constitute.c/WriteImage/1028.

1
convert * .jpg pictures.pdf перезапишет все файлы pdf как один файл pictures.pdf?
Виджей

Это решение от StackOverflow сработало для меня: stackoverflow.com/questions/42928765/…
Майк

Ответы:


82

Эта проблема возникает из-за обновления безопасности: https://launchpad.net/ubuntu/+source/imagemagick/8:6.8.9.9-7ubuntu5.13

Кто-то сообщил об этом как об ошибке: https://bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1796563

Как временное решение, я редактировал /etc/ImageMagick-6/policy.xmlи изменил права PDF из noneк read|writeтам. Не уверен насчет последствий, но, по крайней мере, это позволяет мне добиться цели.


1
Я снова посмотрел на него, и я почти уверен, что исправление безопасности связано с kb.cert.org/vuls/id/332928 (в котором описаны различные способы обхода -dSAFER в ghostscript).
YoungFrog

3
Это действительно работает как рекламируется. Я просто закомментировал (эффективно удалил) pdf-строку. Было бы хорошо узнать, какими будут побочные эффекты! Карта политик в файле конфигурации комментирует, что это «отключить типы форматов ghostscript».
Мартен Коецер


1
Я не решался изменить настройки безопасности. В качестве альтернативы imagemagick я использовал «pdftoppm -jpeg input.pdf output.jpg» (из пакета с именем poppler-utils). Эта альтернатива была опубликована в bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1796563
Вахид Пазиранде

Изменение назначение политика формат файл соответственно <политики домен = «кодировщик» прав = «прочитанное | пишет» шаблон = «PDF» /> .usually они будут на концах .THANKS
Юнус

4

Исправлено это на моем Ubuntu 16.04.6 LTS, следуя принятому ответу .

Создан простой однострочник sed, чтобы исправить это быстрее:

sudo sed -i 's#<policy domain="coder" rights="none" pattern="PDF" />#<policy domain="coder" rights="read|write" pattern="PDF" />#' /etc/ImageMagick-6/policy.xml

и программным способом.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.