/ViewerPreferences /PrintScaling hint를 디코딩한 값입니다. PDF 작성자가 viewer의 print dialog 기본값을 application-defined fit-to-page scaling으로 둘지, 아니면 page를 작성된 크기로 인쇄할지 알려 줍니다property PrintScaling: Boolean; // read only
/ViewerPreferences의 /PrintScaling 항목은 PDF 32000-1 § 12.2 Table 150에 따라 두 이름 값 중 하나를
갖습니다
/AppDefault — 뷰어가 평소의 스케일링 동작을
적용하게 둡니다(보통 "인쇄 가능 영역에 맞춤"). PDFium Delphi Component는 이를
True로 매핑합니다/None — 문서는 의도된 물리 크기로 조판되었으므로
프린터로 1:1로 보내야 하며 축소나 맞춤이 없어야 합니다. PDFium Delphi Component는 이를
False로 매핑합니다PDF 인쇄 파이프라인을 구성할 때 이 프로퍼티를 쓰면 사용자가 문서가 기대하는 바를
추측하지 않아도 됩니다. 폼, 고정 형식 청구서, 바코드 라벨,
인쇄 교정쇄는 보통 /None으로 설정해 바코드 / 치수가
정확한 크기로 나오게 하고, 브로슈어와 제본 문서는 보통 기본값으로 두어
어떤 용지 크기에도 맞습니다
이것은 어디까지나 힌트입니다 — PDFium은 래스터화 중에 강제하지 않습니다. 렌더링된 비트맵이나 PostScript 스트림을 실제로
스케일하거나(또는 스케일을 거부하는) 것은 인쇄 레이어(VCL Printer, GDI StartDoc 등)입니다
인쇄 대화상자를 채울 때는 PrintPaperHandling,
PrintCopies,
PrintPageRanges와 짝지으세요
/ViewerPreferences에 항목이 없으면 PDFium은 스펙 기본값인 True(AppDefault)를 반환합니다ViewerPreference['PrintScaling']을 대신 읽으세요. 리터럴 토큰을 반환합니다/None일 때 인쇄 대화상자에서 자동으로 "실제 크기"를 고르는 방식으로 이 설정을 존중합니다PrintScaling = False면 페이지에 맞춤을 비활성화하고 True면 기본 라디오 버튼을 둡니다
// Apply the document's preferred scaling mode to the printer setup.
begin
if Pdf1.PrintScaling then
begin
radioFit.Checked := True;
Memo1.Lines.Add('PDF prefers app-default (fit to page) scaling');
end
else
begin
radioActualSize.Checked := True;
Memo1.Lines.Add('PDF requests actual-size print (no scaling)');
end;
end;