property Constraints: TSizeConstraints; // published, inherited from TControl
Constraints يكشف الخصائص الفرعية الأربع MinWidth وMaxWidth وMinHeight وMaxHeight وجميعها افتراضيًا 0 أي بلا حد. وهي تقيد منطق التحجيم الذي تقوده Align أو Anchors أو استدعاءات SetBounds الصريحة، فتمنع العارض من الانكماش دون حد أدنى صالح للاستخدام أو النمو فوق حد أقصى معقول
في تطبيقات قارئ PDF تهم الأبعاد الدنيا أكثر من غيرها: فالعرض يصبح غير مريح تحت نحو 240 x 180، وتبدأ أشرطة التمرير بمزاحمة الصفحة نفسها على المساحة. يجنّب تعيين MinWidth := 320 وMinHeight := 240 هذا الانهيار البصري مع إبقاء إمكانية إرساء العارض بشكل ضيق
عندما تدخل إحدى القيود حيز التنفيذ، يعيد FitMode النشط حساب تكبير الصفحة وفق حجم العميل المقيد. يضمن ذلك أن لا ينتج عن الاحتواء للعرض أو الاحتواء للصفحة أي أحجام بكسل صفرية أو سالبة كانت ستجعل PDFium يتخطى العرض
Constraints أيضًا مع الأحجام الدنيا ذات النسق الخاصة بمجموعة الأدوات، لكن منطق عنصر تحكم PDFium نفسه يستخدم القيم المعلنة هنا فقطMaxWidth := 800 مع إبقاء MinWidth := 0OnResize فوريًا ويعيد الاحتواء إذا كان الحجم الحالي يخالف النطاق الجديد
// Keep the viewer usable in any layout configuration
procedure TForm1.FormCreate(Sender: TObject);
begin
PdfView1.Constraints.MinWidth := 320;
PdfView1.Constraints.MinHeight := 240;
PdfView1.Constraints.MaxWidth := 0; // no max
PdfView1.Constraints.MaxHeight := 0; // no max
PdfView1.Anchors := [akLeft, akTop, akRight, akBottom];
PdfView1.FitMode := pfmFitToWidth;
end;