|
THotPDF.UseObjectStreams
|
Top Previous Next |
|
적합한 간접 객체를 PDF 1.5
Delphi syntax: property UseObjectStreams: Boolean;
C++ syntax: __property bool UseObjectStreams;
Description UseObjectStreams가 true이고(UseXRefStream도 true여야 함) EndDoc가 실행되면, 딕셔너리, 배열, 숫자, 이름, 문자열, 불리언, null 등 적합한 간접 객체를 모두 ISO 32000-1 7.5.7에 따라 하나 이상의
가장 컴팩트한 PDF 1.5+ 출력 파이프라인을 만들려면 UseXRefStream 속성과 함께 사용하는 것이 자연스럽습니다. ObjStm 패커는 스트림 객체, 암호화 딕셔너리, trailer가 가리키는 Catalog 및 Info 딕셔너리를 압축하지 않고 그대로 두므로, 최소 기능의 PDF 파서도 문서 루트를 찾고 콘텐츠를 복호화할 수 있습니다
Default value: false (opt-in). UseXRefStream이 꺼져 있거나(스펙상 type-2 엔트리는 텍스트 xref 테이블로 표현할 수 없음) Version이 PDF 1.5 미만이면, UseObjectStreams를 true로 설정해도 조용히 false로 강등됩니다
PDF/A-1에서도 강제로 꺼집니다. ISO 19005-1(PDF 1.4, 6.1.4절)은 압축된 객체 스트림을 이를 담는 cross-reference 스트림과 함께 쓰는 것을 금지하므로, PDFACompliance가 part-1 수준을 지정하면 EndDoc은 기존 방식의 xref 테이블을 생성합니다. PDF/A-2와 PDF/A-3(PDF 1.7)에서는 계속 사용할 수 있습니다
Code Example
Size reduction 작은 간접 딕셔너리가 대부분인 문서(다중 페이지 문서, 주석, AcroForm 위젯, 구조 트리 요소, Optional Content 레이어)에서는 FlateDecode 적용 후 파일 크기 기준으로 보통 20-40%가 줄어듭니다. 그래픽만 있는 30페이지짜리 스모크 테스트는 14502바이트에서 8488바이트로 줄었습니다(-41.5%)
See Also UseXRefStream, Compression, Version, PDF Filter Support
|