タイトル | : FormにPDFファイルを表示し操作したい |
記事No | : 12390 |
投稿日 | : 2008/05/27(Tue) 13:47 |
投稿者 | : てぷ子 |
お世話になります。 VB6.0、Adobe Reader 8、Adobe Acrobat 8 Professionalを 使用して下記のことを行いたいのですが、うまくいきません。 ご存知の方がいましたら、教えていただけないでしょうか。
■やりたいこと ・pdfファイルをFormの中に表示し、 表示されたファイルの「拡大」「縮小」 「90度回転」をボタンから行いたい
■これまでの調査経緯 Adobe Acrobat 7.0 Browser Control Type Libraty 1.0を コンポーネントに追加し、 AcroPDFをFormに貼り付け、 ソース上に AcroPDF.LoadFile ("C:\test.pdf") と記述すると、 フォーム内にpdfファイルを表示することが出来ました。
また「拡大」「縮小」は AcroPDF.setZoom (150) のように、setZoomメソッドで設定出来ました。 しかし、「90度回転」させるためのメソッドが見つからず、 もしかしてAcroPDFでは回転をソース上から指示することが 出来ないのかなと思っています。 (勘違いだったらスミマセン;)
なのでAcroPDFの使用をあきらめ、 Acrobat SDKを使用して取り組んでみました。 AcroExch.PDPage の SetRotateメソッドを使用すれば、 回転の命令が出せることが分かっており、 Formの中ではなく別ウィンドウとしてAcrobatアプリケーションを起動し、 その表示を回転させることは出来ました。 ただ、「Formの中にpdfを表示する」ことが出来ません。
AcroExch.AVDoc の OpenInWindowExメソッドを使用したら Formの中に表示することが出来るのではないかと思っているのですが、 コンパイル・実行は出来ても実際期待通りに動いてはくれず、 pdfファイルが表示されません。 方法としては、Formの中にPictureBoxを配置し、それに pdfファイルを表示させようとしています(下記ソース参照) --------------------------------------------------------------- Dim avDoc As CAcroAVDoc Dim rtn As Boolean
Set avDoc = CreateObject("AcroExch.AVDoc") rtn = avDoc.OpenInWindowEx( _ "C:\test.pdf", _ '←表示させたいpdfファイルのアドレス Form.PictureBox.hWnd, _ '←表示させるFormの中のPictureBoxのウィンドウハンドル) AV_DOC_VIEW, _ True, 0, PDUseNone, AVZoomFitPage, 0, 0, 0) --------------------------------------------------------------- もしかして、PictureBoxにpdfファイルを表示させようというのが そもそも間違いなのでしょうか…? (rtnにはFalseが返ってきます)
上記のように 「AcroPDFを使用した方法」、 「Acrobat SDKを使用した方法」または まったく別の方法でも、 私が叶えない動きをさせることは可能でしょうか。 もし可能でしたは、その方法を教えていただけないでしょうか。
VB初心者なので、説明も的を得ていない部分などあるかと思いますが、 よろしくお願いします。
|