PDFをJPGに変換

PDFをJPGに変換すると,画質がすごく落ちるのは既出のようで,その解決策として,

ImageMagik の convert コマンドにオプションを付けるといいらしい

convert -density 600 -geometry 1000 in_pdf out_jpg

すればよいのだが,たまにうまくいかないことがあり,真っ黒jpgが出来上がることがありました.

これは,一度pdftoppmコマンドでppmに変換したものを,オプションなしのconvertできれいに変換できるようです.
むしろ,convertで一発変換するよりもきれい.

以下は,コマンドライン引数で指定したフォルダのpdfを全部jpgに変換するpython3コード
変換できりゃいいや,な初心者コード


# -*- coding: utf-8 -*-

import os
import sys

def exchange(folder_in,folder_out):
   files = os.listdir(folder_in)
   for f in files:
      f = f.rstrip()
      in_name = folder_in + '/' + f + ' '
      if f.endswith('.pdf'):
         #pdf to ppm
         os.system('pdftoppm ' + in_name + f.replace('.pdf',''))
         #ppm to jpg
         tmps = os.listdir()
         for n in tmps:
            if n.endswith('ppm'):
               out_name = n.replace('.ppm','.jpg')
               out_name = folder_out + '/' + out_name
               os.system('convert ' + n + ' ' + out_name)
               os.system('rm '+ n )

if __name__ == '__main__':
   argvs = sys.argv
   argc = len(argvs)

   folder_in = argvs[1]
   folder_out = folder_in + '_jpg'
   os.system( 'mkdir ' + folder_out )
   exchange(folder_in,folder_out)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です