/ViewerPreferences /Duplex dokumentu — tryb obsługi papieru simplex / duplex, do którego autor PDF chciałby ustawić domyślnie okno drukowaniaproperty PrintPaperHandling: TPrintPaperHandling; // read only
Wpis /Duplex w /ViewerPreferences zaleca, jak
drukarka powinna obsługiwać papier dla dokumentu (PDF 32000-1 § 12.2 Table 150). PDFium
dekoduje nazwany token i udostępnia go jako wartość wyliczenia TPrintPaperHandling:
phUndefined — wpis jest nieobecny. Traktuj jako "użyj wartości domyślnej drukarki/przeglądarki"phSimplex — /Simplex. Druk jednostronnyphDuplexFlipShortEdge — /DuplexFlipShortEdge. Druk dwustronny, strony odwracają się wzdłuż krótszej krawędzi (typowe dla notatników i kalendarzy w orientacji poziomej)phDuplexFlipLongEdge — /DuplexFlipLongEdge. Druk dwustronny, strony odwracają się wzdłuż dłuższej krawędzi (standardowe książkowe oprawienie w orientacji pionowej)Podobnie jak inne właściwości związane z drukowaniem, jest to wskazówka zapisana w pliku przez
autora; PDFium jej nie wymusza. Aby uhonorować preferencję, warstwa drukowania musi przekazać
wartość do sterownika drukarki. W Windows GDI wywołaj
SetPdfPrintPaperHandlingDevMode, aby ustawić DEVMODE.dmFields i
DEVMODE.dmDuplex na DMDUP_SIMPLEX,
DMDUP_VERTICAL (dłuższa krawędź) lub DMDUP_HORIZONTAL (krótsza krawędź)
przed StartDoc
Połącz tę właściwość z PrintScaling, PrintCopies i PrintPageRanges, aby wszystkie preferencje drukowania dokumentu wypełniły okno drukowania jako jeden spójny zestaw domyślny
phUndefinedphSimplex i pozwól użytkownikowi to zmienić
// Pre-select the duplex radio buttons and prepare the printer DevMode.
begin
case Pdf1.PrintPaperHandling of
phSimplex: radioSimplex.Checked := True;
phDuplexFlipLongEdge: radioDuplexLong.Checked := True;
phDuplexFlipShortEdge: radioDuplexShort.Checked := True;
else
radioPrinterDefault.Checked := True; // phUndefined
end;
if SetPdfPrintPaperHandlingDevMode(DevMode, Pdf1.PrintPaperHandling) then
ApplyPrinterDevMode(DevMode);
end;