2007/12/03

画像ファイルからPDFを作成してみる

iLiadを購入して以来、画像ファイルをフォルダ単位で
PDFファイルにする方法を試行錯誤していたのですが、
私的にまぁぼちぼちな方法がようやく確立しました。

<とりあえず>
 裁断機は購入したのですが
 ScanSnap等のスグレ物が手元にないので、
 フォルダにまとめた画像ファイルを変換する為の方法です...

<必要なもの>
 以下の2つのフリーソフトを使っています。

 「PDF BookMaker」(今井陽平氏)
  ・JPEG, PNG, TIFF形式が扱える&混在も可
  ・再圧縮等を行っていない(と思う)ので処理が早い
  ・操作性に多少難があり、連続して実行するのに向かないかも?

 「UWSC」(うみうみ氏)
  ・Windows操作の自動化ソフト
  ・スクリプトで細かな操作が可能
  ・今回は操作補助とバッチ処理担当

<やり方>
 ・フォルダに画像ファイルを放り込む
 ・ページはファイル名の順になるので予め調整しておく
 ・秘密の呪文①②を用意&②を関連付けして実行

<何ができる?>
 ・画像ファイルの入ったフォルダをPDFファイルに変換
  ("[フォルダ名].pdf"として保存される)
 ・バッチファイルで複数のフォルダを連続して処理できる

<注意>
・秘密の呪文は、PCによって挙動が違うかもしれないので
 ステップ毎に確認しながら実行することをお勧めします
・まぁ他にもっとスマートな方法がありそうですが...

---以下秘密の呪文①---
// "PDFBook.uws"で保存
TMPDIR="C:\(ToPDF)\" //作業フォルダを指定
PM = EXEC("C:\WinTool\PDFBookMaker\PDFBook.exe") //実行ファイル指定
BK = PARAM_STR[0] //PDF化する画像フォルダを指定
SLEEP(0.2)

SENDSTR(PM, BK, 1) //タイトル等を適当に埋める
SENDSTR(PM, "0", 2) //
SENDSTR(PM, "0", 3) //

CLKITEM(PM, "追加") //FileOpenダイアログを表示
FO = GETID("ファイルを開く") //↑そのIDを取得
SLEEP(0.2)

SENDSTR(FO, TMPDIR) //画像フォルダを指定
SLEEP(0.1)
SENDSTR(FO, BK) //
CLKITEM(FO, "全てのファイル形式", CLK_LIST)
SLEEP(0.2)
CLKITEM(FO, "開く") //画像フォルダへ移動
SLEEP(0.2)
KBD(VK_TAB) //ファイルリストを全選択
KBD(VK_TAB) //
KBD(VK_TAB) //
KBD(VK_TAB) //
SCKEY(FO, VK_CTRL, A) //
SLEEP(0.6) //
CLKITEM(FO, "開く") //
SLEEP(0.2)

CLKITEM(PM, "PDFファイルへの書き出し") //FileSaveダイアログを表示
FS = GETID("名前を付けて保存") //↑そのIDを取得
SLEEP(0.2)

SENDSTR(FS, TMPDIR) //PDFファイル名を指定
SLEEP(0.1)
SENDSTR(FS, BK) //
SLEEP(0.1)
SENDSTR(FS, ".pdf") //
SLEEP(0.2)
CLKITEM(FS, "保存")

REPEAT //作業終了を待つ
SLEEP(1) //
BB = GETID(TMPDIR) //
UNTIL BB > 0 //
CLKITEM(BB, "OK")

SLEEP(0.2)
CTRLWIN(PM, CLOSE)

---以下秘密の呪文②---
//"123.uws"でも何でも適当な名前で保存してこいつを実行
CALL PDFBook.uws("変換するフォルダ名1")
CALL PDFBook.uws("変換するフォルダ名2")


2 件のコメント:

ま~ さんのコメント...

うちはJpegまとめてPDF化するのに「PDF Designer - Image Edition」というのを使っています。
こちらは一度設定しておけばあとはドラッグ&ドロップ一発で作成できるので重宝しています。
http://homepage1.nifty.com/MADIA/download/index.html

ほうく さんのコメント...

コメントありとうす。
そのソフトは私も試したことがあるような気がしますが、画像を再圧縮している(感じがした)のですぐやめたような気がします。
↑電子ペーパーで使うには機器に合わせて画像を最適化した方が良さそうかもと最近は思ったりしてますが

結局私の好みでは今のソフトに落ち着きました。
バイナリレベルで切り貼りしてるだけっぽいから処理が早いので...