調べてみるとありますね。
そうそう、imagemagicに含まれている convertコマンドです。
jpgファイルのあるフォルダに移動して、以下のように実行すれば、*.jpgに合致するファイルを内在するall.pdfファイルが出来上がります。
convert *.jpg all.pdf注意すべきは、上記ではjpgファイルの参照順がファイル名順になる点です。
これは算術ソートではなく、文字列ソートなので文字数によって思うように並ばないケースがあります。
例えば、1.jpg,2.jpg,10.jpgとうファイルがあった場合、次のように並びます。
1.jpg
10.jpg
2.jpg
10.jpgは十ではなく、1と0という2文字の文字として扱われるからですね。
じゃ、きちんと並べることはどうするか?
ズバリ、文字数を統一すれば良いのです。
次のコマンドでファイル名を4桁の前ゼロ付与した形に整形できます。
for a in *.jpg do c=`basename "$a" .jpg` b=`printf "%04d%s" "$c" .jpg` mv "$a" "$b" doneこれで、ファイル名が次のようになったと思います。
0001.jpg
0010.jpg
0002.jpg
文字数が一致すれば、文字列ソートしても 0001.jpg,0002.jpg,0010.jpgと並ぶので、算術ソートと同じですね。
この状態で、convertコマンドでpdfファイル化しましょう。
convert *.jpg all.pdf
0 コメント:
コメントを投稿