それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

jpg から pdf を作るときは img2pdf を使う

jpg から pdf を作るときは、img2pdf が無難

img2pdf は添付ファイルとして画像を処理してくれるみたいで、ファイルが変更されない。

magick の場合

imagemagick の conver でPDFを作ると。

convert 000.jpg magick.pdf
pdfimages -j  magick.pdf m

取り出した画像は少し変化している。

takuya@sample$ md5sum m-000.jpg 000.jpg
cb183e325b265d0cd985ae6bcf8a7f45  m-000.jpg
eeb3981fd491ad2dde29416db2144727  000.jpg

EXIFだけかと思ったら、画像全体を再エンコしてるっぽいので、オリジナルを含めたいときは不適切。

img2pdf の場合

pip でインストールする img2pdf コマンドを使った場合

img2pdf 000.jpg i2p.pdf
pdfimages -j  i2p.pdf i2p

ファイルが入れた通りに取り出せる。

takuya@sample$ md5sum 000.jpg i2p-000.jpg m-000.jpg
eeb3981fd491ad2dde29416db2144727  000.jpg
eeb3981fd491ad2dde29416db2144727  i2p-000.jpg
cb183e325b265d0cd985ae6bcf8a7f45  m-000.jpg

理由を詳しく考えるとめっちゃめんどくさいんで考えるのをやめた。 たぶん添付ファイルとして添付するときに、画像の色プロファイルをPDF標準に合わせて変換してるんだと思う。

参考資料

https://stackoverflow.com/questions/51909733/why-does-a-jpeg-embedded-into-a-pdf-render-slightly-differently-than-the-origina