property Anchors: TAnchors; // published, default [akLeft, akTop]
Anchors 是 Align 的替代方案,對 PDF 檢視器如何跟隨父容器提供像素級的精確控制。集合中的每個元素(akLeft、akTop、akRight、akBottom)會把檢視器的該邊緣鎖定到父容器的對應邊緣 — 若兩個相對邊緣都錨定,父容器調整大小時檢視器會跟著伸展;若只錨定一邊,檢視器會保持大小並滑動
在固定寬度的檢查窗格或精靈步驟中,PDF 閱讀器最常見的配置是 [akLeft, akTop, akRight, akBottom],它在功能上等同於 alClient,但會保留設計階段的週框矩形,讓你能在檢視器周圍巢狀放置其他控制項而不會出現 z 軸順序意外
每當錨點導致檢視器放大或縮小時,繼承的調整大小處理常式會重新計算捲動區域;作用中的 FitMode(非 pfmNone 時)會重新套用,讓頁面內容與檢視區保持原有的視覺關係
Anchors 與 Align 在同一個控制項上互斥。把 Align 設為 alNone 以外的任何值,都會在執行階段覆蓋錨點Constraints.MinWidth / MinHeight 保持檢視區可用OnResize,因此由該事件觸發的任何自訂捲軸接線或縮放計算都會繼續執行
// Lock the viewer to all four edges of its parent panel
procedure TForm1.ConfigureViewer;
begin
PdfView1.Parent := PanelMain;
PdfView1.Align := alNone;
PdfView1.SetBounds(8, 8, PanelMain.ClientWidth - 16,
PanelMain.ClientHeight - 16);
PdfView1.Anchors := [akLeft, akTop, akRight, akBottom];
PdfView1.Constraints.MinWidth := 320;
PdfView1.Constraints.MinHeight := 240;
end;