Adobe Acrobat Pro で JavaScript addBookmark メソッドが認識されない、しおりが追加できない
つもお世話になっております。
Adobe Acrobat Pro で JavaScript を使用して PDF にしおりを追加しようとしていますが、addBookmark メソッドが undefined となり、しおりの追加ができません。解決策をご存知の方がいらっしゃいましたら、ご教授いただけますでしょうか。
【現在の状況と試したこと】
目的: JavaScript を使って PDF にプログラムでしおりを追加したい。
使用しているコード:
// 新しいしおりのタイトルを設定 var bookmarkTitle = "はじめに"; // 新しいしおりが指し示すページ番号を設定 (0-indexed) var targetPage = 0; try { if (this && typeof this.addBookmark === 'function') { var newBookmark = this.addBookmark(bookmarkTitle, targetPage); if (newBookmark) { console.println("しおり '" + bookmarkTitle + "' がページ " + (targetPage + 1) + " に追加されました。"); } else { console.println("しおりの追加に失敗しました。"); } } else { console.println("現在のコンテキストが 'Doc' オブジェクトではないか、addBookmark メソッドが利用できません。"); } } catch (e) { console.println("エラーが発生しました: " + e.message); }
実行環境: Adobe Acrobat の JavaScript デバッガーのコンソールから実行。
発生している問題:
上記のコードを実行すると、else ブロックに入り、以下のメッセージが出力されます。
現在のコンテキストが 'Doc' オブジェクトではないか、addBookmark メソッドが利用できません。現在の環境情報:
- 製品名: Adobe Acrobat (画像からはPro版と判断できます)
- バージョン: Continuous Release | バージョン 2025.001.20630 | 64 ビット
- OS: Windows 11
- PDFの種類: 新規作成の空白PDF
これまでに試したトラブルシューティング:
- console.println(this.docTitle); の結果: undefined
- console.println(this.numPages); の結果: 6 (PDFのページ数は正しく認識できている)
- console.println(typeof this.addBookmark); の結果: undefined (addBookmark メソッドが存在しない)
- Acrobat アプリケーションの完全な再起動、および対象PDFの再読み込みを実施済み。
【ご質問】
なぜ this.numPages は正しく認識できるのに、this.addBookmark が undefined となるのでしょうか?
この状況でしおりをプログラムで追加するには、他にどのような方法が考えられますか?
Acrobat Pro で addBookmark が利用できない原因について、何かご存知のことがありましたらお教えいただけると幸いです。
