8 返信 最新の回答 日時: May 20, 2005 2:00 PM ユーザー:(HK-1912c5a8)

    現在のページの取得

      ブラウザ内に開かれたPDFの、現在表示しているページ番号を取得することはできるのでしょうか。
      もし可能でしたら、それを可能にする言語・方法などをご教授いただけると大変助かります。
      よろしくお願いいたします。
        • 1. Re: 現在のページの取得
          Level 1
          関係するアプリケーション名やバージョンが不明。
          OS、Adobe Reader、ブラウザなどなど。

          なぜ「ページ番号を取得」したいのだろうか?
          目的によっては探すべき解決方法が異なる場合も多い。

          確認すれば、この問題はAcrobatフォーラムでなくてもよいということ?
          • 2. Re: 現在のページの取得
            Level 1
            情報小出しで申し訳ありません。
            OS:WindowsXP以降
            AdobeReader:7.0
            ブラウザ:IE6以降
            となります。
            ページ番号取得の目的は、「PDFのブックマーク」的なことをブラウザで実現したいのです。
            ページ番号を取得し、それをcookieなどに保存し、その情報をもとにして、リンク時に「#page=10」などのようにして、PDFの指定のページを開けないかな、と思っています。
            Acrobatではなく、Readerで実現させたいです。
            • 3. Re: 現在のページの取得
              「ページ番号を取得」するのは誰(どのアプリケーション)を想定しているのか判りにくい。WEBを見ているユーザー?、それともサーバー側?

              その前提として、ページ番号を取得することの利便性は何で、それは誰のためにあるのだろうか?

              WEBを構成するHTML内でのJavaScriptと、PDF内で動作するAcrobat JavaScriptは異なるものだから、その制御を使い分けるというのはそう簡単ではないような気がするが。
              • 4. Re: 現在のページの取得
                Level 1
                AcrobatJavaScriptに
                「getPageLabel」というコマンドがあります。
                AcrobatJavaScriptは、
                PDF文書内(Acrobat上)で使用するものなので、クッキーと組み合わせることができるかは不明

                (私にJavaScriptは期待しないで)
                • 5. Re: 現在のページの取得
                  Level 1
                  たびたびすみません。
                  ページ番号を取得するのはユーザです。
                  HTML内からの操作で、ということになればjavascriptやvbscriptになるのでしょうが、外部からの操作で可能なのであれば他の言語(VBなど)も想定に入れています。
                  そういう意味で「可能にする言語」という曖昧な書き方をしてしまいました。
                  また、サーバに乗せるものではなく、ローカルで見るものです。
                  利便性は「PDFのブックマーク」、誰のためかは「ユーザのため」となります。
                  • 6. Re: 現在のページの取得
                    Level 1
                    私の説明が悪いためにいろいろとお手数おかけしております。申し訳ありません。
                    私が想定していることは次のような感じです。

                    ・フレームA・フレームBに区切られているHTMLがある
                    ・フレームAには「ブックマークボタン」がある
                    ・フレームBにはPDFを開く
                    ・フレームBをユーザが操作して、任意のページを閲覧する
                    ・ユーザが「このPDFのこのページをブックマークしたい」と思ったら、フレームAの「ブックマークボタン」を押す
                    ・フレームBに開かれているPDFの現在のページ番号、その他必要な情報(PDFのパスなど)を取得し、cookieなどに保存
                    ・次回閲覧時には、cookieに保存した値を取得して、javascriptなどで動的にリンクを生成してPDFの指定のページを表示する

                    といった感じです。
                    • 7. Re: 現在のページの取得
                      Level 1
                      どうも利便性がいまひとつ理解できないのだが・・・。

                      フレーム対応のサイトでPDF表示をおこなっていると表示がうまくいかなくなるというのは過去投稿にもいくつもある。
                      PDFをフレーム表示させるのは賢明ではないと思う。

                      まずローカルPC上のPDFに対しAdobe Readerでブックマークをつける方法がある。
                      これは書籍『PDF HACKS』(オライリー社刊)の「Hacks#15」で触れられているもの。日本語でも作動する。
                      サンプルは書籍に書かれたサイトからダウンロードできる。

                      上記の「Hacks#15」の方法だとブラウザ内表示のPDFでは作動しない。
                      そこでAcrobat製品版だけになるが、「Hacks#16」ではブラウザ内表示のPDFがブラウザのお気に入りに追加されるという方法が掲載されている。これもサンプルは書籍に書かれたサ イトからダウンロードできる。

                      『PDF HACKS』(オライリー社刊)
                      http://www.oreilly.co.jp/books/4873112222/
                      Hacks#15:Adobe ReaderでPDF文書内のページをブックマークする
                      Hacks#16:Acrobatでウェブ上のPDF文書内のページへのショートカットを作成する

                      Hacks#15はAcrobat Javascriptで実現され、Hacks#16はプラグインでの実現である。
                      • 8. Re: 現在のページの取得
                        Level 1
                        返事が遅くなってすみません。
                        やはりフレーム表示は良くないのですね…。
                        休みに紹介していただいた「PDF HACKS」を立ち読みでもしてみようと思います。
                        いろいろと情報ありがとうございました。