TeX で PDF 用外部アプリケーション起動ボタンを作る
そんなことができるのかと思ってやってみたらできた.
ただしこの例だと tex でコンパイルしないといけないので,勢いで platex 用にマクロを作ってみました.\documentclass{jarticle} \makeatletter \newcommand{\extapp}[5][]{% \special{pdf: ann width #2cm height #3cm << /Type /Annot /Subtype /Link /Border [0 0 #4] /A << /Type /Action /S /Launch \if#1w/Win << /F (#5)\else/F (#5)\fi >> >> >>} } \makeatother \begin{document} Click the squares below to launch external applications. C:/windows/system32/winmine.exe (for Windows) \vspace{1cm} \extapp{1}{1}{2}{C:/windows/system32/winmine.exe} \%WINDOWS/system32/winmine.exe (for Windows) \vspace{1cm} \extapp[w]{1}{1}{2}{winmine.exe} /usr/local/bin/xdvi (for UNIX/Linux) \vspace{1cm} \extapp{1}{1}{2}{/usr/local/bin/xdvi} \end{document}
このマクロ
\extapp[set "w" here to use the %WINDOWS folder]{box width}{box height}{line width}{/path/to/command}
といった感じで使います.オプションで
platex でコンパイルし,dvipdfm で PDF にします.dvips は多分使えない.パスにスラッシュが入ってると,
[1 Unparsed material at end of special ignored... Current input buffer is -->>><-- ]
みたいな warning が出ますが,無視してください(激ぉ
以下がサンプル.PDF 文書内の四角をクリックするとマインスイーパや xdvi が起動します (まともな PDF ビューアなら一応事前に確認を取るためのダイアログボックスが出るはず.念のため,「以後,このメッセージを表示しない」をチェックしないようにして下さい).
追記: ウェブブラウザ内で PDF を開いた場合./Win を使った方法 (2 番目の四角) しか使えないっぽいですね (Firefox 2.0.0.6,IE 6.0 で確認) .1 番目の四角は「ファイルのダウンロード」になってしまう.PDF をダウンロードして直接 Acrobat Reader で開くと 1 番目の四角も有効のようです.