property FitMode: TPdfFitMode;
FitMode は標準的な PDF ビューアの「ページ全体に合わせる」「幅に合わせる」「高さに合わせる」セレクタを published プロパティとして公開したもので、アプリケーションは TPdfView をフォームに配置し、ズーム計算を書くことなくレイアウトを選択できます。各値は次の明確な表示動作に対応します
Zoom がそのまま尊重されます。既存アプリケーションの v1.19.0 より前の動作を保つため、これがデフォルトですアクティブなフィットモードは、コントロールのリサイズ時と現在ページの変更時に自動的に再適用されます。1 回きりのズーム代入ではなく FitMode を使う意義はここにあります。縦置きの表紙の後に横置きの見開きが続くような、ページサイズの混在する長文ドキュメントも、追加の Resize / OnPageChange ハンドラなしで常に適切な表示枠に保たれます
Zoom を直接設定するとアクティブなフィットモードが解除され、FitMode は pfmNone に戻ります。これは、ズーム率を入力すると「ページ全体に合わせる」「幅に合わせる」「高さに合わせる」から抜ける、標準的な PDF ビューアの挙動に合わせたものです。プロパティ値の意味も保たれます: FitMode <> pfmNone は「次のレイアウトイベントでビューが再フィットする」ことを意味します
SmoothScroll と組み合わせると、定番の「長文ドキュメントリーダー」の操作性になります
// Whole page fits in viewport, even after resize / page change
PdfView1.FitMode := pfmFitPage;
// Page width matches viewport width — long-document reading mode
PdfView1.FitMode := pfmFitWidth;
// Page height matches viewport height — presentation mode
PdfView1.FitMode := pfmFitHeight;
// 100% — one PDF point per pixel
PdfView1.FitMode := pfmActualSize;
// User types a zoom value → drop out of fit mode
PdfView1.Zoom := 1.5;
Assert(PdfView1.FitMode = pfmNone);