/NumCopies del dizionario /ViewerPreferences del documentoproperty PrintCopies: Integer; // read only
I PDF possono portare una preferenza di stampa consultiva che suggerisce quante copie il
dialogo di stampa dovrebbe pre-impostare. Quella preferenza vive nel catalogo sotto
/ViewerPreferences /NumCopies (PDF 32000-1 § 12.2, Tabella 150)
PrintCopies espone il valore decodificato: un intero positivo quando presente, oppure
0 se il PDF lascia il campo non impostato (nel qual caso le implementazioni devono
trattarlo come 1)
È puramente un hint inciso nel file dall'autore; non ha alcun effetto sul
rendering di PDFium e non influenza il modo in cui il documento viene rasterizzato. Per stampare davvero
più copie la tua applicazione deve comunque passare il conteggio al suo layer di stampa
(GDI Windows StartDoc, un componente di stampa di terze parti, ecc.)
Le proprietà companion PrintScaling, PrintPaperHandling e PrintPageRanges espongono gli altri hint viewer-preferences di stampa nello stesso dizionario, così puoi instradarli tutti in un dialogo di stampa in una volta. Usa ViewerPreference['NumCopies'] per la forma stringa grezza se ti serve
PrintCopies = 0 significa "preferenza non presente nel documento"Printer VCL o con qualsiasi altra API di stampa
// Pre-fill the spin edit with the document's suggested copies count.
var N: Integer;
begin
N := Pdf1.PrintCopies;
if N < 1 then N := 1;
spinCopies.MinValue := 1;
spinCopies.MaxValue := 999;
spinCopies.Value := N;
Memo1.Lines.Add(Format('PDF suggests %d copies', [N]));
end;