7. PDFOutlineCtrl

7.1. 概要

しおりをツリー形式で表示/操作するコントロールで、.NET版のみの提供となります。

PDFOutlineCtrlはフォームに貼り付けるだけで簡単に利用することができ、ツリーの項目をクリック、またはカーソルキーの操作でしおりに割り当てられたアクションを実行することができます。

7.2. アプリケーションが実装すべき項目

コントロールには多くの機能がデフォルトで実装されており、ファイルを開くだけで簡単に利用できるようになっています。

なお、PDFPageViewCtrlが複数ある場合でもしおりの操作対象となるのは1つのPDFPageViewCtrlのみとなります。

詳しくは付属のサンプルプログラムを参考にしてください。

機能概要

説明

コントロール間の同期

デフォルトではなにもしません。

同期をとるにはDocumentOpenedイベントでAttachPDFDocumentしてください。同期をとるとページのオープンをおこなった場合に、同期中の全コントロールに反映されます。

しおりのアクションの実行先は既定で最初に見つかったPDFPageViewCtrlとなります。これを変更する場合は、AttachPDFView()メソッドを使用します。

7.3. しおりアクションの実行

初期状態ではしおりアクションの実行対象となるのは最初に見つかったPDFPageViewCtrlとなります。AttachPDFView()メソッドを使用することで初期状態に変わり、任意のPDFPageViewCtrlを対象とすることができます。

7.4. API一覧

7.4.1. プロパティ

プロパティ名

.NET/.NET Framework

概要

IsOpen

PDFがオープンされているか調べます。

HasFocus

コントロールがフォーカスを持っているかどうか調べます。

DocumentPath

オープンしているPDFのPathを取得します。

SDKVersion

SDKバージョン番号を取得します。

7.4.2. メソッド

メソッド名

.NET/.NET Framework

概要

OpenDocument

PDFをオープンします。

CloseDocument

PDFをクローズします。

GetPDFDocumentHandle

PDFDocumentのハンドルを取得します。

AttachPDFDocument

PDFDocumentのハンドルをコントロールに関連付けます。

AttachPDFView

実行対象の実行対象となるPDFPageViewを指定します。

7.4.3. イベント

イベント名

.NET/.NET Framework

概要

DocumentOpened

ドキュメントがオープンされたときに呼ばれます。

7.5. APIリファレンス

7.5.1. IsOpenプロパティ

型: bool (.NET) (getのみ)

解説: PDFがオープンされているかどうか調べます。オープンされていればTrueになります。

7.5.2. HasFocusプロパティ

型: bool (.NET) / VARIANT_BOOL (ActiveX)  (getのみ)

解説: コントロールがフォーカスを持っているかどうか調べます。フォーカスをもっていればTrueになります。.NETのControl.Focusedプロパティは正しく機能しませんのでこのプロパティを使用してください。

7.5.3. DocumentPathプロパティ

型: string (.NET) (getのみ)

解説:オープン中PDFファイルのPathを取得します。

7.5.4. SDKVersionプロパティ

型: string (.NET) (getのみ)

解説:PDFViewerSDKのバージョン番号です。

7.5.5. OpenDocumentメソッド

int32 OpenDocument(string filePath, string password); (.NET)

filePath:PDFファイルのパスを指定します。

password:パスワード パスワード無しの場合は空文字列を指定してください。

戻り値:成功した場合0が返ります。失敗した場合はエラーコードが返ります。

解説: PDFファイルをオープンします。 閲覧パスワードがかかっているPDFの場合、デフォルトではパスワード入力ダイアログを表示します。それ以外のエラーが発生した場合はエラーダイアログを表示します。 エラーコードが843906の場合は、PDFにパスワードが設定されていて、与えられたpassWordが一致しないエラーです。パスワード入力を行い、再度OpenDocument()を呼び出してください。

7.5.6. CloseDocumentメソッド

void CloseDocument (); (.NET)

解説:PDFファイルをクローズします。

7.5.7. GetPDFDocumentHandleメソッド

IntPtr GetPDFDocumentHandle(); (.NET)

戻り値: PDFDocumentのハンドル

解説:コントロールに関連付けられているPDFDocumentのハンドルを取得します。ハンドルはOpenDocumentでファイルを開いた後に取得してください。

7.5.8. AttachPDFDocumentメソッド

void AttachPDFDocument(IntPtr hPDFDocument); (.NET)

hPDFDocument:PDFDocumentのハンドル

解説:指定したPDFDocumentのハンドルをコントロールに関連付けます。一つのPDFDocumentを、複数のコントロールと使い回したいときに使用します。同じPDFDocumentを持つコントロールはファイルクローズ時などを同期します。

7.5.9. AttachPDFViewメソッド

bool AttachPDFView(PDFPageViewCtrl PDFPageViewCtrl); (.NET)

PDFPageViewCtrl:PDFPageViewCtrlの参照

戻り値:指定に成功した場合にはtrueが返ります。

解説: しおりアクションの実行対象となるPDFPageViewCtrlを指定します。対象にはPDFOutlineCtrlと同じPDFDocumentが関連付けされている必要があり、PDFDocumentがまだ指定されていないか、異なるPDFDocumentと関連付けされたPDFPageViewCtrlが指定されている場合、呼び出しは失敗します。

なお、初期状態では最初に見つかったPDFPageViewCtrlがしおりアクションの実行対象となります。

7.5.10. DocumentOpenedイベント

void DocumentOpened(IntPtr hPDFDocument); (.NET)

hPDFDocument:PDFDocumentのハンドル

解説:ドキュメントがオープンされたときに発行されます。