標準化 : 変数名

Acrobat JavaScriptで扱う変数名の標準化。
変数名の接頭辞を以下とする。あくまでも例です。

  • 数値 : 先頭に「n」を付ける。 例:nCount、nMax
  • ブーリアン : 先頭に「b」を付ける。 例:bSkip、bRet
  • 文字列 : 先頭に「s」を付ける。 例:sString、sName
  • グローバルスコープ : 先頭に「g」を付ける。 例:gbFlag、gsType

Acrobat JavaScript を置く場所

場所は2つある。

  1. PDFドキュメント内部
  2. PDFドキュメントが置かれている同じフォルダに拡張子「.js」で保存する

①のPDFドキュメント内部にAcrobatのイベントと組み合してJavaScriptを入れる。これはテスト実証済みで問題は今のところ無い。
②はPDFドキュメント外に置く場合だが、実はうまく動かない。マニュアルには3通りの方法があると書かれている。

1) JavaScript フォルダ(アプリケーションフォルダとユーザフォルダ)のどちらかに
配置できます、と書かれている。テストしてみたが稼働しない。何かオモジナイが外の拡張子「.js」ファイルに必要と思われるが、現時点では分かっていない。

2) Acrobat コンソールに入力して実行する。テスト実証済み。但し、基本的に実行できるのは1ステートメントのみで、プログラミング操作による実行は出来ない。手動操作となる。正直、デバッグ用かと思われ、使い物にならないと思っている。複数ステートメントの実行も出来るみたいだが、これ件に関しては別で検証してから報告したい。※気になる点が有る為。

3) バッチシーケンスと言う手法で実行する。これに関しては詳細を調べてないので解説出来ない。
当サイトが目的としているのは「PDFドキュメント外」でのJavaScriptの実行である。

コメント

C又はC+のスタイルと同じです。

//  この行はすべてコメント扱いになる
/* この間はコメント扱いになる */
/*
* この間はコメント扱いになる
*/

「//」以降の文字はコメント扱いになります。
「/* */」のアスタリスク間がコメント扱いになります。
しかし、・・・・。(汗

/ コメント扱い /

上記もコメント扱いになっているのはなぜでしょうか?

PDFのページを開いた時に実行されるAcrobat Java Script のサンプル(その2)

前の「PDFのページを開いた時に実行されるAcrobat Java Script のサンプル」はどのようにしてイベントとして登録されていたのか不思議だった。が、その詳細がやっと判った。

  1. まずは「ページサムネイル」表示にAcrobatの表示を変更する。
  2. 「ページサムネイル」の該当ページをマウスで選択して、右クリックする。
  3. そのマウス上にポップアップメニューが表示される。
  4. そこから「ページのプロパティ」を選択クリックする。

「ページのプロパティ」表示操作

そうすると以下の「ページのプロパティ」画面が表示される。「アクション」タグを選択(クリック)すると、以下の様に既に「ページを開く」に「JavaScriptを実行」が設定されている事が分かる。「JavaScriptを実行」部分をマウスでクリックして選択状態にする。そして最下部の「編集」ボタンをクリックする。

「ページのプロパティ」の「アクション」タグ

以下のAcrobat JavaScriptを入力する画面が表示される。※既に入力されているが。
Acrobat Java Script 入力画面

上記のAcrobat JavaScriptが表示されている。ここで入力された内容はPDF内部では以下の様になる。

//————————————————————-
//—————–XMLタグは編集できません——————–
//————————————————————-

//<Page-Actions>
//<ACRO_source>Page1:ページを開く:Action1</ACRO_source>
//<ACRO_script>

/ 頁を開いた時にJava Scriptを実行する例 /

app.alert(“PDFの頁が開かれました。★”);
//</ACRO_script>
//</Page-Actions>
 

上記のようなXMLタグが付加されてPDFドキュメントにイベント(JavaScript)という形で内部に保存される。<Page-Action>でネット検索しても、この意味を見つけられない理由がこれで分かった。このXMLタグはAcrobat、又はAcrobat Readerが管理しているものであり、ユーザーが触るものでは無いからだ。コメントにある様に「XMLタグは編集できません」とあるが、これは「XMLタグは編集しては絶対だめです」と言っている事を意味する。つまり資料として公開するべきモノではなく、同時に変更してはいけないものだと言う事だ。

PDFのページを開いた時に実行されるAcrobat Java Script のサンプル

JavaScript例(2)

//————————————————————-
//—————–XMLタグは編集できません——————–
//————————————————————-
//<Page-Actions>
//<ACRO_source>Page1:ページを開く:Action1</ACRO_source>
//<ACRO_script>

/ 頁を開いた時にJava Scriptを実行する例 /
app.alert(“PDFの頁が開かれました。”);
//</ACRO_script>
//</Page-Actions>

【実行結果】
実行結果

【補足】

  • <Page-Actions>」タグがページを開いた時のイベント指定になっている。
  • /* 頁を開いた時にJava Scriptを実行する例 */ でなく
    / 頁を開いた時にJava Scriptを実行する例 / でもエラーにならない。