مرجع كامل لتفضيلات العارض

تتيح ViewerPreferences التحكم في كيفية تقديم مستندات PDF داخل العارضات الداعمة، وكيفية تهيئة بعض إعدادات الطباعة الافتراضية. تدعم مكتبة HotPDF الحالية 14 قيمة ViewerPreferences إضافة إلى خاصية InitialZoom المرتبطة

Current Data Types

THPDFDirection = (LeftToRight, RightToLeft);
THPDFNonFullScreenPageMode = (
  nfpmUseNone, nfpmUseOutlines, nfpmUseThumbs, nfpmUseOC, nfpmUseAttachments
);
THPDFPrintScaling = (psNone, psAppDefault);
THPDFDuplex = (dupSimplex, dupDuplexFlipShortEdge, dupDuplexFlipLongEdge);
THPDFPageBoundary = (pbMediaBox, pbCropBox, pbBleedBox, pbTrimBox, pbArtBox);
THPDFInitialZoom = (
  FitNone, FitPage, FitWidth, FitHeight, FitBox, FitBoxWidth, FitBoxHeight,
  Zoom50, Zoom75, Zoom100, Zoom125, Zoom150, Zoom200
);

THPDFViewerPreference = (
  vpHideToolbar, vpHideMenubar, vpHideWindowUI, vpFitWindow, vpCenterWindow,
  vpDisplayDocTitle, vpDirection, vpNonFullScreenPageMode, vpPrintScaling,
  vpDuplex, vpPickTrayByPDFSize, vpNumCopies, vpPrintArea, vpPrintClip,
  vpViewArea, vpViewClip
);

THPDFViewerPreferences = set of THPDFViewerPreference;

Supported ViewerPreferences

Option Companion Property الوصف
vpHideToolbar None Hide the viewer toolbar.
vpHideMenubar None Hide the viewer menu bar.
vpHideWindowUI None Hide UI elements such as scroll bars and navigation controls.
vpFitWindow None Resize the document window to fit the first displayed page.
vpCenterWindow None Center the document window on the screen.
vpDisplayDocTitle Title Display the document title instead of the file name in the viewer caption.
vpDirection Direction Store the predominant reading order using LeftToRight or RightToLeft.
vpNonFullScreenPageMode NonFullScreenPageMode Choose the page mode to use after leaving full-screen mode.
vpPrintScaling PrintScaling Choose psNone or psAppDefault for default print scaling.
vpDuplex Duplex Choose simplex or duplex printing behavior.
vpPickTrayByPDFSize None Request printer tray selection based on the PDF page size.
vpNumCopies NumCopies Store the suggested print copy count.
vpPrintArea PrintArea Select the page boundary used for print rendering.
vpPrintClip PrintClip Select the page boundary used for print clipping.
vpViewArea ViewArea Page boundary used for the on-screen view area (PDF 1.4 12.2). Available since HotPDF v2.29.0.
vpViewClip ViewClip Page boundary used for the on-screen view clipping (PDF 1.4 12.2). Available since HotPDF v2.29.0.

قيم الخصائص المرافقة

لا تكتب هذه الخصائص إلا عندما يكون علم ViewerPreferences المطابق مفعّلًا

الخاصية Values
Direction LeftToRight, RightToLeft
NonFullScreenPageMode nfpmUseNone, nfpmUseOutlines, nfpmUseThumbs, nfpmUseOC, nfpmUseAttachments
PrintScaling psNone, psAppDefault
Duplex dupSimplex, dupDuplexFlipShortEdge, dupDuplexFlipLongEdge
PrintArea / PrintClip / ViewArea / ViewClip pbMediaBox, pbCropBox, pbBleedBox, pbTrimBox, pbArtBox

تكامل InitialZoom

تكمل InitialZoom ‏ViewerPreferences بالتحكم في نمط عرض الصفحة الأولي عند فتح المستند

الافتراضي: منذ HotPDF v2.3.11 القيمة الافتراضية هي FitHeight (PDF /FitV destination)، لذلك تفتح المستندات المولدة مع ملاءمة كل صفحة لارتفاع نافذة العارض. اضبط InitialZoom على FitNone لحذف OpenAction وترك العارض يعود إلى التكبير الافتراضي لديه

// Complete document presentation setup
HotPDF.ViewerPreferences := [vpFitWindow, vpCenterWindow, vpDisplayDocTitle];
HotPDF.InitialZoom := FitWidth;

// Technical document setup
HotPDF.ViewerPreferences := [vpDisplayDocTitle, vpPrintScaling];
HotPDF.InitialZoom := Zoom125;

// Presentation mode
HotPDF.ViewerPreferences := [vpFitWindow, vpHideToolbar, vpHideMenubar];
HotPDF.InitialZoom := FitPage;

Implementation Example

var
  VPref: THPDFViewerPreferences;
begin
  VPref := [vpFitWindow, vpCenterWindow, vpDisplayDocTitle];

  if EnableDirection then
  begin
    Include(VPref, vpDirection);
    HotPDF.Direction := RightToLeft;
  end;

  if EnablePrintScaling then
  begin
    Include(VPref, vpPrintScaling);
    HotPDF.PrintScaling := psNone;
  end;

  HotPDF.ViewerPreferences := VPref;
  HotPDF.InitialZoom := FitWidth;
end;

Compatibility Notes

  • Adobe Reader/Acrobat: يوفر عادة الدعم الأكثر اكتمالًا لـ ViewerPreferences
  • عارضات أخرى: يختلف الدعم لأن هذه القيم تفضيلات وليست متطلبات إلزامية
  • التراجع السلس: يجب أن تتجاهل العارضات المتوافقة الإعدادات غير المدعومة بأمان

Demo Applications

تمت مزامنة العروض التالية مع دعم المكتبة الحالي

  • Demo\Delphi\ViewerPref
  • Demo\CBuilder\ViewerPref