type TPdfThumbnailOrientation = (ptoVertical, ptoHorizontal);
type TPdfThumbnailView = class(TCustomControl) ... end;
| メンバー | 説明 |
|---|---|
Create | デフォルトのサムネイルサイズ、色、スクロール、選択状態を初期化します |
Destroy | 内部のサムネイルコントロールリソースを解放します |
EnsureCurrentPageVisible | 選択されている 1 起点のページが可視範囲の外にあるときにだけ、サムネイルのビューポートをスクロールします |
| プロパティ | 型 | デフォルト | 説明 |
|---|---|---|---|
Pdf | TPdf | nil | ページ数とサムネイル描画に使われる文書コンポーネントです |
CurrentPageIndex | Integer | 0 | 1 起点の選択ページインデックスです。変更すると選択されたサムネイルが可視のまま保たれ、0 は未選択を意味します |
Orientation | TPdfThumbnailOrientation | ptoVertical | 右側にスクロールバーを持つ縦のリストか、下側にスクロールバーを持つ横のストリップかを選びます |
FirstVisiblePageIndex | Integer | Read-only | 現在のサムネイルビューポート内の 1 起点の最初のページです。利用可能な文書ページがない場合は 0 になります |
LastVisiblePageIndex | Integer | Read-only | 現在のサムネイルビューポート内の 1 起点の最後のページです。利用可能な文書ページがない場合は 0 になります |
ThumbnailWidth | Integer | 120 | サムネイルの目標幅です。サポートされる範囲にクランプされます |
ThumbnailHeight | Integer | 160 | サムネイルの目標高さです。サポートされる範囲にクランプされます |
TextColor | TColor | clBlack | ページ番号キャプションの色です |
HoverColor | TColor | clMoneyGreen | ホバーされたサムネイルの行ハイライトの色です |
SelectionColor | TColor | clHighlight | CurrentPageIndex の行ハイライトの色です |
BorderColor | TColor | clGray | サムネイルの枠線の色です |
Color | TColor | clWhite | TCustomControl から継承されるコントロール背景色です |
Align, Anchors, Visible | — | 標準のフォーム配置と可視性のための、再公開された TControl プロパティです |
| イベント | 型 | 説明 |
|---|---|---|
OnPageClick | TPdfThumbnailClickEvent | ユーザーがサムネイル行を左クリックしたときに発生します。APageIndex は 1 起点です |
ビューアーが使用するのと同じ TPdf インスタンスを Pdf に割り当て、CurrentPageIndex をアクティブページと同期させておきます
サイドバーには ptoVertical を、フィルムストリップには ptoHorizontal を使用します。ヒットテスト、描画、スクロール、可視範囲の照会は選択された向きに従います
コントロールはスクロールを自前で管理し、現在の可視ページ範囲の描画済みビットマップだけを保持するため、長い文書をメモリに保持することなく、隣接するスクロール中にページが再利用されます
別の Pdf の割り当てや ThumbnailWidth / ThumbnailHeight の変更はキャッシュされたビットマップをクリアします。ホバー状態や現在ページの状態変化ではビットマップが再利用されます
OnPageClick を処理して、ペアになった TPdfView.PageNumber やその他のページナビゲーション先を更新してください
ThumbnailView.Pdf := Pdf1;
ThumbnailView.Orientation := ptoHorizontal;
ThumbnailView.CurrentPageIndex := PdfView1.PageNumber;
ThumbnailView.OnPageClick := ThumbnailPageClick;