linux mint 20.3 で jpg を pdf に変換します。
以前は簡単にできたような気がしますが、今ではエラーが出て簡単にはいきませんでした。
attempt to perform an operation not allowed by the security policy PDF というエラー
これまでは imagemagik をインストールして以下のようにすれば、簡単に変換することができました。
convert jaf.jpg jaf.pdf
ところが今回はエラーが出て変換できません。
convert-im6.q16: Corrupt JPEG data: 37 extraneous bytes before marker 0xd9 `jaf.jpg' @ warning/jpeg.c/JPEGWarningHandler/386.
convert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF' @ error/constitute.c/IsCoderAuthorized/408.
/etc/ImageMagick-6/policy.xml を書き換える
/etc/ImageMagick-6/policy.xml を書き換えればいいようです。
sudo nano /etc/ImageMagick-6/policy.xml
下の方にある、
<policy domain="coder" rights="none" pattern="PDF" />
を以下のように書き換えます。
<policy domain="coder" rights="read|write" pattern="PDF" />
Corrupt JPEG data: 37 extraneous bytes before marker 0xd9 `jaf.jpg というエラー
このエラーが表示されても実際には pdf は作成されているので、今回は無視します。
ファイルを一括して変換する
jpg から pdf へ、ファイルを一括して変換します。
for f in *.jpg;do convert "$f" "${f/.jpg/}".pdf;done
pdf を png へ
pdftoppm -png nenkin01.pdf imagen