Документация PDFiumPas

PrintCopies Свойство

Эта запись API сохраняет идентификаторы, сигнатуры, блоки кода и термины PDF в исходном виде.
Компонент: TPdf  ·  Модуль: PDFium
Встроенное предлагаемое число копий, на которое автор PDF хотел бы по умолчанию настроить диалог печати — запись /NumCopies в словаре /ViewerPreferences документа

Синтаксис

property PrintCopies: Integer; // read only

Описание

PDF могут содержать рекомендованную печатную настройку, которая подсказывает, сколько копий диалог печати должен подставить по умолчанию. Эта настройка хранится в catalog в /ViewerPreferences /NumCopies (PDF 32000-1 § 12.2 Table 150). PrintCopies отдаёт декодированное значение: положительное целое, если запись присутствует, или 0, если PDF оставил поле пустым (в этом случае реализации должны трактовать его как 1)

Это лишь hint, встроенный автором в файл; он не влияет на рендеринг PDFium и не влияет на то, как документ растрируется. Чтобы реально напечатать несколько копий, приложение всё равно должно передать количество в свой слой печати (Windows GDI StartDoc, сторонний печатный компонент и так далее)

Сопутствующие свойства PrintScaling, PrintPaperHandling и PrintPageRanges предоставляют остальные подсказки viewer preferences из того же словаря, так что их можно сразу передать в диалог печати. Для сырой строковой формы используйте ViewerPreference['NumCopies'], если она нужна

Примечания

Пример

// 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;

См. также

PrintScaling, PrintPaperHandling, PrintPageRanges, ViewerPreference