PPxでPDFを閲覧する
あいさつ
つかさです。
今回はPPxでPDFファイルを閲覧する方法です。
こんな感じで、PPvにPDFファイルの一枚目を画像表示します。参考にしたのは、お気に入りのツールを気ままに拡張するブログのafxpdf、というかそれを少しいじっただけです。
仕組み
ghostscriptでPDFの一枚目を画像に変換し、PPvで表示しているだけです。
動作にはghostscriptが必要です。僕はTeXインストーラ 3で他のTeX関係のものと一緒にインストールしました。
インストール
以下をScriptフォルダに保存。
'------------------------------------------------------------
で囲った部分は各自の環境によって適宜変えて下さい
pdfview.vbs
'!*script Set fso = CreateObject("Scripting.FileSystemObject") Set ws = CreateObject("Wscript.Shell") '------------------------------------------------------------ ghostscript = "C:\gs\gs9.02\bin\gswin32c.exe" resolution = 100 inputfile = PPx.Extract("%FCD") outputdir = PPx.Extract("%0") & "\PPXTMP.PDF\" outputfile = "%%03d.bmp" outputfile1 = outputdir & "001.bmp" ppv = PPx.Extract("%0") & "\PPVW.EXE" '------------------------------------------------------------ ' prepare outputdir if Not fso.FolderExists(outputdir) Then call fso.CreateFolder(outputdir) else set fld = fso.GetFolder(outputdir) For Each file In fld.Files if InStr(file.Name, outputprefix) > 0 Then call fso.DeleteFile(outputdir & file.Name, True) end if Next end if ' execute gswin32c (pdf2bmp) PPx.Execute ("%Obds " & ghostscript & " -dSAFER -dBATCH -dNOPAUSE -sDEVICE=bmp256 -r" & resolution & " -sOutputFile=" & outputdir & outputfile & " -dFirstPage=1 -dLastPage=1 " & inputfile) PPx.Execute (ppv & " -r " & outputfile1 ) Set fso = Nothing Set ws = Nothing
PPx側の設定
ファイル判別で、PDFならこのスクリプトが起動するように登録。以下を編集して取り込み。
E_cr = { ; [Enter]用判別 :PDF ,*script %0\Script\PDFView.vbs }
カスタマイザーからなら次のようにする。
使うとき
PDFファイルにカーソルをあわせてEnterを押すと、そのPDFの一枚目の画像がPPvで表示される。
あとやりたいこと
僕は、PPvのカスタマイズで書いたように、PPvではカーソル上下で、同じフォルダ内の別の画像を表示するようにカスタマイズしているので、PDFもこれにあわせたい。次回くらいには、これができるようにしたい。