Skip to main content
Participant
September 1, 2025
Question

Adobe Acrobat Pro で JavaScript addBookmark メソッドが認識されない、しおりが追加できない

  • September 1, 2025
  • 1 reply
  • 124 views

つもお世話になっております。
Adobe Acrobat Pro で JavaScript を使用して PDF にしおりを追加しようとしていますが、addBookmark メソッドが undefined となり、しおりの追加ができません。解決策をご存知の方がいらっしゃいましたら、ご教授いただけますでしょうか。

【現在の状況と試したこと】

  1. 目的: JavaScript を使って PDF にプログラムでしおりを追加したい。

  2. 使用しているコード:

    // 新しいしおりのタイトルを設定
    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);
    }
  3. 実行環境: Adobe Acrobat の JavaScript デバッガーのコンソールから実行。

  4. 発生している問題:
    上記のコードを実行すると、else ブロックに入り、以下のメッセージが出力されます。
    現在のコンテキストが 'Doc' オブジェクトではないか、addBookmark メソッドが利用できません。

  5. 現在の環境情報:

    • 製品名: Adobe Acrobat (画像からはPro版と判断できます)
    • バージョン: Continuous Release | バージョン 2025.001.20630 | 64 ビット
    • OS: Windows 11
    • PDFの種類: 新規作成の空白PDF 
  6. これまでに試したトラブルシューティング:

    • 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 が利用できない原因について、何かご存知のことがありましたらお教えいただけると幸いです。

1 reply

Glasses Rabbit
Community Manager
Community Manager
September 5, 2025

sota_9170さん
こんにちは。ご投稿ありがとうございます。


共有いただいたコードを弊社環境でも JavaScript デバッガーで確認したところ、同様に addBookmark のメソッドは利用できず、undefined が返されることを確認いたしました。

代替手段があるか探したところ以下のページに記載されている bookmarkRoot.createChild() を利用してしおりを追加する方法もテストしました。
しかしながら、こちらも同様に機能しませんでした。

【Acrobat User Community: Auto Bookmark Creation】
https://acrobatusers.com/tutorials/auto_bookmark_creation/?utm_source=chatgpt.com

そのため、Adobe Acrobat Pro の現行 JavaScript API を確認したところ、addBookmark に関する記載が見当たらず、現在はサポートされていない(もしくは廃止された)機能である可能性が高いと考えられます。
過去の情報を調べると2022のバージョン時点では利用できていたようなので、アップデートにともない利用ができなくなったと考えらえます。

お手数ではありますが、現状は他の方で有益な情報をお持ちの方の回答をお待ちいただくか
外部ツールやプラグインをお探しいただくようご検討ください。