Fehler beim Konvertieren von JPG nach PDF

55

Jedes Mal, wenn ich eine jpgDatei pdfmit diesem Befehl konvertieren möchte

convert *.jpg pictures.pdf

Ich habe diese Fehlermeldung:

convert: not authorized `pictures.pdf' @ error/constitute.c/WriteImage/1028.
Adon Naaman
quelle
1
konvertieren * .jpg pictures.pdf überschreibt alle pdf-Dateien als eine Datei pictures.pdf?
Vijay
Diese Lösung von StackOverflow hat für mich funktioniert
Mike

Antworten:

79

Dieses Problem wird durch ein Sicherheitsupdate verursacht: https://launchpad.net/ubuntu/+source/imagemagick/8:6.8.9.9-7ubuntu5.13

Jemand hat einen Fehler gemeldet: https://bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1796563

Als temporäre Lösung, ich bearbeiten /etc/ImageMagick-6/policy.xmlund geändert , um die PDF - Rechte nonezu read|writedort. Ich bin mir nicht sicher über die Auswirkungen, aber es ermöglicht mir, Dinge zu erledigen.

Jungfrosch
quelle
1
Ich habe noch einmal darüber nachgedacht und bin mir fast sicher, dass das Sicherheitskorrekturprogramm mit kb.cert.org/vuls/id/332928 zusammenhängt (das verschiedene Möglichkeiten zur Umgehung von -dSAFER in Ghostscript dokumentiert).
YoungFrog
2
Dies funktioniert in der Tat wie angekündigt. Ich habe die pdf-Zeile einfach auskommentiert (effektiv entfernt). Es wäre gut zu wissen, welche Nebenwirkungen auftreten würden! Die Richtlinienübersicht in der Konfigurationsdatei besagt, dass dies für "Ghostscript-Formattypen deaktivieren" gilt.
Marten Koetsier
1
Ich zögerte, die Sicherheitseinstellungen zu ändern. Als Alternative zu imagemagick habe ich "pdftoppm -jpeg input.pdf output.jpg" (aus dem Paket poppler-utils) verwendet. Diese Alternative wurde veröffentlicht in bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1796563
Vahid Pazirandeh
Ändern Sie die Zieldateiformatrichtlinie bzw. <policy domain = "coder" rights = "read | write" pattern = "PDF" />. Normalerweise werden sie am Ende sein. Danke
Junus
2

Dies wurde auf meinem Ubuntu 16.04.6 LTS behoben, indem die akzeptierte Antwort befolgt wurde .

Erstellt einfache sed Einzeiler, um dies schneller zu beheben:

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

und auf programmatische Weise.

Nrrbert
quelle