いろいろ
Seize the day.
2007-08-17 [長年日記]
■ [comp] 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 ビューアなら一応事前に確認を取るためのダイアログボックスが出るはず.念のため,「以後,このメッセージを表示しない」をチェックしないようにして下さい). VBA マクロと同様,安全性には十分に注意しないといけないが,うまく使えば便利かも知れない.何かいいアプリケーションがありそうだが,思い付かん….
追記: ウェブブラウザ内で PDF を開いた場合./Win を使った方法 (2 番目の四角) しか使えないっぽいですね (Firefox 2.0.0.6,IE 6.0 で確認) .1 番目の四角は「ファイルのダウンロード」になってしまう.PDF をダウンロードして直接 Acrobat Reader で開くと 1 番目の四角も有効のようです.
[ ツッコミ | permalink | trackback ]
[TrackBack URL: http://nao.s164.xrea.com/td/tb.rb/20070817]
[(注) スパム対策のため,言及リンクのないトラックバックは受け付けていません.]
[(注) スパム対策のため,言及リンクのないトラックバックは受け付けていません.]
本日のリンク元
検索
- ** WARNING ** Unparsed material at end of special ignored. ×21 / PDF/X-1a dvipdfmx ×5 / VBA アプリケーション起動 ×4 / 円マーク 筆記体 ×4 / キーワード不明 ×3 / unparsed material ×3 / unparsed material at end of special ignored ×3 / VBA 外部アプリケーション起動 ×3 / Unparsed material at end of special ignored. ×2 / tex ** WARNING ** Unparsed material at end of special ignored. ×2 / Acrobat 以後、このメッセージを表示しない ×2 / pdf subtype link ×2 / アプリケーション起動 マクロ ×2 / PDF アプリ 起動 ×2 / Unparsed material at end of special ignored ×2 / tex 外部 起動 ×2 / tex 四角 ×2 / dvipdfmx unparsed material ×1 / vba 外部アプリ 開く ×1 / dvipdfmx unparsed ×1 / VBA 外部アプリケーション 起動 ×1 / subtype link annot ×1 / Firefox PDF 外部アプリケーション ×1 / tex unparsed ×1 / PDF アプリ起動 ×1 / dvipdfm Unparsed material ×1 / IE 外部アプリケーション 開く PDF ×1 / Ruby コマンド アプリケーション起動 ×1 / tex 起動 ×1 / VBA アプリケーション 起動 ×1 / VBA pdf 起動 ×1 / VBA 外部アプリケーション ×1 / ブラウザー 外部アプリケーション起動 ×1 / acrobat reader 以後、このメッセージを表示しない ×1 / C# 外部アプリケーション 起動 ×1 / ruby pdf 起動 ×1 / PDF用 ボタン html ×1 / w3m pdf AdobeReader ×1 / Acrobat Reader 以後、このメッセージを表示しない ×1 / pdf special border ann ×1 / PDF 外部アプリケーション起動 ×1 / Current input buffer is pLaTeX ×1 / windowsで mobile 外部アプリ ×1 / Access 外部アプリ 起動 ×1 / vba 外部アプリケーション 起動 ×1 / tex unparsed material at end of special ignored ×1 / matlab api 外部アプリケーション ×1 / access vba アプリケーション起動 ×1 / firefox 外部アプリ起動 linux ×1 / PDF ダウンロードになってしまう ×1 / vba コマンド バックスラッシュ ×1 / firefox 外部アプリ ボタン ×1 / ie pdf アプリケーション ×1 / tex 円マーク | ×1 / unparsed material at end of special end pdf ×1 / vba pdf 起動 ×1 / 以後このメッセージを表示しない ダウンロード チェック ×1 / tex unparsed material ×1 / PDF Annot Subtype ×1 / dvipdfm special ×1 / firefox 外部アプリ 起動 ×1 / acrobat 以後、このメッセージを表示しない ×1 / "unparsed material at end of special ignored" ×1 / dvipdfmx PDF/X-1a ×1 / vba アプリケーション起動 ×1 / ボタン アプリケーション起動 ×1 / VBA アプリケーション起動 EXE ×1
以下の広告はサーバによって自動的に挿入されています.
Copyright © 2004-2006, nao. All rights reserved.





