PDFium Delphi Component Docs

PDFium VCL API 참조

Windows는 VCL 또는 Lazarus Windows widget set을 사용합니다. 네이티브 Free Pascal/LCL 빌드는 타깃과 일치하는 PDFium 공유 라이브러리와 함께 Linux Qt6 또는 macOS Cocoa를 사용합니다. 도구와 런타임 요구 사항은 네이티브 LCL 설치를 참조하세요. VCL Delphi/C++Builder 래퍼는 Windows용이며, 네이티브 Delphi macOS 암호화 및 타임스탬프 헬퍼는 시각적 래퍼와 별도로 검증합니다

헬퍼 유닛

유닛설명
FPdfAsync구조화된 취소, 구성 가능한 future, 제한된 우선순위 워커 풀을 제공해 반응성 좋은 백그라운드 PDF 작업을 지원합니다
FPdfMatrixPDFium 페이지 오브젝트 API를 위해 affine 합성, 진단, 피팅 사각형 매핑, 역기하, 분해, 대량 점/사각형 변환을 제공합니다
FPdfMeasurePDF 사용자 단위에서 텍스트 레이아웃을 위해 TPdf.MeasureText, MeasureTextWidth, WrapText 헬퍼 메서드를 추가합니다
FPdfLayout페이지 매김, 태그, 그리드 기반, Markdown, HTML, 표, 이미지, 링크, 재사용 노드 레이아웃을 만듭니다
FPdfTextShaping확장 가능한 셰이퍼 인터페이스와 Windows Uniscribe 구현으로 양방향 Unicode 텍스트를 제한된 시각적 글리프 실행으로 셰이핑합니다
FPdfProduction제한된 색상, 폰트, SVG, 대체, XFA, 바코드, Portfolio, RichMedia 프로덕션 워크플로를 제공합니다
FPdfDiff상한이 있는 페이지 정렬, Unicode 텍스트 차이, 연결된 시각 영역
FPdfMerge독립 재열기 검증을 포함하는 outline, 명명된 목적지, 내부 링크의 트랜잭션 페이지 병합
FPdfOcrTesseract명시적 의존성 및 인식 상한을 가진 선택적 Tesseract OCR 프로바이더
FPdfFormMerge명시적 충돌 정책을 가진 트랜잭션 AcroForm 필드 병합
FPdfBarcodeZXing선택적 네이티브 바코드 생성과 인식
FPdfStyledEdit미리 보기와 rollback을 갖춘 검증된 스타일 PDF 텍스트 교체
FPdfSemanticDiff안정된 식별을 사용하는 주석/폼 의미 변경과 전후 overlay 좌표
FPdfColourLittleCms원본 Gray, RGB, CMYK 샘플용 선택적 네이티브 ICC 변환
FPdfDocumentColour지원하지 않는 객체를 명시적으로 보고하는 제한된 PDF 문서 색상 변환
FPdfRedaction트랜잭션 영구 삭제용 중첩 Form, 채우기 패스, 아핀 이미지 지오메트리
FPdfStandardsExecution측정, GeoPDF, PDF/A 복구, PDF/UA, PDF/X, PAdES 증거, PDF/VT, PDF/E, PDF/R 워크플로를 실행합니다
FPdfAsn1상위 태그 식별자, 타입 있는 값, canonical 검사, 리소스 제한과 함께 제한된 ASN.1 DER 데이터를 인코딩, 탐색, 디코딩, 검증합니다
FPdfPreflightReport질의 가능한 표준 리포트, PDF/A 복구 플랜, PDF/X 프로덕션 preflight, 선언적 규칙, 리소스 예산, 격리된 병렬 검증, 집계, 기계 가독 내보내기를 만듭니다
FPdfBenchmark로드, 첫 페이지, 렌더링, 저장, 메모리, 시맨틱, 픽셀, 독립 재오픈 게이트와 함께 제한된 성능·컨포먼스 코퍼스를 실행합니다
FPdfXmp타입 있는 RDF 값과 미지 네임스페이스 보존과 함께 제한된 네임스페이스 인식 XMP 패킷을 읽고, 편집하고, 증분 기록합니다
FPdf standards helpersassociated-file, PAdES, PDF/A, PDF/E, PDF/R, PDF/UA, PDF/VT, PDF/X 검증 및 저장 API를 독립 실행형으로 제공합니다
FPdfThumbnailTPdfThumbnailView 스크롤 가능한 축소판 탐색 컨트롤을 제공합니다
FPdfCompressTPdf 저장 파이프라인이 사용하는 스트림 수준 FlateDecode 압축, 기본 open-action 주입, 저장 후 정규화, PDF 버전 검사를 제공합니다
FPdfContentNormalize제한된 인라인 이미지 처리를 포함해 PDF 콘텐츠 시퀀스를 스캔하고 정규화합니다
FPdfXfdfpdfium.dll을 로드하지 않고 폼 필드와 주석을 XFDF로 독립 가져오기/내보내기합니다
FPdfEditPDFium 페이지 오브젝트 편집 바인딩과 독립 실행형 ARGB 색상 헬퍼 함수를 제공합니다
FPdfPdfvtMime인라인 PDF/VT 문서, 재사용 첨부, ICC 프로필을 담는 단일 파일 PDF/VT-2s MIME part 스트림을 만들고 검증합니다
FPdfIccProfileMD5, SHA-256, 프로필 메타데이터, 다국어 설명 매칭으로 제한된 ICC 헤더·태그 테이블 검증을 수행합니다
FPdfEncryptAESV3-CBC 또는 ISO/TS 32003 AESV4-GCM 암호화 PDF를 기록하고 AESV4 호환 복호화를 인증합니다
FPdfAes키 확장과 AES-256-CBC 스트림 래퍼를 갖춘 순수 Pascal AES-128·AES-256 블록 암호입니다
FPdfHmac순수 Pascal HMAC-SHA256, HKDF-SHA256, 상수 시간 바이트 비교, 보안 바이트 클리어링을 제공합니다
FPdfMacISO/TS 32004 독립 CMS AuthenticatedData 토큰을 만들고 검증합니다
FPdfAesGcmAES-128 및 AES-256 키를 위한 순수 Pascal AES-GCM 인증 암호화입니다
FPdfSha256증분 및 one-shot 헬퍼를 갖춘 순수 Pascal SHA-256 해시입니다
FPdfSha512하나의 컨텍스트 타입을 공유하는 순수 Pascal SHA-512·SHA-384 해싱입니다
FPdfSha3PDF 2.x 암호화 확장을 위한 순수 Pascal SHA3-256, SHA3-384, SHA3-512 및 스트리밍 SHAKE256 해싱입니다
FPdfCms분리된 다이제스트와 ICmsSigner 암호 백엔드로 RFC 5652 CMS 및 CAdES SignedData를 만듭니다
FPdfTsaPAdES B-T 및 B-LTA 프로필을 위한 RFC 3161 타임스탬프 권위 클라이언트입니다
FPdfTsaPosix시간과 크기 제한이 적용된 RFC 3161 타임스탬프 요청용 네이티브 Delphi POSIX HTTP 전송
FPdfTsaWinRFC 3161 요청을 위한 Windows WinHttp 타임스탬프 전송 백엔드입니다
FPdfTsaFpcLinux와 macOS에서 RFC 3161 요청을 위한 libcurl 타임스탬프 전송입니다
FPdfCrypto활성 암호 백엔드 위에서 동작하는 PAdES 서명자 확인 퍼사드입니다
FPdfTrustedList인증된 유럽 trusted-list 파싱, 캐싱, 갱신, 트러스트 앵커, qualified 서비스 평가를 제공합니다
FPdfCryptoWinCNG 서명, 분리 CMS 검증, 서명자 인증서 추출, 캐시 전용 시스템 신뢰 평가를 위한 Windows 백엔드입니다
FPdfCryptoMacKeychain 아이덴티티로 서명하고 CMSDecoder와 SecTrust로 CMS를 검증하는 macOS 백엔드입니다
FPdfCryptoSsl명시적 OpenSSL 서명 자격 증명, 독립 CMS 검증, 상한이 있는 OCSP/CRL 증거, 서명자별 진단을 제공하며, OCSP 응답이나 responder를 검사하지 않으면 앞선 CRL 판단을 유지합니다
FPdfCryptoOcsp네이티브 응답자 인증 전의 제한된 OCSP DER 및 최신성 사전 필터
FPdfPkcs11모든 플랫폼에서 개인 키를 토큰 안에 두는 PKCS#11 토큰 서명 백엔드입니다
FPdfSha1인증서를 thumbprint로 매칭할 때만 쓰고 서명 다이제스트로는 절대 쓰지 않는 순수 Pascal SHA-1입니다
FPdfBidi플랫폼 의존 없이 Unicode Bidirectional Algorithm(UAX #9) 확인과 시각적 재정렬을 수행합니다
FPdfTextShapingHbUniscribe가 없는 플랫폼을 위한 HarfBuzz 텍스트 셰이핑 백엔드입니다

TPdf 컴포넌트 메서드

문서 관리

메서드설명
CreateDocument새 빈 PDF 문서를 만듭니다
LoadDocument(Data: TMemoryStream; Buffered: Boolean = True)메모리 스트림에서 PDF 문서를 로드합니다
LoadDocument(Data: Pointer; Size: Integer; Buffered: Boolean = True)메모리 버퍼에서 PDF 문서를 로드합니다
LoadDocumentFileName에서 PDF 문서를 로드합니다
LoadDocument(const Data: TBytes; Buffered: Boolean = True)TBytes에서 PDF 문서를 로드합니다
LoadCustomDocument(AStream: TStream; AOwnsStream: Boolean = False)FPDF_LoadCustomDocument를 통해 임의의 TStream에서 PDF 문서를 스트리밍합니다. PDFium은 파일 전체를 메모리에 복사하지 않고 필요할 때 블록을 가져옵니다. AOwnsStream = True이면 스트림 수명을 TPdf 인스턴스가 인계받습니다
TPdfLoadOptions, TPdfLoadReport, LastLoadReport호환, 엄격, 복구 로딩 중 선택하고 제한된 xref 감사 증거를 살펴봅니다
SaveAsRepaired전체 단일 리비전 사본을 기록하고 전달 전에 독립적으로 strict-load로 검증합니다
TPdfRandomAccessStore위치 지정 I/O를 갖춘 스레드 안전한 시크 가능 저장소이며, 제한된 메모리에서 delete-on-close 전용 임시 저장소로 일방향 spill을 수행합니다
SaveMemoryLimit, SaveTemporaryDirectory, LastSaveSpillCount, LastSaveLargestMemoryBufferTPdf 저장 스테이징이 사용하는 제한된 작업 저장소를 구성하고 측정합니다
SaveAs(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean선택적 압축과 PDF 1.3~PDF 1.7 명시적 컨포먼스 검사를 거쳐 문서를 스트림에 저장합니다. 암호화된 명시적 버전 출력과 saIncremental이 결합된 pv13은 EPdfError를 발생시킵니다
SaveAs(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean선택적 압축과 PDF 1.3~PDF 1.7 명시적 컨포먼스 검사를 거쳐 문서를 파일에 원자적으로 저장합니다. 정규화나 검증이 실패하면 기존 대상은 그대로 유지됩니다
SaveAsLinearized(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean첫 페이지 그룹화와 검증된 페이지 오프셋·공유 오브젝트 힌트 테이블을 갖춘 Annex F Fast Web View 출력을 기록합니다
SaveAsLinearized(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean같은 디렉터리의 임시 파일을 통해 Fast Web View 출력을 원자적으로 기록합니다
SaveAsObjectStream(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean완전한 type-2 xref 스트림과 함께 제한된 PDF 1.5+ 오브젝트 스트림을 기록합니다
SaveAsObjectStream(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean같은 디렉터리의 임시 파일을 통해 최신 오브젝트 스트림 출력을 원자적으로 기록합니다
SaveAsNormalizedContent(Stream: TStream; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): Boolean제한된 구문 검증과 함께 정규화되고 병합된 논리 페이지 콘텐츠를 기록합니다
SaveAsNormalizedContent(const FileName: string; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): Boolean같은 디렉터리의 임시 파일을 통해 정규화된 콘텐츠 출력을 원자적으로 기록합니다
SaveAsReachable(Stream: TStream; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Booleancatalog와 trailer /Info에서 도달 가능한 오브젝트만 남겨 문서를 단일 클린 리비전으로 다시 기록합니다
SaveAsReachable(const FileName: string; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean같은 디렉터리의 임시 파일을 통해 가지치기된 단일 리비전 사본을 원자적으로 기록합니다
SaveAsDeduplicated(Stream: TStream; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): Boolean도달 불가능한 오브젝트를 쓸어내고 호환되는 폰트, 이미지, 폼 XObject를 하나의 대표 오브젝트로 병합해 문서를 다시 기록합니다
SaveAsDeduplicated(const FileName: string; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): Boolean같은 디렉터리의 임시 파일을 통해 중복 제거된 단일 리비전 사본을 원자적으로 기록합니다
SaveAsFlateRecompressed(Stream: TStream; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): Boolean저장이 호출자 기준치를 넘길 때 FlateDecode 스트림을 최대 압축으로 다시 인코딩해 문서를 다시 기록합니다
SaveAsFlateRecompressed(const FileName: string; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): Boolean같은 디렉터리의 임시 파일을 통해 Flate 재압축 사본을 원자적으로 기록합니다
SaveAsInlineImagesExternalised(Stream: TStream; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): BooleanBI/ID/EI 인라인 이미지를 재사용 가능한 XObject로 추출하고 인라인 블록을 Do 연산자로 치환해 문서를 다시 기록합니다
SaveAsInlineImagesExternalised(const FileName: string; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): Boolean같은 디렉터리의 임시 파일을 통해 외부화된 사본을 원자적으로 기록합니다
SaveAsReproducible(Stream: TStream; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): Boolean비결정적 타임스탬프와 /ID를 제거해 반복 저장이 바이트 단위로 동일해지도록 문서를 다시 기록합니다
SaveAsReproducible(const FileName: string; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): Boolean같은 디렉터리의 임시 파일을 통해 재현 가능한 사본을 원자적으로 기록합니다
ExportObjectGraph(Stream: TStream; const Options: TPdfObjectGraphInspectOptions; out Report: TPdfObjectGraphReport): Boolean활성 direct 값과 오브젝트 스트림 값을 제한된 타입 JSON으로 내보내고, 인코딩 스트림 SHA-256 다이제스트를 선택적으로 붙입니다
SaveAsObjectGraphPatched(Stream: TStream; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): Boolean트랜잭션성 타입 최상위 딕셔너리 패치를 적용하고 전달 전에 스테이징된 결과를 strict-load로 검증합니다
SaveAsObjectGraphPatched(const FileName: string; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): Boolean전체 오브젝트 그래프 패치 트랜잭션이 성공한 뒤 파일을 원자적으로 교체합니다
ExportObjectGraph / SaveAsObjectGraphPatched object-graph envelope두 메서드가 공유하는 오브젝트 그래프 검사 및 패치 모델 페이지입니다. 버전 관리되는 pdf-object-graph-v1 엔벨로프와 strict-load로 검증하는 트랜잭션 패치를 다룹니다
InspectOptionalContent(out Inventory: TPdfOptionalContentInventory; Usage: TPdfOptionalContentUsage = ocuView; ConfigurationIndex: Integer = -1): Booleanoptional-content 모델과 실제 네이티브 렌더링 상태를 읽습니다
SaveAsOptionalContentConfigured(Stream: TStream; const Changes: TPdfOptionalContentStateChanges; const Options: TPdfOptionalContentConfigureOptions; out Report: TPdfOptionalContentConfigureReport; AllowSignedDocument: Boolean = False): Boolean호출자가 선택한 optional-content 상태를 기록하고 엄격하게 검증합니다
BeginEditTransaction(const LabelText: WString = ''; AllowSignedDocument: Boolean = False)재현 가능한 네이티브 스냅샷으로 원자적 문서 편집 트랜잭션을 시작합니다
CommitEditTransaction: Boolean변경된 트랜잭션을 제한된 SHA-256 체인 양방향 delta로 저장합니다
RollbackEditTransactionundo 항목을 추가하지 않고 트랜잭션 이전 문서를 복원합니다
BeginPageObjectEditTransaction(AllowSignedDocument: Boolean = False)페이지 범위의 네이티브 오브젝트 변경 배치를 원자적으로 시작합니다
CommitPageObjectEditTransaction: Boolean페이지 콘텐츠를 한 번 생성하고 성공한 네이티브 변경을 모두 커밋합니다
RollbackPageObjectEditTransaction검증된 배치 이전 문서 스냅샷을 복원합니다
PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatus트랜잭션 상태, 페이지, 변경 수, 콘텐츠 생성 수를 보고합니다
BeginPageObjectEditTransaction / CommitPageObjectEditTransaction / RollbackPageObjectEditTransaction / PageObjectEditTransactionStatus제한된 스냅샷, 배치 처리된 네이티브 변경, 콘텐츠 단일 재생성, 롤백을 다루는 페이지 범위 원자적 편집 트랜잭션 모델입니다
UndoEdit: Boolean현재 저널 위치에서 역 delta를 적용하고 검증합니다
RedoEdit: Boolean현재 저널 위치 뒤의 순방향 delta를 적용하고 검증합니다
EditCanUndo: Boolean커밋된 문서 트랜잭션을 undo할 수 있는지 보고합니다
EditCanRedo: Booleanundo된 문서 트랜잭션을 redo할 수 있는지 보고합니다
ClearEditJournal현재 문서 상태를 유지하면서 커밋된 편집 이력을 해제합니다
ConfigureEditJournal(const Options: TPdfEditJournalOptions)항목, 저장된 delta, 스냅샷 한도를 설정합니다
GetEditJournalInfo: TPdfEditJournalInfo저널 위치, 레이블, 지문, 한도 사용량, undo/redo 가능 여부를 읽습니다
ExportEditJournal(Stream: TStream)이식 가능한 제한된 저널 형식을 기록합니다
ImportEditJournal(Stream: TStream; ApplyRecordedPosition: Boolean = True; AllowSignedDocument: Boolean = False)루트 또는 기록된 지문과 일치할 때만 저널을 검증하고 재생합니다
SaveRecoverySnapshot소스 지문과 검증된 편집 저널을 담은 체크섬 recovery 패키지를 기록합니다
RestoreRecoverySnapshot체크섬, 소스, 저널, 결과 검증을 마친 뒤에만 recovery 패키지를 복원합니다
InspectRecoverySnapshot편집을 적용하지 않고 recovery 메타데이터를 읽고 패키지를 검증합니다
EnableRecoveryAutosave(const FileName: string)커밋, undo, redo 뒤에 지정된 recovery 파일을 원자적으로 갱신합니다
DisableRecoveryAutosave기존 패키지를 삭제하지 않으면서 커밋 기반 recovery 기록을 중단합니다
RecoveryAutosaveFileName: string절대 recovery autosave 경로를 읽거나 비활성인 경우 빈 문자열을 반환합니다
ValidatePagePlan(const Plan: TPdfPagePlan; ImportedSource: TPdf = nil; AllowSignedDocument: Boolean = False): TPdfPagePlanValidationReport페이지 작업을 정확한 이전→이후 매핑으로 컴파일하고, 어느 문서도 변경하지 않으면서 탐색, 레이블, 폼, 구조, 가져온 기능, 서명 영향을 보고합니다
GenerateLayout(Layout: TPdfLayoutDocument; out Plan: TPdfLayoutPlan; AllowSignedDocument: Boolean = False): Boolean먼저 측정과 페이지 매김을 하고, 안정적인 총 페이지 수로 네이티브 텍스트, 구분선, 표 테두리, 이미지, 페이지, 재사용 페이지 XObject를 원자적으로 추가합니다
GeneratePagedLayout(Layout: TPdfLayoutDocument; PagedPlan: TPdfLayoutPagedPlan; out Plan: TPdfLayoutPlan; AllowSignedDocument: Boolean = False): Boolean명령을 시크 가능 저장소에 스트리밍하고, 한 번에 제한된 페이지 배열 하나씩 실체화하며, PDFium 페이지를 순서대로 추가합니다
GenerateTaggedLayout(Layout: TPdfLayoutDocument; out Plan: TPdfLayoutPlan; const Language: string = 'en-US'): Boolean네이티브 MCID, 완전한 구조·부모 트리, 대체 텍스트, 표 헤더 연관, tagged 링크를 갖춘 새 시맨틱 레이아웃 문서를 생성합니다
TPdfLayoutDocument.AddLink / AddSemanticNode / SetLastItemSemantics레이아웃 항목에 URI 링크, 비시각 시맨틱 컨테이너, role·부모·ID·언어·대체 텍스트·목록·표 메타데이터를 붙입니다
TPdfLayoutDocument.AddTable(Table: TPdfLayoutTable)캡션, 반복 헤더, 분할 가능 행, 병합 셀, 링크, 테두리, 연속 tagged 시맨틱을 갖춘 표를 스냅샷하고 페이지를 매깁니다
TPdfLayoutDocument.AddCachedNode(Node: TPdfLayoutCachedNode; Height: Single = 0; Width: Single = 0)lazy 노드를 한 번 빌드하고 측정된 플랜을 캐시하며, 하나의 네이티브 Form XObject 템플릿에서 반복 배치를 출력합니다
BeginIncrementalSave(AllowSignedDocument: Boolean = False)안정적인 시맨틱 스냅샷으로 dirty 오브젝트 리비전 세션을 시작하면서 암호화 여부와 무관하게 원본 접두사를 그대로 유지합니다
CommitIncrementalSave(Stream: TStream; out Info: TPdfIncrementalCommitInfo): Boolean변경되거나 새로운 indirect 오브젝트만 추가하고, 암호화 보안 파라미터를 상속하며, 전체 리비전 체인을 검증합니다
CommitIncrementalSave(const FileName: string; out Info: TPdfIncrementalCommitInfo): Boolean같은 디렉터리의 사이드 파일을 통해 영속 flush, 재오픈, 검증, 원자적 교체를 수행하고 실패 시 세션 상태를 되돌립니다
EndIncrementalSave베이스라인과 누적된 리비전 상태를 해제합니다
SaveAsEncrypted(const FileName: string; const Options: TPdfEncryptOptions): Boolean활성 PDF를 AESV3-CBC 또는 ISO/TS 32003 AESV4-GCM 암호화로 저장합니다
SaveAsEncryptedToStream(Stream: TStream; const Options: TPdfEncryptOptions): Boolean디스크 스테이징 없이 암호화된 PDF 출력을 시크 가능한 임의 TStream에 기록합니다
ValidatePdfMac(const Password: AnsiString): TPdfMacValidationResult로드된 원본 소스 바이트와 대조해 ISO/TS 32004 독립 PDF MAC을 검증합니다
SaveAsWithAssociateFiles(const FileName: string; const Options: TAssocFilesOptions): BooleanISO 32000-2 §7.11.4를 준수하도록 associated file을 catalog나 페이지에 주입하면서 활성 PDF를 파일 경로에 저장합니다
SaveAsWithAssociateFilesToStream(Stream: TStream; const Options: TAssocFilesOptions): Boolean디스크 스테이징 없이 associated file이 주입된 PDF 출력을 시크 가능한 임의 TStream에 기록합니다
CompareWith(Other: TPdf; const Options: TPdfDocumentDiffOptions; out Report: TPdfDocumentDiffReport): Boolean페이지 수, 지오메트리, 회전, 추출된 텍스트, 허용 오차를 반영한 렌더링 픽셀을 비교합니다
ImportImposed(const Options: TPdfImpositionOptions; out Plan: TPdfImpositionPlan; out Report: TPdfImpositionExecutionReport): TPdf배치 처리된 네이티브 PDFium 합성으로 N-up 또는 소책자 출력을 만들고 실행 횟수를 보고합니다
ImportPages(Pdf: TPdf; const Range: string; PageNumber: Integer = 1): Boolean다른 PDF 문서에서 페이지를 가져옵니다. 범위 형식: '1,3,5-7'
ImportPreferences(Pdf: TPdf): Boolean다른 PDF에서 뷰어 기본 설정을 가져옵니다

페이지 작업

메서드설명
AddPage(PageNumber: Integer; Width, Height: Double)지정한 1 기반 위치에 주어진 크기(포인트 단위, 72포인트 = 1인치)의 새 페이지를 추가합니다. 0을 전달하면 첫 페이지 삽입의 호환용 별칭으로 받아들이며, 삽입된 페이지가 현재 페이지가 됩니다
DeletePage(PageNumber: Integer)지정한 인덱스의 페이지를 삭제합니다
ExtractThumbnail(PageNumber: Integer): TBitmap활성 페이지를 바꾸지 않고 임의 1 기반 페이지의 내장 축소판을 디코딩합니다
GetPageBox(Box: TPdfPageBox): TPdfRectangle현재 페이지에서 선택한 페이지 딕셔너리 박스를 읽습니다
RemoveObject(Index: Integer; DestroyObject: Boolean = True)현재 페이지에서 페이지 오브젝트를 제거하고 페이지 콘텐츠를 다시 생성합니다
ReloadPage현재 페이지를 다시 로드합니다
SetPageBox(Box: TPdfPageBox; const Rectangle: TPdfRectangle)현재 페이지에 선택한 페이지 딕셔너리 박스를 설정합니다
UpdatePage대기 중인 변경을 현재 페이지에 적용합니다(FPDFPage_GenerateContent 호출)

텍스트 작업

메서드설명
Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WString현재 페이지에서 텍스트를 추출합니다
TextInRectangle(Left, Top, Right, Bottom: Double): WString사각형 영역에서 텍스트를 추출합니다(페이지 좌표)
TextInRectangle(Rectangle: TPdfRectangle): WString사각형에서 텍스트를 추출합니다
ReadTextPageSnapshot(PageNumber: Integer; const Options: TPdfTextSnapshotOptions; out Status: TPdfTextSnapshotStatus): TPdfTextPageSnapshot명시적으로 제한된 네이티브 한 번의 패스로 텍스트, Unicode, 지오메트리, 스타일, 정규화된 텍스트 오브젝트 메타데이터를 수집합니다
TextPageSnapshot[PageNumber: Integer]: TPdfTextPageSnapshot활성 페이지를 바꾸지 않으면서 리비전 인식 텍스트 스냅샷 LRU에서 호출자 소유의 깊은 복사본을 반환합니다
TextSnapshotCacheCapacity, TextSnapshotCacheCount, TextSnapshotCacheHitCount, TextSnapshotCacheMissCount제한된 보존을 구성하고 캐시 점유율, 히트, 미스를 보고합니다
TPdfTextPageSnapshot / TPdfTextSnapshotStatus호출자가 소유하는 텍스트 스냅샷 레코드와 제한된 읽기 상태 모델, 그리고 리비전 인식 LRU 캐시 동작입니다
ReadPageObjectsSnapshot(PageNumber: Integer; const Options: TPdfPageObjectSnapshotOptions; out Status: TPdfPageObjectSnapshotStatus): TPdfPageObjectsSnapshot명시적 예산 안에서 불변 페이지 오브젝트 지오메트리, 스타일, 마크, 클립, 이미지 팩트, 텍스트 팩트를 수집합니다
PageObjectsSnapshot[PageNumber: Integer]: TPdfPageObjectsSnapshot리비전 인식 페이지 오브젝트 스냅샷 LRU에서 호출자 소유의 깊은 복사본을 반환합니다
PageObjectSnapshotCacheCapacity, PageObjectSnapshotCacheCount, PageObjectSnapshotCacheHitCount, PageObjectSnapshotCacheMissCount제한된 페이지 오브젝트 보존을 구성하고 캐시 점유율, 히트, 미스를 보고합니다
TPdfPageObjectsSnapshot / TPdfPageObjectSnapshotStatus호출자가 소유하는 페이지 오브젝트 스냅샷 레코드와 제한된 읽기 상태 모델, 그리고 리비전 인식 LRU 캐시 동작입니다
GetStructuredText(const Options: TPdfStructuredTextOptions): TPdfStructuredTextPage네이티브 문자 지오메트리와 선택적 시맨틱 강화를 갖춘 제한된 페이지·블록·줄·스타일 스팬 모델을 만듭니다
ExtractTables(const Options: TPdfTableExtractionOptions): TPdfTables현재 페이지에서 선 그리기·공백 정렬 표를 병합 셀, 신뢰도, CSV, JSON 출력과 함께 탐지합니다
ExtractDocumentTables(const Options: TPdfTableExtractionOptions): TPdfTables모든 페이지에 걸쳐 제한된 표를 추출하고 일치하는 페이지 간 연속 체인을 표시합니다
BuildReflowDocument(const Options: TPdfReflowOptions; const CancellationToken: IPdfCancellationToken = nil): TPdfReflowDocument제한된 시맨틱 페이지 트리를 만들고 제목, 단락, 목록, 그림, 스팬 인식 표가 있는 반응형 이스케이프 HTML을 출력합니다
ApplyOcrSearchLayer(Provider, Options, Report, CancellationToken): BooleanPDFium으로 선택한 페이지를 렌더링하고 페이지 이미지를 다시 인코딩하지 않으면서 신뢰도 필터를 통과한 보이지 않는 OCR 텍스트를 추가합니다
AddText(const Text, Font: WString; FontSize: Single; X, Y: Double; Color: TColor = clBlack; Alpha: Byte = $FF; Angle: Double = 0.0)지정한 위치에 폰트, 색상, 투명도, 회전 각도를 갖춘 텍스트를 추가합니다
SetText(ObjectIndex: Integer; const Text: WString)기존 텍스트 오브젝트의 텍스트를 설정합니다(문서화되지 않은 PDFium API, 포맷 문제가 생길 수 있음)
SetTextPositions(ObjectIndex: Integer; const Positions: TPdfSingleArray)기존 텍스트 오브젝트에 문자별 위치를 설정합니다. 위치는 두 번째 문자부터 시작하며 텍스트 오브젝트 원점 기준입니다
FindFirst(const Text: WString; Options: TSearchOptions = []; StartIndex: Integer = 0; DirectionUp: Boolean = True): Integer텍스트 검색을 시작합니다. 문자 인덱스를 반환하고 못 찾으면 -1입니다
FindNext: Integer텍스트 검색을 앞으로 계속합니다. 문자 인덱스 또는 -1을 반환합니다
FindPrevious: Integer텍스트 검색을 뒤로 계속합니다. 문자 인덱스 또는 -1을 반환합니다
CreateDocumentSearch(Text, Options, StartPage, Direction, CancellationToken): TPdfDocumentSearch한 페이지 네이티브 핸들 보존, 취소, 매치별 지오메트리를 갖춘 lazy 순방향/역방향 전체 문서 검색을 만듭니다
CharacterIndexAtPos(X, Y, ToleranceX, ToleranceY: Double): Integer페이지 위치의 문자 인덱스를 구합니다
RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): Integer문자 범위의 텍스트 사각형 개수를 구합니다
ReadingUnits: TPdfReadingUnits보조 청취 읽기와 시맨틱 탐색을 위한 문장 수준 reading unit을 반환합니다
DocumentReadingUnits: TPdfReadingUnits문서 전체 readable-content 스트림에 대한 문장 수준 TPdfReadingUnit 레코드를 만듭니다
PageWordBoxes: TPdfWordBoxes단어별 하이라이트를 위한 FTextPage 범위와 페이지 공간 사각형을 갖춘 word box를 반환합니다
SetReadingWord(const Word: TPdfWordBox)하나의 TPdfWordBox를 TPdfView의 현재 읽는 단어로 하이라이트합니다
ClearReadingWordTPdfView의 현재 단어 수준 reading 커서 오버레이를 지웁니다
TrackReadingWordAt(PageNumber, CharIndex: Integer): Integer페이지 문자 오프셋을 포함하는 TPdfWordBox로 매핑하고 하이라이트한 뒤 단어 인덱스를 반환합니다
SelectWordBox(const Word: TPdfWordBox): Boolean하나의 TPdfWordBox가 나타내는 뷰어 텍스트 범위를 선택합니다
SelectWordSpan(const Words: TPdfWordBoxes; StartIndex, EndIndex: Integer): Boolean같은 페이지의 TPdfWordBox 레코드 범위를 하나의 뷰어 텍스트 선택으로 지정합니다
BuildReadingUnits(Fragments)pdfium.dll을 로드하지 않고 TPdfContentFragments를 문장 수준 TPdfReadingUnit 레코드로 변환합니다
NextReadingUnitOfKind(Units, CurrentIndex, Kind, GoForward)Kind가 요청한 TPdfContentFragmentKind와 일치하는 다음/이전 TPdfReadingUnit을 찾습니다
BuildWordBoxes(PageText)페이지 텍스트를 단어 텍스트와 FTextPage 문자 범위를 갖춘 TPdfWordBox 레코드로 분할합니다
WordBoxIndexAtCharIndex(Words, CharIndex)문자 인덱스를 해당 문자를 포함하는 0 기반 TPdfWordBox 인덱스로 되돌려 매핑합니다
SpokenTextAppend(var Spoken: TPdfSpokenText; const SpokenPart: WString; Page, StartIndex: Integer; SourceCount: Integer = -1)매핑된 spoken-text run 하나를 TPdfSpokenText에 추가합니다
BuildSpokenTextFromWords(Words, FirstWord, LastWord)연속된 TPdfWordBox 범위에서 TPdfSpokenText를 만듭니다
SpokenToPageChar(Spoken, SpokenOffset, Page, CharIndex)음성 엔진 문자 오프셋을 PDF 페이지 문자로 되돌려 변환합니다
EstimateSpokenWordIndex(Words, ElapsedMs, WordsPerMinute)음성 엔진이 단어 위치를 보고하지 않을 때 음성 단어 인덱스를 추정합니다

주석 작업

메서드설명
CreateAnnotation(const Annotation: TPdfAnnotation)현재 페이지에 새 주석을 만듭니다
DeleteAnnotation(Index: Integer)지정한 인덱스의 주석을 삭제합니다

폼 평탄화

메서드설명
GenerateFormAppearances모든 페이지의 모든 폼 위젯에 대해 /AP appearance 스트림을 다시 생성합니다(FPDF_FFLDraw). FormField[] 할당 뒤, SaveAs / FlattenPage / FlattenAllPages 전에 호출하세요
FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): Integer현재 페이지의 주석과 폼 위젯을 정적 콘텐츠로 평탄화합니다. FLATTEN_SUCCESS, FLATTEN_NOTHINGTODO, FLATTEN_FAIL 중 하나를 반환합니다
FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean문서의 모든 페이지를 평탄화합니다. 모든 페이지가 성공하면 True를 반환합니다
SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)현재 페이지에서 지정한 주석 인덱스의 폼 필드에 AcroForm 필드 플래그를 설정합니다
SetFormFieldFlagsAt(X, Y: Single; const Flags: TPdfFormFieldFlags)지정한 페이지 좌표의 폼 필드에 AcroForm 필드 플래그를 설정합니다

XFA 작업

v3.125.3 일반 Windows 라이브러리는 마지막 버퍼링 쓰기에 실패하면 저장 실패로 보고해 v3.125.2의 V8 수정과 맞추었습니다. Windows V8 라이브러리는 packet 배열과 지원되는 single-stream XDP 저장에서 편집한 텍스트를 원본 공백과 확장 Unicode까지 보존합니다. v3.126.0부터 지원되는 single-stream XDP는 교체 대상이 아닌 live dataset과 폼 패킷 바깥의 주석과 처리 명령도 유지하며, UTF-8과 BOM 표기 UTF-16 입력도 포함합니다. 잘못된 입력 인코딩, 미완성 태그, 부적절한 entity reference, 잘못된 처리 명령, 교체되는 패킷 안의 주석이나 처리 명령, DTD 선언, XMLDSig는 거부됩니다. 이것은 범위가 한정된 저장 가드이지 완전한 XML 검증기가 아닙니다. 그 밖의 지원되는 패킷과 루트 네임스페이스는 의미론적으로 유지되며, 자의적인 외부 형태 적합성과 바이트 단위 동일한 XML 직렬화는 검증 범위 밖입니다

v3.126.0의 Windows 뷰어 복사·잘라내기·폼 붙여넣기는 UI 메시지를 펌핑하지 않고 100ms로 한정된 클립보드 열기 재시도 예산을 사용합니다. 클립보드 접근이 계속 불가능하면 여전히 실패를 반환하고, 실패한 잘라내기는 기존 필드 텍스트와 선택을 보존합니다

v3.126.1에서 동적 XFA 페이지 추가·제거는 네이티브 이벤트의 증감값을 총합으로 해석하는 대신, 완료된 레이아웃의 실제 총 페이지 수로 TPdf.PageCount와 OnXfaPageCountChanged를 갱신합니다

v3.126.2의 전체 XFA 보기는 기본 텍스트 선택 설정을 안전하게 유지하고, 키보드 입력 중 선택된 필드 텍스트를 교체하며, 동적 레이아웃 콜백이 반환된 뒤 페이지 핸들을 갱신합니다. 읽기 전용 필드와 AllowFormEvents의 입력 제한은 그대로 유지됩니다

v3.126.2 Windows V8 저장 가드는 single-stream XDP를 바꾸기 전에 속성 문법, 중복 속성, qualified name, 네임스페이스 범위, XML 선언을 검사합니다. XML 스키마, DTD, XMLDSig, XML 1.1, 확장 평면 문자 이름은 지원 범위 밖에 남습니다

AnalyzeSignatureRevisions는 페이지 소유권을 위젯 탐색 링크와 분리하고 공유 appearance 페이로드의 페이지 콘텐츠 맥락을 보존해, 이후 페이지 편집이 허용된 폼·주석 변경으로 취급되지 않게 합니다

v3.126.1 Windows V8 라이브러리는 동적 레이아웃이 필드를 옮길 때 로드된 입력 위젯의 지오메트리도 새로 고쳐 텍스트와 네이티브 입력 히트 영역이 새 위치에 정렬되게 합니다. 필수 저장소 픽스처는 네이티브 이벤트로 인스턴스 추가·제거·높이 변경을 검증하며, 자의적인 외부 폼과 포그라운드 뷰어 입력은 별도의 인수 작업으로 남습니다

메서드설명
GetXfaConfigPDF 문서에서 XFA config 패킷의 원본 XML 바이트를 가져옵니다
GetXfaDatasetsPDF 문서에서 원본 XFA datasets XML 바이트를 가져옵니다
GetXfaFormPackets내장된 모든 XFA 패킷을 TXfaPacketList 컬렉션으로 스냅샷합니다
GetXfaPacketByName이름으로 식별한 XFA 패킷의 원본 콘텐츠 바이트를 반환합니다
GetXfaPacketContent주어진 0 기반 인덱스의 XFA 패킷 원본 콘텐츠 바이트를 반환합니다
GetXfaPacketCount문서에 내장된 XFA 패킷 수를 반환합니다
GetXfaPacketName주어진 0 기반 인덱스의 XFA 패킷 이름을 반환합니다
GetXfaTemplatePDF 문서에서 XFA template 패킷의 원본 XML 바이트를 가져옵니다

첨부 작업

메서드설명
CreateAttachment(const Name: WString): Boolean새 빈 첨부를 만듭니다
DeleteAttachment(Index: Integer): Boolean지정한 인덱스의 첨부를 삭제합니다

이미지 작업

메서드설명
AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): Boolean스트림에서 지정한 위치와 크기로 JPEG 이미지를 추가합니다
AddPicture(Picture: TPicture; X, Y: Double)위치에 그림을 추가합니다(원본 크기)
AddPicture(Picture: TPicture; X, Y, Width, Height: Double)위치에 지정한 크기로 그림을 추가합니다
AddImage(const FileName: string; X, Y, Width, Height: Double)이미지 파일을 직접 삽입합니다(임시 TPicture를 통해 AddPicture로 위임). VCL 또는 LCL 그래픽 유닛에 등록된 모든 이미지 형식을 받습니다
AddImage(Bitmap: TBitmap; X, Y, Width, Height: Double)TPicture 중개 없이 pf32bit TBitmap을 직접 삽입합니다. nil 비트맵이면 EPdfError를 발생시킵니다

그리기 작업

메서드설명
CreatePath(X, Y: Single; FillMode; FillColor; FillAlpha; Stroke; StrokeColor; StrokeAlpha; StrokeWidth; LineCap; LineJoin; BlendMode)위치 (X, Y)에서 시작하는 경로를 만듭니다
CreatePath(X, Y, Width, Height: Single; ...)주어진 범위의 사각형 경로를 만듭니다
MoveTo(X, Y: Single)현재 점을 (X, Y)로 이동합니다
LineTo(X, Y: Single)현재 점에서 (X, Y)까지 선을 그립니다
BezierTo(X1, Y1, X2, Y2, X3, Y3: Single)두 개의 제어점과 끝점으로 Bezier 곡선을 그립니다
ClosePath현재 서브패스를 닫습니다
AddPath완성된 경로를 현재 페이지에 추가합니다

렌더링

메서드설명
RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation; Options)페이지를 디바이스 컨텍스트(HDC)에 렌더링합니다
RenderPage(Left, Top, Width, Height: Integer; Rotation; Options; Color): TBitmap페이지를 새 비트맵에 렌더링합니다
RenderPage(Bitmap: TBitmap; Left, Top, Width, Height: Integer; Rotation; Options; Color)페이지를 기존 비트맵에 렌더링합니다
RenderPageByIndex(PageNumber, Width, Height: Integer; Rotation; Options; Color): TBitmap활성 페이지를 바꾸지 않고 파싱된 페이지 장면을 재사용하며 임의 페이지를 정확한 크기로 렌더링합니다
RenderPageSkia(Canvas, Width, Height, DrawFormOverlay)로드된 PDFium 모듈이 Skia를 노출할 때 활성 페이지와 선택적 폼 오버레이를 호출자 소유 SkCanvas에 렌더링합니다
RenderPageSkiaByIndex(Canvas, PageNumber, Width, Height, DrawFormOverlay)활성 페이지를 바꾸지 않고 제한된 파싱 페이지 장면 캐시를 통해 임의 페이지를 Skia로 렌더링합니다
SpotPlates / RenderSpotPlate / PageUsesOverprint / RenderOverprintPreviewcapability 게이트를 통과한 선택적 print-output ABI를 통해 정확한 인쇄 판 또는 overprint 미리보기를 나열하고 렌더링합니다
GetSkiaRenderCapabilities / GetPrintOutputCapabilities선택적 네이티브 렌더링 익스포트를 확인하되 PDFium DLL 로드 요구사항으로 만들지 않습니다
RenderPageThumbnail(PageIndex, MaxWidth, MaxHeight, Rotation, Options, Background, ColorScheme): TBitmapPageNumber를 바꾸지 않고 임의 1 기반 페이지를 호출자 소유 축소판 비트맵으로 렌더링하며, 회전, 플래그, 배경, 저시력 색상을 선택할 수 있습니다
ThumbnailCacheMaxEntries / ThumbnailCacheMaxBytes / ThumbnailCacheStatistics / ClearThumbnailCache내장 및 렌더링 축소판 보존을 항목 수와 픽셀 바이트 상한으로 묶고 LRU 텔레메트리를 살펴봅니다
ClearPageSceneCache사용하지 않는 파싱 페이지 장면을 모두 해제하고, 진행 중인 항목은 렌더링이 끝나면 은퇴시킵니다
RenderPagesParallel(PageNumbers; Options; CancellationToken): TPdfParallelRenderReport하나의 불변 메모리, mapped-file 또는 네이티브 랜덤 액세스 소스를 공유하는 격리된 워커 문서를 통해 여러 1 기반 페이지 요청을 동시에 렌더링합니다
RenderPageBandedToEncoder(Width, Height, BandHeight; Encoder): TPdfBandedImageReport전체 페이지 비트맵을 조립하지 않고 올바르게 클립된 페이지 밴드를 호출자 코덱에 공급합니다
RenderPageBandedToStream(Stream, Width, Height, StreamOptions): TPdfBandedImageReport제한된 밴드 메모리와 선택적 출력 바이트 상한으로 forward-only PNG 또는 TIFF 출력을 기록합니다
RenderDiffOverlay(Other: TPdf; const Difference: TPdfPageDifference; const Options: TPdfDocumentDiffOptions): TBitmapCompareWith가 반환한 TPdfPageDifference 하나를 호출자가 소유하는 오버레이 비트맵으로 렌더링합니다
RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; ...): TBitmap페이지의 타일(일부)을 새 비트맵에 렌더링합니다
RenderTile(Bitmap: TBitmap; Left, Top, Width, Height, PageWidth, PageHeight: Integer; ...)타일을 기존 비트맵에 렌더링합니다
InvertPdfBitmap(Bitmap)렌더링된 32비트 TBitmap의 RGB 채널을 제자리에서 반전해 다크 모드나 고대비 보기에 대응합니다
GrayscalePdfBitmap(Bitmap)렌더링된 32비트 TBitmap을 휘도 그레이스케일로 제자리 변환합니다
DuotonePdfBitmap(Bitmap, DarkColor, LightColor)렌더링된 비트맵 휘도를 호출자가 선택한 어두운/밝은 색으로 제자리 매핑합니다

좌표 변환

메서드설명
DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): Boolean디바이스 좌표를 페이지 좌표로 변환합니다
PageToDevice(PageX, PageY: Double; Left, Top, Width, Height: Integer; Rotation: TRotation; out X, Y: Integer): Boolean페이지 좌표를 디바이스 좌표로 변환합니다

PAdES 전자 서명

메서드설명
PadesCryptoAvailable시스템에서 서명 암호화 백엔드를 사용할 수 있는지 나타냅니다
AnalyzeSignatureRevisions이후 원본 바이트 리비전을 각 서명의 DocMDP·FieldMDP 권한과 대조해 분류합니다
BuildPadesEvidenceReport(Options)네이티브 서명 팩트, 신뢰, 타임스탬프, 정책, DSS/VRI 커버리지, 이후 리비전을 서로 연관 지어 제한된 JSON 또는 CSV 증거로 만듭니다
PreparePadesRemoteSignature(Prepared; Options; out Request)HSM, 클라우드, 중단된 워크플로를 위해 지문 바인딩된 분리 서명 플레이스홀더를 준비하며, seed 값, 인증서, FieldMDP, DocMDP 제약을 선택적으로 붙일 수 있습니다
CompletePadesRemoteSignature(Prepared; Dest; Request; CmsDer)영속화된 원격 서명 세션을 검증하고 반환된 분리 CMS 값으로 채웁니다
SavePadesRemoteSigningRequest(Stream; Request)버전화된 원격 서명 요청을 나중 재개용으로 직렬화합니다
LoadPadesRemoteSigningRequest(Stream)영속화된 원격 서명 요청을 로드하고 검증합니다
RenewPadesArchiveTimestamp(FileName; Options; out Report)이전 서명 리비전을 수정하지 않고 새 아카이브 Document Time-stamp를 추가합니다
RenewPadesArchiveTimestampToStream(Stream; Options; out Report)전체 검증을 마친 뒤 갱신된 B-LTA 체인을 스트림에 기록합니다
SaveAsPadesDss(const FileName: string; const Options: TPadesDssOptions)중복 제거된 PAdES DSS 자료와 서명별 VRI 딕셔너리로 활성 PDF를 저장합니다
SaveAsPadesDssToStream(Stream: TStream; const Options: TPadesDssOptions)중복 제거된 PAdES DSS 자료와 서명별 VRI 딕셔너리로 활성 PDF를 스트림에 저장합니다
SignPades(const FileName: string; const Options: TPadesSignOptions)로컬 인증서 저장소를 사용해 제약이 걸린 승인 또는 인증 PAdES 서명을 추가합니다
SignPadesToStream(Stream: TStream; const Options: TPadesSignOptions)제약이 걸린 승인 또는 인증 PAdES 서명 업데이트를 스트림에 기록합니다
SignPadesWithPdfA(const FileName: string; const Options; PdfAOptions)PDF/A 아카이브 표준을 준수하는 서명된 PAdES PDF 문서를 저장합니다
ValidatePades원본 바이트 PAdES 구조를 검사하고 모호한 필수 키를 거부하며, Contents 토큰 정확 배제를 증명하고, 커버된 리비전, 암호화 상태, ISO/TS 32002 알고리즘 프로필, baseline 레벨, 구조 문제를 보고합니다
ValidatePadesTrust(Options)원본 바이트 서명 무결성, 현재 시스템 신뢰, 선택적 폐기 증거, RFC 3161 타임스탬프 토큰을 검증합니다
ValidatePadesTrustAsync(Options; Reply)단계적 신뢰 검증을 워커 스레드에서 진행률·취소 지원과 함께 실행합니다

TPdf 컴포넌트 속성

게시 속성(디자인 타임)

속성타입설명
Aboutstring컴포넌트 버전 정보(stored False)
ActiveBooleanTrue로 설정하면 문서를 로드/활성화하고 False이면 닫습니다
FileNamestring로드할 PDF 파일 경로입니다
FormFillBooleanJavaScript 지원과 함께 대화형 폼 채우기를 활성화합니다(기본값 True)
PageNumberInteger현재 페이지 번호(1 기반, 문서가 로드되지 않으면 0)
Passwordstring암호화된 PDF 문서를 여는 비밀번호입니다

문서 속성

속성타입R/W설명
AuthorWStringR문서 작성자입니다
CompressedBooleanR/WTrue(기본값)이면 SaveAs가 출력을 후처리해 모든 스트림이 FlateDecode로 압축되도록 보장합니다
CreationDateWStringR문서 생성 날짜 메타데이터입니다
CreatorWStringR문서를 만든 애플리케이션입니다
DocumentFPDF_DOCUMENTR저수준 PDFium 문서 핸들입니다
FileIdentifier[IDType: TPdfFileIdentifierType]TBytesRPDFium 종료 바이트를 제외한 영구 또는 변경 trailer 파일 식별자 바이트입니다
FormTypeTPdfFormTypeR폼 타입: ftNone, ftAcroForm, ftXFAFull, ftXFAForeground
IsTaggedBooleanR문서가 tagged PDF이면 True입니다
JavaScriptAction[Index]TPdfJavaScriptActionR0 기반 인덱스의 문서 수준 JavaScript name-tree 액션입니다
JavaScriptActionCountIntegerR문서 수준 JavaScript name-tree 액션 수입니다
JavaScriptActionsTPdfJavaScriptActionsR모든 문서 수준 JavaScript name-tree 액션입니다
KeywordsWStringR문서 키워드입니다
LanguageWStringR/W문서 catalog 언어(/Lang)입니다
StructureElementsTPdfStructureElementsR공유 스냅샷 캐시를 통한 현재 페이지의 평탄화된 논리 구조 요소입니다
StructureElementsForPage[PageNumber]TPdfStructureElementsR활성 페이지를 바꾸지 않고 임의 1 기반 페이지의 호출자 소유 캐시 구조 스냅샷입니다
StructureCacheCapacityIntegerR/WLRU 캐시가 보유하는 완전한 페이지 구조 스냅샷 최대 개수입니다
StructureCacheCountIntegerR현재 캐시된 페이지 구조 스냅샷 수입니다
StructureCacheHitCount / StructureCacheMissCountInt64R이 컴포넌트 인스턴스의 누적 구조 스냅샷 캐시 텔레메트리입니다
MetaText[const Tag: string]WStringR태그 이름으로 조회한 임의 메타데이터 값입니다
MetadataTPdfDocumentMetadataR여덟 개의 표준 Info 딕셔너리 메타데이터 필드를 담은 하나의 스냅샷입니다
ModifiedDateWStringR마지막 수정 날짜 메타데이터입니다
PageCountIntegerR전체 페이지 수입니다
PdfVersionTPdfVersionR유효한 catalog /Version 재정의가 있으면 포함한 실효 PDF 버전입니다
PermissionsLongWordR문서 권한 플래그입니다
GrantedPermissionsTPdfPermissionsRPermissions에서 디코딩한 타입화된 owner password 권한 집합입니다
PrintCopiesIntegerR지정된 인쇄 매수입니다
PrintPageRangesTPdfPrintPageRangesR뷰어 기본 설정의 1 기반 인쇄 페이지 범위입니다
PrintPaperHandlingTPrintPaperHandlingR용지 처리 기본 설정입니다
PrintScalingBooleanR인쇄 배율 조정이 활성화되어 있는지 여부입니다
ProducerWStringRPDF 생산자 애플리케이션입니다
SubjectWStringR문서 주제입니다
TitleWStringR문서 제목입니다
UserPermissionsLongWordR사용자 수준 권한입니다
UserGrantedPermissionsTPdfPermissionsRUserPermissions에서 디코딩한 타입화된 user password 권한 집합입니다
ViewerPreference[const Key: string]WStringR키별 뷰어 기본 설정 값입니다
XFABooleanR문서에 XFA 폼이 있으면 True입니다

페이지 속성

속성타입R/W설명
PageFPDF_PAGER저수준 PDFium 페이지 핸들입니다
PageBoundsTPdfRectangleR현재 페이지의 경계 사각형입니다
PageComplexityTPdfPageComplexityR현재 페이지의 네이티브 오브젝트, 세그먼트, 이미지 픽셀, 투명성 팩트입니다
PageBox[Box: TPdfPageBox]TPdfRectangleR/W현재 페이지의 MediaBox, CropBox, BleedBox, TrimBox 또는 ArtBox입니다
PageHeightDoubleR현재 페이지 높이(포인트)입니다
PageLabel[PageNumber: Integer]WStringR주어진 페이지 번호의 페이지 레이블입니다
PageModeTPageModeR문서가 열릴 때 표시되는 방식입니다
PageRotationTRotationR/W현재 페이지의 회전(ro0, ro90, ro180, ro270)입니다
PageWidthDoubleR현재 페이지 너비(포인트)입니다
ThumbnailTBitmapR현재 페이지의 축소판 비트맵입니다
TransparentBooleanR현재 페이지에 투명 콘텐츠가 있으면 True입니다

텍스트 및 문자 속성

속성타입설명
Character[Index]WideChar인덱스의 Unicode 문자입니다
CharacterAngle[Index]Single문자 회전 각도(라디안)입니다
CharacterCountInteger현재 페이지의 문자 수입니다
CharacterFontSize[Index]Double인덱스 문자의 폰트 크기입니다. FontSize[Index]는 호환 별칭으로 남습니다
CharacterFontWeight[Index]Integer인덱스 문자의 폰트 굵기입니다
CharacterGenerated[Index]Boolean문자가 생성된 것이면 True입니다(원본 콘텐츠에서 온 게 아님)
CharacterIsHyphen[Index]Boolean문자가 하이픈이면 True입니다
CharacterMapError[Index]Boolean문자에 매핑 오류가 있으면 True입니다
CharacterOrigin[Index]TPdfPoint문자의 원점 좌표입니다
CharacterRectangle[Index]TPdfRectangle문자의 경계 사각형입니다
Charcode[Index]WideChar인덱스의 문자 코드입니다
FindFPDF_SCHHANDLE저수준 PDFium 검색 핸들입니다
Rectangle[Index]TPdfRectangle마지막 RectangleCount 호출의 텍스트 사각형입니다
TextPageFPDF_TEXTPAGE저수준 PDFium 텍스트 페이지 핸들입니다

글꼴 속성

속성타입설명
FontAscent[Index; FontSize]Single인덱스 텍스트 오브젝트가 쓰는 폰트의 어센트입니다
FontBaseName[Index]WString인덱스 텍스트 오브젝트의 베이스 폰트 이름입니다
FontData[Index]TBytes인덱스 텍스트 오브젝트의 원본 폰트 데이터입니다
FontDescent[Index; FontSize]Single인덱스 텍스트 오브젝트가 쓰는 폰트의 디센트입니다
FontFamilyName[Index]WString인덱스 텍스트 오브젝트의 폰트 패밀리 이름입니다
FontHandle[Index]FPDF_FONT인덱스 텍스트 오브젝트의 저수준 PDFium 폰트 핸들입니다
FontIsEmbedded[Index]Boolean텍스트 오브젝트의 폰트가 PDF에 임베드되어 있으면 True입니다
FontItalicAngle[Index]Integer텍스트 오브젝트 폰트의 이탤릭 각도입니다
FontSize[Index]DoubleCharacterFontSize[Index]의 하위 호환 별칭입니다
FontWeight[Index]Integer텍스트 오브젝트 폰트의 굵기입니다(예: 400 = 보통, 700 = 굵게)

객체 속성

속성타입설명
ObjectCountInteger페이지 오브젝트 수입니다
ObjectType[Index]TObjectType타입: otUnknown, otText, otPath, otImage, otShading, otForm
ObjectBounds[Index]TPdfRectangle오브젝트의 경계 사각형입니다
ObjectBitmap[Index]TBitmap오브젝트의 비트맵 표현입니다
ObjectHandle[Index]Pointer저수준 오브젝트 핸들입니다
ObjectTransparent[Index]Boolean오브젝트가 투명하면 True입니다

이미지 속성

속성타입설명
Bitmap[Index]TBitmap인덱스 페이지 오브젝트의 비트맵입니다
BitmapCountInteger페이지의 비트맵 오브젝트 수입니다
Image[Index]TPdfImage인덱스의 이미지 데이터(Width, Height, Data)입니다
ImageInfo[Index]TPdfImageInfo페이로드 바이트를 복사하지 않으면서 크기, 필터, DPI, 비트 깊이, 색 공간, marked-content ID, ICC 팩트를 가볍게 제공합니다
ImageCountInteger페이지의 이미지 수입니다

주석 속성

속성타입R/W설명
Annotation[Index]TPdfAnnotationR/W인덱스의 주석을 가져오거나 설정합니다
AnnotationCountIntegerR현재 페이지의 주석 수입니다

폼 속성

속성타입R/W설명
FormField[Index]WStringR/W인덱스의 폼 필드 값입니다
FormFieldAt[X, Y: Single]WStringR/W페이지 위치의 폼 필드 값입니다
FormFieldCountIntegerR현재 페이지의 폼 필드 수입니다
FormFieldInfo[Index]TPdfFormFieldInfoR인덱스의 폼 필드 정보입니다
FormFieldInfoAt[X, Y: Single]TPdfFormFieldInfoR페이지 위치의 폼 필드 정보입니다
FormFieldTypeAtPoint(X, Y: Double; out FieldType)BooleanR주석 핸들을 할당하지 않고 페이지 지점의 네이티브 필드 타입을 반환합니다
FocusedFormFieldValue()WStringR대화형 캐럿에 의존하지 않고 FocusedFormFieldIndex로 현재 논리 폼 필드 값을 반환합니다
FocusedFormFieldName()WStringR현재 논리 폼 필드 표시 이름을 반환하며, AlternateName을 우선하고 Name으로 대체합니다
FocusedFormFieldDetails()TPdfFormFieldInfoR현재 논리 폼 필드의 TPdfFormFieldInfo를 반환합니다
FormHandleFPDF_FORMHANDLER저수준 폼 채우기 핸들입니다
HasFormFieldAt[X, Y: Single]BooleanR해당 위치에 폼 필드가 있으면 True입니다

첨부 속성

속성타입R/W설명
Attachment[Index]TBytesR/W인덱스의 첨부 데이터입니다
AttachmentCountIntegerR첨부 수입니다
AttachmentName[Index]WStringR인덱스의 첨부 파일 이름입니다
AttachmentType[Index]WStringR인덱스의 첨부 MIME 서브타입입니다

탐색 속성

속성타입설명
Bookmark[const Title: WString]TBookmark제목으로 북마크를 찾으며, 대상, 액션, 열림 상태, 자손 수, 경로, 색상 메타데이터를 포함합니다
BookmarkChildren[const Bookmark: TBookmark]TBookmarks북마크의 자식 북마크입니다
BookmarkFrom[Handle: FPDF_BOOKMARK]TBookmark핸들에서 가져온 북마크 데이터입니다
BookmarksTBookmarks최상위 북마크 배열입니다
Destination[Index]TDestination인덱스의 이름 붙은 대상으로, 뷰 모드와 원본 뷰 파라미터를 포함합니다
DestinationByName[const Name: WString]TDestination이름으로 찾은 이름 붙은 대상입니다
DestinationCountInteger이름 붙은 대상 수입니다
HasBookmarkChildren[const Bookmark: TBookmark]Boolean북마크에 자식이 있으면 True입니다
LinkAnnotation[PageNumber, Index]TLinkAnnotation주어진 페이지의 링크 주석입니다
LinkAnnotationCount[PageNumber]Integer페이지의 링크 주석 수입니다
WebLink[PageNumber, Index]TWebLink주어진 페이지의 웹 링크(URL)입니다
WebLinkCount[PageNumber]Integer페이지의 웹 링크 수입니다

전자 서명 속성

속성타입설명
Signature[Index]TPdfSignature인덱스의 전자 서명 정보입니다
SignatureCountInteger문서의 전자 서명 수입니다
SignaturesTPdfSignatures모든 네이티브 전자 서명의 호출자 소유 스냅샷입니다

TPdf 이벤트

이벤트타입설명
OnFormFieldEnterTPdfFormFieldEnterEvent폼 필드에 진입할 때 발생합니다. 파라미터: Sender: TObject; const Text: WString
OnFormFieldExitTNotifyEvent포커스가 폼 필드를 벗어날 때 발생합니다
OnJavaScriptAlertTPdfJavaScriptAlertEventPDF 내장 JavaScript가 app.alert를 호출해 메시지 박스를 표시할 때 발생합니다
OnJavaScriptBeepTPdfJavaScriptBeepEventPDF 내장 JavaScript가 app.beep를 호출해 시스템 사운드를 재생할 때 발생합니다
OnJavaScriptMailTPdfJavaScriptMailEventPDF 내장 JavaScript가 mailDoc 또는 app.mailMsg를 호출해 메일 메시지를 작성할 때 발생합니다
OnJavaScriptPrintTPdfJavaScriptPrintEventPDF 내장 JavaScript가 print를 호출해 인쇄 작업을 시작할 때 발생합니다
OnJavaScriptResponseTPdfJavaScriptResponseEventPDF 내장 JavaScript 액션이 사용자 상호작용을 요청할 때 발생합니다
OnJavaScriptSubmitFormTPdfJavaScriptSubmitFormEventPDF 내장 JavaScript가 폼을 URL로 제출할 때 발생합니다
OnNamedActionTPdfNamedActionEvent문서가 named action을 일으킬 때 발생합니다. Handled를 설정하면 네 가지 표준 탐색 이름을 대신 처리합니다
OnPageChangeTNotifyEvent현재 페이지가 바뀔 때 발생합니다
OnUnsupportedFeatureTPdfUnsupportedFeatureEventPDF가 지원하지 않는 기능을 담고 있을 때 발생합니다
OnXfaEmailTPdfXfaEmailEvent동적 XFA 폼이 이메일 액션을 요청할 때 발생합니다
OnXfaFocusChangeTPdfXfaFocusChangeEvent동적 XFA 폼 안에서 포커스 필드가 바뀔 때 발생합니다
OnXfaGotoUrlTPdfXfaGotoUrlEvent동적 XFA 폼 안에서 링크 URL을 탐색할 때 발생합니다
OnXfaHttpRequestTPdfXfaHttpRequestEvent동적 XFA 폼이 HTTP 요청을 보낼 때 발생합니다
OnXfaOpenFileTPdfXfaOpenFileEvent동적 XFA 폼이 외부 파일 열기를 요청할 때 발생합니다
OnXfaPageCountChangedTPdfXfaPageCountChangedEvent동적 XFA 폼의 페이지 수가 런타임에 바뀔 때 발생합니다
OnXfaRuntimeMissingTNotifyEventXFA 문서가 열렸지만 XFA 런타임을 사용할 수 없을 때 발생합니다
OnXfaUriActionTPdfXfaUriActionEvent동적 XFA 컨텍스트 안에서 링크 URI 액션이 트리거될 때 발생합니다
OnFormCursorTPdfFormCursorEvent폼 필드가 커서 모양을 요청할 때 발생합니다. Handled를 설정하면 네이티브 커서를 대신합니다
OnFormValueChangeTPdfFormValueChangeEvent포커스된 폼 필드의 값이 바뀐 뒤 발생합니다
OnFormUriActionTPdfFormUriActionEvent폼 필드가 URI 액션을 일으킬 때 발생합니다. Handled를 설정하면 네이티브 탐색을 막습니다
OnFormGoToActionTPdfFormGoToActionEvent폼 필드가 페이지, 확대 모드, 위치를 담은 go-to 액션을 일으킬 때 발생합니다. Handled를 설정하면 직접 탐색합니다
OnFormSelectionRectTPdfFormSelectionRectEvent폼 레이어가 포커스 필드의 선택 사각형 하나를 보고할 때 발생합니다

기타 공개 메서드 및 속성

API설명
function AnalyzeSignatureRevisions: TPadesRevisionAnalysisReport모든 내장 서명에 대해 원본 리비전 체인을 재구성하고 이후 오브젝트 변경을 분류합니다
function BuildPadesEvidenceReport(const Options: TPadesEvidenceReportOptions): TPadesEvidenceReport보관된 원본 바이트 캡처 하나에서 내보낼 수 있는 다중 서명 증거를 만듭니다
property About: stringTPdf의 PDFium Delphi Component 컴포넌트 버전 정보를 보고합니다
Active선택한 PDF 문서를 열거나 닫습니다
function AddAnnotationFileAttachment(AnnotIndex: Integer; const Name: WString; const FileData: TBytes): Boolean기존 주석에 내장 파일을 붙이고 한 번의 호출로 내용을 기록합니다
procedure AddImage(const FileName: string; X, Y, Width, Height: Double)파일에서 이미지를 현재 PDF 페이지에 삽입합니다. 내부적으로 TPicture.LoadFromFile을 사용하므로 VCL 또는 LCL 그래픽 유닛에 등록된 모든 이미지 형식(BMP, Vcl.Imaging.PngImage / LCL TPortableNetworkGraphic을 통한 PNG, JPG 등)을 받습니다. 좌표는 PDF 사용자 공간 기준(원점은 페이지 왼쪽 아래)이며, Width와 Height는 원본 이미지 픽셀 크기가 아니라 사용자 단위의 배치 크기입니다
function AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): Boolean지정한 좌표로 현재 PDF 페이지에 JPEG 이미지를 추가합니다
procedure AddPage(PageNumber: Integer; Width, Height: Double)주어진 크기(포인트)의 새 빈 페이지를 만듭니다
AddPath쌓인 MoveTo/LineTo/BezierTo 경로를 요청한 칠 속성으로 새 페이지 오브젝트로 커밋합니다
procedure AddPathToAnnotation(Index: Integer)대기 중인 CreatePath 경로를 페이지 콘텐츠 대신 잉크 또는 스탬프 주석에 넘깁니다
procedure AddPicture(Picture: TPicture; X, Y: Double)지정한 좌표로 현재 PDF 페이지에 그림을 추가합니다
function AddPageObjectMark(Index: Integer; const Name: AnsiString; const Params: TPdfContentMarkParams): Integer페이지 오브젝트에 marked-content 항목과 초기 타입 속성 목록을 추가합니다
PageObjectInfo / AnnotationObjectInfo / PageObjectMarks / PathInfo / TransformPageObject / RenderPageWithMatrix고급 페이지 콘텐츠 및 주석 오브젝트 검사, 마크, 경로, 변환, 텍스트 메트릭을 한 개의 개요 페이지에 모은 것입니다
function SharePageObjectMark(TargetIndex, SourceIndex, SourceMarkIndex: Integer): Boolean네이티브 marked-content 속성 마크 하나를 다른 페이지 오브젝트에서 재사용합니다
function AddShapedText(const Text, Font: WString; FontSize: Single; X, Y: Double; out Shaped: TPdfShapedText; Direction: TPdfTextDirection = ptdAuto; Color: TColor = clBlack; Alpha: Byte = $FF): Booleanbidi와 복합 스크립트 실행을 ToUnicode와 논리 ActualText 시맨틱을 갖춘 위치 지정된 CID Type 2 글리프로 셰이핑합니다
procedure AddStandardFontText(const Text: WString; StandardFont: TPdfStandardFont; FontSize: Single; X, Y: Double; Color: TColor; Alpha: Byte; Angle: Double = 0.0)14개 표준 PDF 폰트 중 하나로 텍스트를 그리며 폰트 프로그램은 임베드하지 않습니다
function AddCidType2Text(const FontData: TBytes; const Glyphs: TPdfCidGlyphs; FontSize: Single; X, Y: Double; const Options: TPdfCidFontOptions; out Report: TPdfCidFontReport; Color: TColor = clBlack; Alpha: Byte = $FF): Boolean명시적 Unicode 매핑, 선택적 TrueType 서브셋팅, 통제된 fallback, 추출 검증과 함께 위치 지정된 CID Type 2 글리프를 임베드합니다
procedure AddText(const Text, Font: WString; FontSize: Single; X, Y: Double; Color: TColor = clBlack; Alpha: Byte = $FF; Angle: Double = 0.0)지정한 위치에 현재 PDF 페이지로 텍스트를 추가합니다
Annotation인덱스 속성 — 현재 페이지에서 주어진 인덱스의 주석 레코드(subtype, rect, 색상, contents 등)를 반환합니다
AnnotationCount현재 활성 페이지에 붙은 주석 오브젝트 수입니다
function AnnotationObjectCount(Index: Integer): Integer잉크 또는 스탬프 주석이 자신을 그리는 페이지 오브젝트 수를 셉니다
function AnnotationObjectInfo(Index, ObjectIndex: Integer): TPdfPageObjectInfo주석이 소유한 한 페이지 오브젝트의 타입, 경계, 행렬, 색상, 선 스타일을 읽습니다
property Attachment[Index: Integer]: TBytes지정한 0 기반 인덱스의 문서 수준 내장 파일 원본 바이트 페이로드를 읽거나 교체합니다. 각 슬롯은 PDF 1.7 사양 7.11절에 정의된 PDF EmbeddedFiles name tree의 항목 하나에 대응합니다
AttachmentCount문서에 선언된 내장 파일 첨부 수입니다
property AttachmentDescription[Index: Integer]: WString문서 수준 내장 파일의 /Desc 설명을 읽거나 씁니다
function AttachmentHasKey(Index: Integer; const Key: WString): Boolean내장 첨부가 주어진 file-specification 키를 갖는지 검사합니다
AttachmentName문서 EmbeddedFiles name tree에서 주어진 0 기반 인덱스의 내장 파일에 등록된 Unicode 파일 이름을 반환합니다
property AttachmentRelationship[Index: Integer]: WString문서 수준 내장 파일의 /AFRelationship 이름(ISO 32000-2 Table 43)을 반환하고, 없으면 빈 문자열을 반환합니다
AttachmentType지정한 0 기반 인덱스의 내장 파일에 등록된 MIME / 서브타입 문자열을 반환합니다. 값은 PDF 7.11.3절에 정의된 file specification 딕셔너리의 /Subtype 항목에서 가져옵니다
AuthorPDF 문서 정보 딕셔너리의 /Author 항목 값을 반환합니다
BezierTo현재 점에서 제어점 (X1,Y1), (X2,Y2)를 지나 (X3,Y3)까지 3차 Bezier 곡선을 추가합니다
Bitmap현재 페이지에서 지정한 이미지 오브젝트의 래스터 데이터를 담은 새로 디코딩된 VCL TBitmap을 반환합니다. 비트맵은 호출할 때마다 새로 할당되며 호출자가 소유하고 Free 호출이 책임입니다
BitmapCount활성 페이지의 이미지 페이지 오브젝트 수이며 VCL TBitmap으로 접근할 수 있습니다
Bookmark제목 문자열로 북마크를 찾아 PDF 12.3.3절에 정의된 문서 outline 트리에서 일치하는 TBookmark 레코드를 반환합니다
BookmarkChildren인덱스 속성 — 주어진 부모 북마크 노드의 바로 아래 자식 북마크를 반환합니다
BookmarkFrom원본 FPDF_BOOKMARK 핸들을 해당 outline 노드의 제목, 대상 페이지, 액션 메타데이터를 읽어 완전히 채워진 TBookmark 레코드로 변환합니다
Bookmarks인덱스 속성 — 문서의 최상위 outline(북마크) 항목 전체 목록을 반환합니다
Character주어진 인덱스 문자의 UTF-16 문자열 형태에 대한 읽기 전용 인덱스 접근입니다(보통 코드 유닛 하나, 서러게이트 쌍이면 둘)
CharacterAngle페이지 CTM을 반영한 문자 회전 각도(라디안)에 대한 읽기 전용 인덱스 접근입니다
CharacterCount현재 활성 페이지에서 추출 가능한 문자 수입니다
CharacterFontSize문자를 렌더링하는 실효 폰트 크기(CTM 스케일링 뒤의 PDF 포인트)에 대한 읽기 전용 인덱스 접근입니다
CharacterFontWeight사용된 폰트의 OS/2 usWeightClass 값(100 = Thin, 400 = Regular, 700 = Bold, 900 = Black)에 대한 읽기 전용 인덱스 접근입니다
CharacterGenerated지정한 인덱스의 문자가 페이지 콘텐츠 스트림에 명시적으로 그려진 게 아니라 텍스트 추출 중 PDFium이 합성한 것이면 True를 반환합니다. 합성 문자는 합자 확장, 소프트 하이픈, 단어/줄 경계 휴리스틱 때문에 출력되며, 덕분에 검색과 전체 선택 결과가 자연스럽게 읽힙니다
function CharacterIndexToTextIndex(Index: Integer): Integer문자 인덱스를 추출된 텍스트에서의 오프셋으로 매핑하고, 생성된 문자는 -1입니다
function CharacterInfo(Index: Integer): TPdfCharacterInfo한 문자의 색상, 폰트 이름·플래그, 느슨한 경계, 행렬, 소유 텍스트 오브젝트를 읽습니다
function CharacterIndexAtPos(X, Y, ToleranceX, ToleranceY: Double): Integer페이지의 특정 위치에 있거나 근처인 문자의 인덱스를 구합니다. 해당 지점에 문자가 없으면 -1을 반환하고 오류가 발생하면 -3을 반환합니다
CharacterIsHyphen지정한 인덱스의 문자가 줄 끝 단어 분리에 쓰이는 소프트 하이픈으로 인식되면 True를 반환합니다. 보이는 하이픈 표시를 남기지 않으면서 줄바꿈에 걸친 단어를 재구성할 때 유용합니다
CharacterMapError지정한 인덱스의 문자를 유효한 Unicode 코드 포인트로 매핑하지 못했으면 True를 반환합니다. 이 플래그는 PDFium 텍스트 추출기가 문자별로 보고하며, 근원 폰트에 쓸 만한 ToUnicode CMap이나 인코딩 벡터가 없어 코드 포인트가 틀릴 수 있음을 식별하게 해줍니다
CharacterOriginPDF 사용자 공간 포인트 단위 문자 원점(베이스라인 왼쪽 앵커)에 대한 읽기 전용 인덱스 접근입니다
CharacterRectanglePDF 사용자 공간 좌표(원점 왼쪽 아래, 포인트)의 문자 경계 사각형에 대한 읽기 전용 인덱스 접근입니다
Charcode주어진 인덱스 문자의 Unicode 코드 포인트(UCS-4)에 대한 읽기 전용 인덱스 접근입니다
function ChooseRenderFlags(Scale: Double; DestWidth, DestHeight: Integer): Integer최종 배율과 대상 크기에서 적응형 이미지 서브샘플링을 위한 네이티브 FPDF_RENDER_* 플래그를 고릅니다
procedure ClearFormFieldFocus키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
procedure ClearPageSceneCache활성 페이지를 바꾸지 않고 캐시된 파싱 페이지 장면을 지웁니다
procedure ClearThumbnailCache캐시 한도나 텔레메트리를 바꾸지 않으면서 보관된 내장·렌더링 축소판 비트맵을 해제합니다
ClosePath가장 최근 MoveTo로 직선을 그어 현재 서브패스를 닫습니다
CompressedSaveAs / Save 호출 시 출력 PDF의 스트림을 FlateDecode 압축할지 제어합니다. 저장 후 압축 엔진은 직렬화된 PDF를 스캔해 압축되지 않은 스트림을 zlib-deflate 등가물로 바꾸고 xref 테이블을 다시 만듭니다. 이미 압축된 스트림은 그대로 통과합니다
constructor Create(AOwner: TComponent); overrideTPdf 컴포넌트를 만들고 문서, 렌더링, 폼, 캐시 상태를 초기화합니다
procedure CreateAnnotation(const Annotation: TPdfAnnotation)새 주석을 만듭니다
CreateAttachment문서 수준에서 새 내장 파일(첨부)을 추가합니다
procedure CreateDocument현재 문서를 닫고(있다면) 완전히 새로운 빈 PDF를 시작합니다
procedure CreatePath(X, Y: Single; FillMode: TPdfFillMode = fmNone; FillColor: TColor = clBlack; FillAlpha: Byte = $FF; Stroke: Boolean = True; StrokeColor: TColor = clBlack; StrokeAlpha: Byte = $FF; StrokeWidth: Single = 1.0; LineCap: TPdfLineCap = lcDefault; LineJoin: TPdfLineJoin = ljDefault; BlendMode: TPdfBlendMode = bmDefault)초기 위치에 새 경로 오브젝트를 만듭니다
CreateXObjectFromPage다른 TPdf의 페이지를 이 문서에 몇 번이든 찍을 수 있는 재사용 가능한 Form XObject 핸들로 감쌉니다
CreationDate문서 Info 딕셔너리의 원본 생성 타임스탬프입니다
CreatorInfo 딕셔너리에 저장된 원저작 애플리케이션 이름입니다
property CrossReferenceTableValid: Boolean로드된 문서가 온전한 cross-reference 테이블을 갖는지 보고합니다
DeleteAnnotation현재 페이지에서 주어진 인덱스의 주석을 제거합니다
function DeleteAttachment(Index: Integer): Boolean주어진 인덱스의 내장 파일 첨부를 제거합니다
procedure DeletePage(PageNumber: Integer)문서에서 PageIndex 위치의 페이지를 제거합니다
Destination지정한 0 기반 인덱스의 이름 붙은 대상에 대한 TDestination 레코드를 반환합니다. 이름 붙은 대상은 PDF 12.3.2절에 설명된 문서 catalog Dests / Names 트리 아래에 정의된 indirect 대상입니다
DestinationByName문자열 이름으로 /Names 대상을 찾아 대상 페이지 / fit 타입 / 좌표를 반환합니다
DestinationCount문서에 선언된 이름 붙은 대상 수입니다
function DetectPageSkew(out Report: TPdfSkewReport): Boolean현재 페이지의 기울기를 신뢰도 값과 함께 약 0.1도 정밀도로 측정합니다
destructor Destroy; overrideTPdf가 파괴되기 전에 문서 핸들, 폼 상태, 캐시된 폰트, 스트림, 타이머를 해제합니다
ExportXFDF중첩 필드 경로와 없음·명시적 빈 값의 구분을 보존하면서 폼 필드와 주석을 UTF-8 XFDF로 직렬화합니다
function ExportXFDFToStream(Stream: TStream): Integer문서의 모든 폼 값과 주석을 XFDF로 스트림에 기록합니다
function ExtractAttachmentsToStreams(const Destinations: array of TStream; const Options: TPdfAttachmentBatchOptions; out Report: TPdfAttachmentBatchReport; const CancellationToken: IPdfCancellationToken = nil): Boolean개수·바이트 예산 안에서 취소와 항목별 결과를 갖추고 디코딩된 첨부를 호출자 소유 스트림에 기록합니다
TPdfAttachmentBatchOptions / TPdfAttachmentBatchReport호출자가 소유하는 메타데이터 열거와 페이로드 추출을 위한 제한된 1-pass 첨부 배치 모델입니다
ExtractThumbnail(PageNumber: Integer): TBitmap활성 페이지를 전환하거나 다시 로드하지 않고 내장 페이지 축소판을 디코딩합니다
function DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): Boolean점의 화면 좌표를 페이지 좌표로 변환합니다
property Document직접 저수준 접근을 위한 네이티브 PDFium FPDF_DOCUMENT 핸들입니다
function DocumentReadableContent: TPdfContentFragments스크린 리더, TTS, 접근성 워크플로를 위한 시맨틱 readable content 프래그먼트를 반환합니다
function DocumentReadingUnits: TPdfReadingUnits문서 전체 readable-content 스트림에 대한 문장 수준 TPdfReadingUnit 레코드를 만듭니다
FileIdentifier읽기 전용 플래그 — 요청한 식별자 슬롯의 문서 파일 식별자 배열을 반환합니다
property FileName열 PDF 경로입니다. Active 상태에서 대입하면 새 경로에서 다시 로드합니다
FindPageNum부터(-1이면 현재 페이지) Pattern을 검색하고 첫 매치의 전역 문자 인덱스를 반환합니다
function FindFirst(const Text: WString; Options: TSearchOptions = []; StartIndex: Integer = 0; DirectionUp: Boolean = True): Integer지정한 텍스트 검색을 시작합니다. StartIndex는 0 기반이고 -1은 페이지 끝입니다. DirectionUp 파라미터가 검색 방향을 결정합니다
function FindNext진행 중인 Find 세션의 커서를 전진시키고 다음 매치 문자 인덱스를 반환합니다
function FindPreviousFind 커서를 매치 하나만큼 되돌립니다
function CreateDocumentSearch호출마다 매치 하나와 그 페이지 공간 사각형을 반환하는 lazy 문서 전체 검색을 만듭니다
function FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean문서의 모든 페이지를 평탄화하는 편의 래퍼입니다. 모든 페이지가 FLATTEN_SUCCESS 또는 FLATTEN_NOTHINGTODO로 끝나면 True를 반환합니다. 권장 워크플로: GenerateFormAppearances → FlattenAllPages → SaveAs
function FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): Integer현재 페이지의 주석과 폼 위젯을 영구(편집 불가) 페이지 콘텐츠로 평탄화합니다. nFlag로 평탄화 프로필을 고릅니다: 화면 표시는 FLAT_NORMALDISPLAY(0), 인쇄 출력은 FLAT_PRINT(1). FLATTEN_SUCCESS, FLATTEN_NOTHINGTODO, FLATTEN_FAIL 중 하나를 반환합니다. 채워진 폼 값을 평탄화할 때는 먼저 GenerateFormAppearances를 호출하세요
FlattenPageRotation모든 페이지의 현재 /Rotate를 콘텐츠 스트림, 페이지 박스, 주석 사각형에 구워 넣고 /Rotate를 0으로 되돌려, 회전 표시 힌트에 의존하지 않고도 시각 레이아웃이 유지되게 합니다
function FocusedFormFieldDetails: TPdfFormFieldInfo현재 논리 폼 필드의 TPdfFormFieldInfo를 반환합니다
function FocusedFormFieldIndex: Integer키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusedFormFieldName: WString현재 논리 폼 필드 표시 이름을 반환하며, AlternateName을 우선하고 Name으로 대체합니다
function FocusedFormFieldText: WString키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusedFormFieldTextDirection: TPdfFormTextDirectionPDFium FORM_GetTextDirection 익스포트를 통해 포커스 위젯의 메모리 내 텍스트 방향을 읽습니다
function FocusedFormOptionSelected(Index: Integer): Boolean포커스된 리스트 또는 콤보 박스의 옵션 하나가 선택되어 있는지 보고합니다
function FocusedFormFieldValue: WString대화형 캐럿에 의존하지 않고 FocusedFormFieldIndex로 현재 논리 폼 필드 값을 반환합니다
function FocusFormField(Index: Integer): Boolean키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusNextFormField: Integer키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusPreviousFormField: Integer키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
FontAscent페이지 오브젝트 폰트의 어센트(베이스라인에서 가장 높은 어센더까지 거리)를 PDF 포인트로 표현하고 호출자가 준 폰트 크기로 스케일해 반환합니다
FontBaseName페이지 오브젝트가 쓰는 폰트의 PostScript 베이스 이름(PDF 폰트 딕셔너리의 /BaseFont 항목)을 반환하며, -Bold나 ,Italic 같은 스타일 접미사도 포함됩니다
FontData임베드된 폰트 프로그램의 원본 바이트에 대한 읽기 전용 인덱스 접근입니다(폰트가 임베드된 경우에만 채워짐)
FontDescent페이지 오브젝트 폰트의 디센트(베이스라인에서 가장 낮은 디센더까지 거리)를 PDF 포인트로 표현하고 호출자가 준 폰트 크기로 스케일해 반환합니다
FontFamilyName현재 페이지에서 페이지 오브젝트가 쓰는 폰트의 타이포그래픽 패밀리 이름(예: Helvetica, Times New Roman, Noto Sans CJK SC)을 반환합니다
property FontFlags[Index: Integer]: Integer네이티브 PDF 폰트 디스크립터 플래그를 반환하고 오브젝트에 폰트가 없으면 -1입니다
FontHandle페이지 오브젝트가 쓰는 폰트의 네이티브 FPDF_FONT 핸들을 반환합니다. 이 핸들로 고급 호출자는 컴포넌트가 감싸지 않은 PDFium 폰트 API에 직접 접근할 수 있습니다
FontIsEmbedded페이지 오브젝트가 쓰는 폰트가 PDF 안에 임베드되어 있는지(True) 아니면 참조만 되고 볼 때 운영체제에서 해석되는지(False) 나타냅니다
FontItalicAngle폰트 이탤릭 각도(도)에 대한 읽기 전용 인덱스 접근입니다(보통 이탤릭은 음수, 똑바로 세우면 0)
FontSize현재 페이지 개별 문자의 렌더링 폰트 크기(PDF 포인트)를 반환합니다. FontSize는 하위 호환을 위해 남겨진 CharacterFontSize의 별칭입니다
FontWeight현재 페이지에서 페이지 오브젝트가 쓰는 폰트의 CSS 스타일 굵기를 반환합니다. 일반적으로 400은 regular, 700은 bold입니다
FormField인덱스 속성 — 현재 페이지의 폼 필드 하나를 반환합니다
FormFieldAt주어진 페이지 좌표에 있는 폼 필드의 값을 읽거나 씁니다
FormFieldCount현재 활성 페이지의 폼 필드 위젯 수입니다
FormFieldInfo활성 페이지에서 주어진 인덱스 폼 필드를 기술하는 완전한 레코드입니다
FormFieldInfoAt주어진 페이지 좌표의 위젯에 대한 폼 필드 레코드입니다
FormHostCallbacksComplete, FormSelectionRects, OnForm*수명 안전한 네이티브 폼 페이지와 호스트가 제어하는 탐색, URI, 커서, 값 변경, 선택 콜백입니다
function FormFieldTypeAtPoint(X, Y: Double; out FieldType: TPdfFormFieldType): Boolean네이티브 지점 hit testing으로 주석 핸들을 만들지 않고 필드 타입을 반환합니다
function FormFieldTabOrder: TPdfIntegerArray키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
property FormFill애플리케이션이 폼 관련 콜백(Beep, Invalidate, OutputDocFile 등)을 공급하게 하는 인터페이스입니다
FormHandle문서에 붙은 네이티브 PDFium 폼 채우기 환경 핸들입니다
function DetachFormObjectChild(FormIndex, ChildIndex: Integer): FPDF_PAGEOBJECTForm XObject 자식을 제거하고 네이티브 핸들 소유권을 넘깁니다
function FormObjectChildren(Index: Integer): TPdfPageObjectInfosForm XObject 안에 중첩된 페이지 오브젝트를 나열합니다
function GetAnnotationFontColor(AnnotIndex: Integer; out Color: TColor): Boolean폼 필드 위젯 주석의 텍스트 색상을 읽습니다
function GetAttachmentStringValue(Index: Integer; const Key: WString): WString첨부의 file-specification 딕셔너리에서 문자열 항목 하나를 읽습니다
function GetImageObjectRenderedBitmap(Index: Integer): TBitmap마스크, 색 변환, 행렬이 적용된 상태로 이미지 오브젝트를 렌더링합니다
function GetObjectRenderedStrokePattern(Index: Integer): TBitmappath 오브젝트가 stroke에 쓰는 tiling 패턴을 호출자 소유 비트맵으로 래스터라이즈하고, 없으면 nil을 반환합니다
property FormType문서가 AcroForm 필드, XFA, 아니면 폼이 전혀 없는지 알려줍니다
procedure GenerateFormAppearances모든 페이지의 모든 폼 위젯에 대해 FPDF_FFLDraw로 각 페이지를 렌더링하면서 /AP(appearance 스트림)를 다시 생성합니다. FormField[i] := value 대입에 권장되는 짝 호출입니다 — 이게 없으면 폼 값이 필드에 포커스가 있을 때만 보이거나, 이어지는 평탄화 작업에서 조용히 값이 사라질 수 있습니다. 모든 FormField[] 대입 뒤, SaveAs / FlattenPage / FlattenAllPages 전에 호출하세요
function GetPageBox현재 페이지에서 이름 붙은 페이지 박스의 사각형을 읽습니다
function GetXfaConfig: TBytesPDF 문서에서 XFA config 패킷의 원본 XML 바이트를 가져옵니다
function GetXfaDatasets: TBytesPDF 문서에서 원본 XFA datasets XML 바이트를 가져옵니다
function GetXfaFormPackets: TXfaPacketList내장된 모든 XFA 패킷을 TXfaPacketList 컬렉션으로 스냅샷합니다
function GetXfaPacketByName(const Name: string): TBytes이름으로 식별한 XFA 패킷의 원본 콘텐츠 바이트를 반환합니다
function GetXfaPacketContent(Index: Integer): TBytes주어진 0 기반 인덱스의 XFA 패킷 원본 콘텐츠 바이트를 반환합니다
function GetXfaPacketCount: Integer문서에 내장된 XFA 패킷 수를 반환합니다
function GetXfaPacketName(Index: Integer): string주어진 0 기반 인덱스의 XFA 패킷 이름을 반환합니다
function GetXfaTemplate: TBytesPDF 문서에서 XFA template 패킷의 원본 XML 바이트를 가져옵니다
GrantedPermissionsowner password 권한을 타입화된 TPdfPermissions 집합으로 반환합니다
HasBookmarkChildren주어진 outline 노드에 자식 북마크가 하나 이상 있으면 True를 반환합니다
HasFormFieldAt폼 필드 위젯이 주어진 페이지 좌표를 덮으면 True를 반환하는 hit-test입니다
HasPermission(Permission: TPdfPermission): Boolean수동 비트 연산 없이 owner password 권한 하나를 검사합니다
Image인덱스 속성 — 현재 페이지의 이미지 페이지 오브젝트 하나(핸들 + bbox + 비트 깊이 + 색 공간)를 반환합니다
ImageCount현재 활성 페이지의 래스터 이미지 XObject 수입니다
function ImportFDF(const FileName: string): IntegerFDF 문서에서 폼 필드 값을 적용합니다. TStream 오버로드도 있습니다
ImportXFDF명시적 빈 값, 텍스트·CDATA 혼합, 깊게 중첩된 필드 이름을 포함해 네임스페이스 인식 XFDF 필드와 주석을 적용합니다
property IncrementalSaveActive: Boolean현재 incremental save 세션이 열려 있는지 보고합니다
procedure InsertClipPath(Left, Bottom, Right, Top: Single)현재 페이지에 그려지는 모든 것을 PDF 페이지 단위 사각형으로 클립합니다
procedure InsertObjectAtIndex(StackIndex: Integer; PageObj: Pointer)그리기 순서에서 맨 위 대신 지정한 깊이에 페이지 오브젝트를 삽입합니다
class function InspectAvailability(AStream: TStream): TPdfAvailabilityPDF 스트림을 로드하지 않고 linearization, 파싱 가능 여부, 첫 페이지를 보고합니다
ImportNPagesToOne소스 문서 페이지를 NumX×NumY 합성한 페이지를 가진 완전히 새로운 TPdf를 만듭니다. N-up 인쇄 레이아웃에 적합합니다
ImportPages열려 있는 다른 TPdf에서 이 문서로 페이지를 하나 이상 복사합니다
ImportPagesByIndex0 기반 인덱스로 다른 TPdf에서 특정 페이지 부분집합을 가져오며, 현재 문서에서 삽입 지점도 제어할 수 있습니다
function ImportPreferences(Pdf: TPdf): BooleanImportPages가 콘텐츠를 복사하는 방식(리소스, 이름 붙은 대상, 주석 등)을 제어하는 비트 집합입니다
function InsertFormObjectFromXObject(XObject: TPdfXObject): FPDF_PAGEOBJECTTPdfXObject가 감싼 페이지 사본 하나를 이 문서의 현재 페이지에 삽입하고 FPDF_PAGEOBJECT를 반환해 호출자가 위치/크기/회전을 조정할 수 있게 합니다
IsTagged문서가 접근성을 위한 구조 트리를 선언하는지 여부입니다
JavaScriptAction인덱스 속성 — 문서 수준 JavaScript 액션 하나(name + Type + Source 문자열)를 반환합니다
JavaScriptActionCountPDF에 저장된 문서 수준 JavaScript 액션 수입니다
JavaScriptActions모든 문서 수준 JavaScript 액션을 하나의 동적 배열로 반환합니다
Keywords문서 Info 딕셔너리의 저자 제공 키워드 목록입니다
Language문서 catalog에 선언된 자연 언어 식별자입니다
LineTo현재 점에서 (X, Y)까지 직선을 추가합니다
LinkAnnotation인덱스 속성 — 주어진 인덱스의 명시적 /Annot Subtype Link를 대상 액션 또는 대상과 함께 반환합니다
LinkAnnotationCount특정 페이지의 /Link 주석 항목 수입니다
function LinkAtPoint(X, Y: Double): BooleanFPDFLink_GetLinkAtPoint로 페이지 공간 좌표를 네이티브 링크 주석과 hit-test합니다
procedure LoadCustomDocument(AStream: TStream; AOwnsStream: Boolean = False)PDFium의 요청 시 블록 리더로 임의 시크 가능 TStream에서 PDF를 로드합니다. 덕분에 수 GB 문서와 원격/데이터베이스 기반 소스도 미리 메모리에 복사할 필요가 없습니다
TPdfRandomAccessStore메모리 상한 아래에서 시크 가능 콘텐츠를 저장하고 전용 임시 저장소로 spill하며, 커서와 무관한 ReadAt과 WriteAt 호출을 지원합니다
function TextIndexToCharacterIndex(Index: Integer): Integer추출된 텍스트의 오프셋을 그것을 만든 문자로 되돌려 매핑합니다
function TextObjectGlyphOutline(Index, GlyphIndex: Integer; FontSize: Single): TPdfPathSegments하나의 글리프 벡터 외곽선을 읽되, 1em이 1.0이 되도록 정규화합니다
function TextObjectGlyphWidth(Index, GlyphIndex: Integer; FontSize: Single): Single요청한 폰트 크기에서 네이티브 글리프 advance를 측정합니다
function TextObjectFontSize(Index: Integer): Single텍스트 페이지 오브젝트 하나의 네이티브 폰트 크기를 읽습니다
procedure SetTextObjectFontSize(Index: Integer; FontSize: Single)행렬 스케일링 없이 텍스트 오브젝트 폰트 크기를 편집합니다
procedure LoadDocument파일, 바이트 배열, 검증된 메모리 버퍼, nil이 아닌 메모리 스트림에서 PDF를 엽니다
LastLoadReport최신 로드 상태, 네이티브 복구 경로, xref 유효성, 제한된 감사 카운터, 타입화된 문제를 반환합니다
SaveAsRepaired완전한 사본을 기록하고 성공을 반환하기 전에 격리된 strict load로 검증합니다
property MetaText태그 이름으로 문서 Info 딕셔너리 값 하나를 반환합니다
Metadata표준 제목, 작성자, 주제, 키워드, creator, producer, 생성 날짜, 수정 날짜를 하나의 레코드 스냅샷으로 반환합니다
MergeFiles파일 기반 소스 목록을 제한된 소스 핸들, 네이티브 페이지 가져오기 배치, 명시적 정책, 진행률, 취소, 롤백, 상세 리포트와 함께 병합합니다
ModifiedDate문서 Info 딕셔너리에 기록된 마지막 수정 타임스탬프입니다
MovePages0 기반 인덱스로 이 문서의 페이지를 제자리에서 재배열하며 페이지 수는 일정하게 유지합니다
MoveTo주어진 페이지 좌표에서 새 서브패스를 시작합니다
ObjectBitmap인덱스 속성 — 이미지 페이지 오브젝트 하나를 렌더링 가능한 VCL TBitmap으로 반환합니다(JPX/CCITT 등에서 손실 디코딩)
ObjectBounds현재 페이지 단일 페이지 오브젝트의 축에 정렬된 타이트한 경계 사각형입니다
ObjectCount현재 페이지의 페이지 오브젝트(텍스트, 경로, 이미지, shading, 폼) 수입니다(읽기 전용)
ObjectHandle지정한 페이지 오브젝트의 원본 PDFium FPDF_PAGEOBJECT 포인터입니다
ObjectTransparent페이지 오브젝트가 PDF 투명성에 관여하는지 나타냅니다 — 다음 경로를 통해
ObjectType지정한 인덱스 페이지 오브젝트의 범주(텍스트, 경로, 이미지, shading, 폼 XObject)를 반환합니다. 분류는 오브젝트를 만든 PDF content-stream 연산자와 일치하며, 호출자가 단일 switch 분기로 페이지 오브젝트 배열을 순회할 수 있게 해줍니다
function OptimizeImages(const Options: TPdfImageOptimizeOptions; out Report: TPdfImageOptimizeReport): Boolean실효 배치 DPI가 호출자 기준을 넘는 페이지 이미지 오브젝트를 네이티브 비트맵과 FPDFImageObj_SetBitmap 경로로 다운샘플하고, 문서를 SaveAs 준비 상태로 둡니다
function GetFeatureInventory: TPdfFeatureInventory모든 페이지를 한 번씩 스캔해 텍스트, 경로, 이미지, 폼 XObject, shading 오브젝트 개수를 문서 수준 팩트와 함께 하나의 통합 레코드로 반환합니다
function GetObjectText(Index: Integer): WString텍스트 오브젝트 하나가 그리는 텍스트를 추출합니다
function GetObjectsByType(ObjType: TObjectType): TPdfIntegerArray현재 페이지에서 한 종류의 모든 페이지 오브젝트 인덱스를 나열합니다
function GetPageActionType(EventType: Integer): Integer페이지 열기/닫기 추가 액션의 PDFACTION_* 타입을 보고하고 없으면 0입니다
function GetPageActionURI(EventType: Integer): WString페이지 열기/닫기 액션이 여는 URI를 읽습니다
function GetTextInReadingOrder(Order: TPdfReadingOrder): WString페이지 텍스트를 원본 콘텐츠 순서 또는 물리적 읽기 순서로 정렬해 추출합니다
function GetTextObjectRenderedBitmap(Index: Integer; Scale: Single): TBitmap텍스트 오브젝트 하나를 요청한 배율로 단독 래스터화합니다
function GetTextRenderMode(Index: Integer): Integer텍스트 오브젝트의 FPDF_TEXTRENDERMODE_* 모드를 읽습니다. 이 모드로 보이지 않는 OCR 텍스트와 보이는 텍스트를 구별합니다
function GetWidgetAdditionalActionJavaScript(AnnotIndex, EventType: Integer): WString폼 필드 위젯의 keystroke, format, validate, calculate 스크립트를 읽습니다
function AuditActiveContent: TPdfActiveContentAudit스크립트나 액션을 하나도 실행하지 않고 JavaScript 액션 수, 내장 파일, 서명, XFA 폼 타입, 권한 스냅샷을 반환합니다
property OnFormFieldEnter폼 채우기 엔진이 폼 필드에 포커스를 얻을 때 발생합니다
property OnFormFieldExit폼 채우기 엔진이 폼 필드의 포커스를 잃을 때 발생합니다
property OnJavaScriptResponsePDF 내장 JavaScript 액션이 사용자 상호작용을 요청할 때 발생합니다
property OnPageChangePdf.Page가 다른 페이지 인덱스로 대입될 때 발생합니다
property OnUnsupportedFeature문서가 PDFium이 구현하지 않은 PDF 기능(예: XFA 풀 폼, 3D 주석, 멀티미디어)을 사용할 때 발생합니다
property OnXfaGotoUrl동적 XFA 폼 안에서 링크 URL을 탐색할 때 발생합니다
property OnXfaUriAction동적 XFA 컨텍스트 안에서 링크 URI 액션이 트리거될 때 발생합니다
function PadesCryptoAvailable: Boolean시스템에서 서명 암호화 백엔드를 사용할 수 있는지 나타냅니다
Page현재 활성 페이지의 네이티브 PDFium 페이지 핸들입니다
function PageUsesOverprint: Boolean선택적 print-output 확장이 감지를 지원할 때 정확한 페이지 overprint 사용을 질의합니다
function PathInfo(Index: Integer): TPdfPathInfo경로 오브젝트의 채우기 모드, stroke 플래그, 세그먼트 지오메트리를 읽습니다
property PageBounds[Box: TPdfPageBox]: TPdfRectangle페이지 수준 속성 — 요청한 페이지 박스(MediaBox/CropBox/BleedBox/TrimBox/ArtBox)의 사각형입니다
property PageBox[Box: TPdfPageBox]: TPdfRectangle페이지 수준 속성 — 현재 페이지의 특정 페이지 박스 사각형을 읽거나 씁니다
property PageCount: Integer페이지 수준 속성 — 열린 문서의 전체 페이지 수입니다
property PageMetrics[PageNumber: Integer]: TPdfPageMetrics임의 페이지의 캐시된 크기, 회전, 레이블, 투명성, 표준 페이지 박스입니다
property CacheBudgetBytes: Int64하나의 TPdf 인스턴스에 통합 보관 캐시 바이트 상한을 설정합니다
property CacheGovernor: TPdfCacheGovernor종류별 질의와 애플리케이션 캐시 조율을 위한 소유 공유 governor를 반환합니다
property CacheGovernorStatistics: TPdfCacheGovernorStatistics현재, 피크, 고정, 축출, 터치, 거부 텔레메트리를 반환합니다
property LifecycleActionPolicy: TPdfLifecycleActionPolicy비활성, explicit 전용, 호환 자동 문서·페이지 lifecycle 액션 실행 중 하나를 고릅니다
property PageSceneCacheCapacity: Integer인덱스 렌더링을 위해 보관되는 파싱된 비활성 페이지 장면 최대 개수입니다
property PageSceneCacheCount: Integer재사용 가능한 파싱 페이지 장면의 현재 개수입니다
PageHeight활성 페이지 높이(PDF 사용자 공간 단위, 1포인트 = 1/72인치)입니다
function PageObjectClipPath(Index: Integer): TPdfClipPath한 페이지 오브젝트가 칠할 수 있는 범위를 제한하는 클립 경로를 읽습니다
function PageObjectInfo(Index: Integer): TPdfPageObjectInfo한 페이지 오브젝트의 편집 가능한 모든 속성을 하나의 레코드로 읽습니다
function PageObjectMarkedContentID(Index: Integer): Integer페이지 오브젝트를 구조 트리에 연결하는 /MCID를 읽고, 태그가 없으면 -1입니다
function PageObjectMarks(Index: Integer): TPdfContentMarks페이지 오브젝트에 붙은 marked-content 태그와 타입 속성 목록을 읽습니다
property PageLabel: WString페이지 수준 속성 — 0 기반 인덱스가 아니라 사용자에게 보이는 페이지 레이블("iv", "A-3" 같은)을 반환합니다
property PageMode: TPageMode페이지 수준 속성 — 문서 /PageMode 힌트(Outlines, Thumbs, FullScreen 등)입니다
property PageNumber: Integer범위 검사와 롤백 안전 네이티브 페이지 교체를 갖춘 읽기/쓰기 1 기반 현재 페이지 인덱스입니다
property PageRotation: TRotation페이지 수준 속성 — 렌더링 시 현재 페이지에 적용되는 회전(ro0 / ro90 / ro180 / ro270)입니다
function PageToDevice(PageX, PageY: Double; Left, Top, Width, Height: Integer; Rotation: TRotation; out X, Y: Integer): Boolean점의 페이지 좌표를 화면 좌표로 변환합니다
property PageWidth: Double페이지 수준 속성 — 현재 페이지 너비(포인트, 1pt = 1/72인치)입니다
function PageWordBoxes: TPdfWordBoxes현재 TPdf 페이지 단어에 대한 문자 범위와 페이지 공간 사각형을 갖춘 TPdfWordBox 레코드를 반환합니다
function ExecuteDocumentLifecycleAction(Action: TPdfDocumentLifecycleAction; out ErrorMessage: string): Boolean네이티브 문서 lifecycle 액션 하나를 실행하고 정책, 환경, 콜백 실패를 예외 전파 없이 보고합니다
function ExecutePageLifecycleAction(PageNumber: Integer; Action: TPdfPageLifecycleAction; out ErrorMessage: string): Boolean활성 페이지를 바꾸지 않고 페이지 열기/닫기 액션을 실행하고 임시 네이티브 페이지 상태를 결정적으로 해제합니다
TPdfDocumentLifecycleAction / TPdfPageLifecycleAction비활성, explicit 전용, 호환 자동 모드를 다루는 문서 및 페이지 lifecycle 액션 정책과 실행 모델입니다
property PasswordActive := True 전에 지정하는 복호화 비밀번호입니다
PdfAConformance현재 열린 문서의 읽기 전용 PDF/A 컨포먼스 레벨입니다. ValidatePdfA를 명시적으로 호출할 필요가 없습니다
PdfEConformance현재 열린 문서의 읽기 전용 PDF/E 컨포먼스 레벨입니다. ValidatePdfE를 명시적으로 호출할 필요가 없습니다
PdfRConformance현재 열린 문서의 읽기 전용 PDF/R 컨포먼스 레벨입니다. ValidatePdfR를 명시적으로 호출할 필요가 없습니다
PdfUaConformance현재 열린 문서의 읽기 전용 PDF/UA 컨포먼스 레벨입니다. ValidatePdfUa를 명시적으로 호출할 필요가 없습니다
PdfVersion읽기 전용 플래그 — 열린 문서의 PDF 사양 버전(예: pv14, pv17, pv20)입니다
PdfVTConformance현재 열린 문서의 읽기 전용 PDF/VT 컨포먼스 레벨입니다. ValidatePdfVT를 명시적으로 호출할 필요가 없습니다
PdfXConformance현재 열린 문서의 읽기 전용 PDF/X 컨포먼스 레벨입니다. ValidatePdfX를 명시적으로 호출할 필요가 없습니다
function PerformNamedAction(const ActionName: string): Booleannamed action을 수행합니다. NextPage, PrevPage, FirstPage, LastPage는 클램핑하면서 PageNumber를 움직입니다
property Permissions/Encrypt 딕셔너리에서 디코딩한 owner password 권한 비트를 반환합니다
PrintCopiesPDF 저자가 인쇄 대화상자에 바라는 내장된 권장 매수입니다
PrintPageRangesPDF 저자가 인쇄에 바라는 1 기반 페이지 범위의 디코딩된 목록입니다
PrintPaperHandling문서 /ViewerPreferences /Duplex 힌트의 디코딩된 값입니다
PrintScaling문서 /ViewerPreferences /PrintScaling의 디코딩된 값입니다
Producer파일을 만든 PDF 라이브러리 또는 변환기 이름입니다
function ReadXmpPacket: TPdfXmpPacketXMP 메타데이터 패킷을 호출자 소유 파싱 객체로 읽습니다
function InspectPdfAMetadata: TPdfAMetadataReport여덟 개 ISO 19005-1 Info-to-XMP 매핑 전부에 대한 타입화된 동등성 증거를 반환합니다
function InspectPdfUaLanguageCoverage: TPdfUaLanguageCoverageReportmarked-content, 구조 조상, catalog 언어 상속을 사용해 제한된 자연어 증거를 보고합니다
function InspectPdfUaUnicodeCoverage: TPdfUaUnicodeCoverageReport하나의 네이티브 텍스트 페이지 패스로 오브젝트 범위의 직접 Unicode·ActualText 추출 커버리지를 보고합니다
function ReadAttachmentMetadata(MaxAttachments: Integer = 10000): TPdfAttachmentMetadataArray페이로드 바이트를 로드하지 않고 하나의 제한된 네이티브 열거로 첨부 메타데이터와 디코딩된 크기를 수집합니다
function ReadStructureElements(PageNumber; Options; out Status): TPdfStructureElements호출자가 고른 깊이, 요소, 속성, 시간 예산 안에서 반복 구조 트리 스냅샷을 실체화합니다
ReadableContent스크린 리더, TTS, 접근성 워크플로를 위한 시맨틱 readable content 프래그먼트를 반환합니다
function ReadablePageContent(PageNumber: Integer): TPdfReadableContent스크린 리더, TTS, 접근성 워크플로를 위한 시맨틱 readable content 프래그먼트를 반환합니다
function ReadingUnits: TPdfReadingUnits현재 페이지 readable-content 스트림에서 보조 청취 읽기 워크플로를 위한 문장 수준 TPdfReadingUnit 레코드를 만듭니다
Rectangle현재 페이지 텍스트 레이아웃에서 텍스트 경계 사각형 하나를 반환합니다
procedure RefreshAppearance(AnnotIndex: Integer)PDFium이 주석 하나의 appearance 스트림을 다시 생성하도록 강제합니다
procedure RemoveAnnotationObject(Index, ObjectIndex: Integer)잉크 또는 스탬프 주석에서 페이지 오브젝트 하나를 삭제합니다
function RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): Integer텍스트 구간이 차지하는 사각형 영역 수를 셉니다. 문자들이 같은 줄에 있고 같은 폰트 설정을 쓰면 작은 문자 박스를 큰 박스로 자동 병합합니다
procedure ReloadPage현재 선택된 페이지를 PDFium 엔진에서 다시 로드하며 페이지 오브젝트 캐시를 새로 고칩니다
procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True)현재 페이지에서 지정한 페이지 오브젝트를 제거합니다. DestroyObject가 True이면 제거된 오브젝트는 제거 뒤 해제됩니다. 페이지 콘텐츠 스트림은 자동으로 다시 생성됩니다
procedure RemovePageObjectMark(Index, MarkIndex: Integer)페이지 오브젝트에서 marked-content 항목 하나를 제거합니다
procedure RemovePageObjectMarkParam(Index, MarkIndex: Integer; const Key: WString)기존 마크를 교체하지 않고 속성 하나를 제거합니다
procedure RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = [])페이지 콘텐츠를 디바이스(화면, 비트맵, 프린터)에 렌더링합니다
function RenderPageByIndex(PageNumber, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmapPageNumber를 바꾸지 않고 임의 페이지를 렌더링하며, 파싱된 PDFium 장면을 출력 크기에 걸쳐 재사용합니다
procedure RenderPageSkia(Canvas: FPDF_SKIA_CANVAS; Width, Height: Integer; DrawFormOverlay: Boolean = True)현재 페이지와 선택적 폼 오버레이를 호출자 소유 SkCanvas에 렌더링합니다
procedure RenderPageSkiaByIndex(Canvas: FPDF_SKIA_CANVAS; PageNumber, Width, Height: Integer; DrawFormOverlay: Boolean = True)활성 페이지를 바꾸지 않고 파싱 페이지 장면 캐시를 통해 임의 페이지를 Skia로 렌더링합니다
function RenderPageWithMatrix(Width, Height: Integer; const Matrix: FS_MATRIX; const Clip: TPdfRectangle; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmap대상 공간 클립 사각형과 함께 임의 변환으로 렌더링합니다
function RenderSpotPlate(PlateIndex, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmap선택적 ABI가 해당 연산을 노출할 때 정확한 네이티브 인쇄 판 하나를 렌더링합니다
function RenderOverprintPreview(Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmap선택적 ABI가 해당 연산을 노출할 때 정확한 네이티브 overprint 미리보기를 렌더링합니다
function RenderPageBanded(Width, Height, BandHeight: Integer; BandCallback: TPdfBandCallback; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): Integer페이지를 가로 밴드로 렌더링해 큰 페이지도 전체 크기 비트맵을 필요로 하지 않게 합니다
function RenderPageBandedToEncoder(Width, Height, BandHeight: Integer; Encoder: TPdfBandedImageEncoder; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TPdfBandedImageReport순차적인 네이티브 클립 밴드를 호출자 소유 인코더에 전달하고 진행률과 피크 밴드 메모리를 보고합니다
function RenderPageBandedToStream(Stream: TStream; Width, Height: Integer; const StreamOptions: TPdfBandedImageStreamOptions; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TPdfBandedImageReport전체 페이지 픽셀을 보관하지 않고 페이지 밴드에서 PNG 또는 TIFF 행을 직접 스트리밍합니다
RenderPageProgressiveRenderPage의 취소 가능 변형으로, PDFium의 점진적 렌더링 루프를 구동하고 반복 사이에 IPdfCancellationToken을 폴링해 긴 고 DPI 렌더링이 끝까지 막히는 대신 페이지 중간에서 중단될 수 있게 합니다
function RenderPageProgressiveWithColorScheme(Bitmap: TBitmap; Left, Top, Width, Height: Integer; const AToken: IPdfCancellationToken; const ColorScheme: TPdfColorScheme; Rotation: TRotation = ro0; Options: TRenderOptions = []; Background: TColor = clWhite): TPdfProgressiveStatus저시력 읽기를 위해 경로·텍스트 색상을 대체하는 취소 가능 점진 렌더링입니다
function RenderPagesParallel(const PageNumbers: array of Integer; const Options: TPdfParallelRenderOptions; const CancellationToken: IPdfCancellationToken = nil): TPdfParallelRenderReport현재 문서를 제한된 저장소에 한 번 수집하고, 메모리·읽기 전용 파일 매핑·네이티브 랜덤 액세스를 공유하는 격리된 워커 소유 PDFium 문서로 요청 페이지를 렌더링합니다
function RenderPageThumbnail(PageIndex, MaxWidth, MaxHeight: Integer; Rotation: TRotation; Options: TRenderOptions; Background: TColor; const ColorScheme: TPdfColorScheme): TBitmap완전한 render-key 제어와 함께 임의 1 기반 페이지를 리비전 캐시된 호출자 소유 비트맵으로 렌더링합니다
function RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmap페이지의 사각형 영역을 새 비트맵에 렌더링합니다. 반환된 비트맵은 수동으로 해제해야 합니다
function SpotPlates: TPdfSpotPlateInfos선택적 ABI가 열거를 노출할 때 정확한 네이티브 spot-plate 인덱스와 UTF-8 이름을 반환합니다
InspectOptionalContentoptional-content 그룹, 구성, 사용 메타데이터, 라디오 그룹, OCMD 표현식, 실효 PDFium 렌더링 상태를 나열합니다
function IsAnnotationSubtypeSupported(Subtype: TPdfAnnotationSubtype): Boolean로드된 PDFium 모듈이 해당 주석 서브타입을 만들 수 있는지 보고합니다
function IsAnnotationObjectSubtypeSupported(Subtype: TPdfAnnotationSubtype): BooleanPDFium이 해당 주석 서브타입의 appearance 오브젝트를 추출·편집할 수 있는지 보고합니다
function SaveAs(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanPDF 문서 사본을 지정한 스트림에 저장합니다. PdfVersion이 pv13부터 pv17까지면 저장 출력이 해당 대상 버전에 맞춰 정규화·검증되며, 증분 출력에 있는 기존 catalog /Version 재정의도 포함됩니다. 검증기는 PDF 1.1–1.7 / ISO 32000-1 기능 타임라인 전체를 다룹니다: 필터(FlateDecode, JBIG2Decode, JPXDecode), 오브젝트 & xref 스트림, 투명성(SMask, ca/CA, blend 모드), Tagged PDF(StructTreeRoot, MarkInfo), 색 공간(ICCBased, DeviceN), 페이지 박스(BleedBox/TrimBox/ArtBox), output intent, optional content, AcroForm, CID/Type 0·OpenType 폰트, AES & AES-256 암호화(CFM AESV2/AESV3), 버전 제한 주석 서브타입 전부(Widget, Sound, Movie, FreeText, Line, Square, Circle, Highlight, Underline, StrikeOut, Stamp, Ink, Popup, FileAttachment, TrapNet, Squiggly, PrinterMark, Polygon, PolyLine, Caret, Screen, Watermark, 3D, Redact), 버전 제한 액션 타입(SubmitForm, ResetForm, ImportData, Hide, Named, JavaScript, Trans, SetState, Rendition, GoToE, GoTo3DView), catalog 항목(Perms, Legal, Collection, Requirements, NeedsRendering). 선택한 대상 버전을 넘는 것은 EPdfError를 발생시킵니다. 문서에 기존 OpenAction이 없고 대상 버전이 지원하면 저장된 PDF는 첫 페이지를 Fit Height 확대로 엽니다. 평가판 빌드는 저장 시 평가판 워터마크를 적용합니다
function SaveAsLinearized(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean첫 페이지 그룹화, 두 개의 클래식 xref 섹션, 이득이 있을 때 압축된 Annex F 힌트를 갖춘 전체 재작성 Fast Web View PDF를 기록합니다
function SaveAsLinearized(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean형제 임시 파일을 완성·검증한 뒤 Fast Web View 출력을 파일에 원자적으로 기록합니다
function SaveAsObjectStream(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean활성 오브젝트를 페이지 지역성에 맞게 재배열하고, 적격 값을 제한된 ObjStm 그룹에 담아 완전한 type-2 xref 항목을 기록합니다
function SaveAsObjectStream(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): Boolean형제 임시 파일을 완성한 뒤 PDF 1.5+ 오브젝트 스트림 출력을 원자적으로 기록합니다
function SaveAsNormalizedContent(Stream: TStream; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): Boolean각 논리 페이지 콘텐츠 시퀀스를 정규화하고 안전한 /Contents 배열을 하나의 스트림으로 병합합니다
function SaveAsNormalizedContent(const FileName: string; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): Boolean정규화된 콘텐츠와 완전한 클래식 xref를 기록한 뒤 파일을 원자적으로 교체합니다
SaveAsPageLabelledcatalog /PageLabels number tree를 공급된 범위로 교체한 전체 PDF 사본을 기록하며, ISO 32000-1 §12.4.2에 따라 10진수, 로마자, 문자 번호 스타일을 적용합니다
SaveAsOptionalContentConfigured하나의 구성과 용도에 대해 호출자가 고른 optional-content 그룹 가시성으로 사본을 기록하고 엄격히 검증합니다
function SaveAsReachable(Stream: TStream; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean도달 불가능 오브젝트를 쓸어내고 오브젝트 번호를 보존한 채 문서를 하나의 클래식 리비전으로 다시 기록합니다
function SaveAsReachable(const FileName: string; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): Boolean가지치기된 단일 리비전 재작성 뒤 파일을 원자적으로 교체합니다
function SaveAsDeduplicated(Stream: TStream; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): Boolean도달 불가능 오브젝트를 쓸어내고 참조를 다시 기록해 중복 폰트, 이미지, 폼 XObject가 하나의 대표를 공유하게 합니다
function SaveAsDeduplicated(const FileName: string; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): Boolean중복 제거된 단일 리비전 재작성 뒤 파일을 원자적으로 교체합니다
function SaveAsFlateRecompressed(Stream: TStream; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): Boolean측정된 절감이 호출자 기준치를 넘길 때 적격 FlateDecode 스트림을 최대 압축으로 다시 인코딩합니다
function SaveAsFlateRecompressed(const FileName: string; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): BooleanFlate 재압축 재작성 뒤 파일을 원자적으로 교체합니다
function SaveAsInlineImagesExternalised(Stream: TStream; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): BooleanBI/ID/EI 인라인 이미지를 재사용 가능한 XObject로 추출하고 약어를 확장하며 인라인 블록을 Do 연산자로 치환합니다
function SaveAsInlineImagesExternalised(const FileName: string; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): Boolean인라인 이미지 외부화 뒤 파일을 원자적으로 교체합니다
function SaveAsReproducible(Stream: TStream; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): Boolean비결정적 타임스탬프와 /ID를 제거해 같은 문서의 두 저장이 바이트 단위로 동일해지게 합니다
function SaveAsReproducible(const FileName: string; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): Boolean재현 가능 재작성 뒤 파일을 원자적으로 교체합니다
function ExportObjectGraph(Stream: TStream; const Options: TPdfObjectGraphInspectOptions; out Report: TPdfObjectGraphReport): Boolean활성 indirect 값을 예산이 적용된 타입 JSON으로 내보내고 명시적 잘림을 보고합니다
function SaveAsObjectGraphPatched(Stream: TStream; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): Boolean검증된 딕셔너리 전용 패치 리비전을 추가하고 대상에 복사하기 전 strict-load로 확인합니다
function SaveAsObjectGraphPatched(const FileName: string; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): Boolean오브젝트 그래프 패치 트랜잭션이 성공한 뒤 파일을 원자적으로 교체합니다
function SaveAsRedacted(Stream: TStream; const Options: TPdfRedactionOptions; out Report: TPdfRedactionReport): Boolean격리된 스냅샷에 /Redact 주석을 적용하고, 겹치는 최상위 페이지 오브젝트를 제거하며, 불투명 대체물을 칠하고, 클린한 단일 리비전 스트림을 출력합니다
function SaveAsRedacted(const FileName: string; const Options: TPdfRedactionOptions; out Report: TPdfRedactionReport): Booleanredaction·살균 파이프라인이 성공한 뒤 파일을 원자적으로 교체합니다
SaveAsSanitised활성 콘텐츠와 catalog /AF를 걷어낸 클린한 단일 리비전 사본을 만들고, 도달 불가능 오브젝트를 가지치기해 고아가 된 JavaScript, 액션, 첨부 본체가 파일 몸통에서 사라지게 합니다
BeginIncrementalSave / CommitIncrementalSave / EndIncrementalSavedirty 오브젝트 incremental save 세션: 안정적인 베이스라인을 한 번만 캡처한 뒤, 정확한 이전 출력 바로 뒤에 바이트를 보존하는 리비전을 추가하고, 작업이 끝나면 세션을 해제합니다
procedure BeginIncrementalSave(AllowSignedDocument: Boolean = False)dirty 오브젝트 리비전 세션을 위해 안정적인 베이스라인과 정확한 암호화/비암호화 원본 접두사를 수집합니다
function CommitIncrementalSave(Stream: TStream; out Info: TPdfIncrementalCommitInfo): Boolean변경·신규 indirect 오브젝트를 추가하고 기존 암호화를 상속하며 결과를 독립적으로 검증합니다
function CommitIncrementalSave(const FileName: string; out Info: TPdfIncrementalCommitInfo): Boolean원자적 교체 전에 사이드 파일을 영속 flush·재오픈하고 실패 시 세션 상태를 복원합니다
procedure EndIncrementalSave세션 베이스라인과 누적 출력을 해제합니다
function ExportFDF(const FileName: string): Integer폼 필드 값을 FDF(ISO 32000-1 12.7.11)로 기록합니다. TStream 오버로드도 있습니다
function SaveAsEncrypted(const FileName: string; const Options: TPdfEncryptOptions): Boolean활성 PDF를 AESV3-CBC 또는 ISO/TS 32003 AESV4-GCM 암호화로 저장합니다
function SaveAsEncryptedToStream(Stream: TStream; const Options: TPdfEncryptOptions): Boolean디스크 스테이징 없이 암호화된 PDF 출력을 시크 가능한 임의 TStream에 기록합니다
function PreparePadesRemoteSignature(Prepared: TStream; const Options: TPadesRemoteSignOptions; out Request: TPadesRemoteSigningRequest): Boolean제약이 걸린 승인 또는 인증 필드와 원격 서명에 필요한 분리 서명 다이제스트, 정확한 ByteRange, 좌표, 준비된 PDF 지문을 만듭니다
class function CompletePadesRemoteSignature(Prepared, Dest: TStream; const Request: TPadesRemoteSigningRequest; const CmsDer: TBytes): Boolean수정되었거나 재사용된 세션을 거부하고, 분리 CMS가 준비된 문서 다이제스트에 바인딩된 경우에만 예약된 서명 슬롯을 채웁니다
class procedure SavePadesRemoteSigningRequest(Stream: TStream; const Request: TPadesRemoteSigningRequest)고정된 버전화 원격 서명 요청 형식을 스트림에 기록합니다
property SecurityHandlerRevision: Integer표준 security handler 리비전이며 암호화되지 않은 문서는 음수입니다
function SetAnnotationFontColor(AnnotIndex: Integer; Color: TColor): Boolean폼 필드 위젯 주석의 텍스트 색상을 재정의합니다
procedure SetAttachmentStringValue(Index: Integer; const Key, Value: WString)첨부의 file-specification 딕셔너리에 문자열 항목 하나를 기록합니다
class procedure SetDeterministicTime(FixedEpoch: Int64)PDFium이 출력에 찍는 시계를 고정해 저장 문서가 바이트 단위로 재현 가능하게 합니다
class function LoadPadesRemoteSigningRequest(Stream: TStream): TPadesRemoteSigningRequest고정된 버전화 원격 서명 요청 형식을 읽고 검증합니다
function RenewPadesArchiveTimestamp(const FileName: string; const Options: TPadesArchiveTimestampOptions; out Report: TPadesArchiveTimestampReport): Boolean로드된 원본 PAdES 바이트에 아카이브 Document Time-stamp를 추가하고 원자적으로 스테이징된 파일을 기록합니다
function RenewPadesArchiveTimestampToStream(Stream: TStream; const Options: TPadesArchiveTimestampOptions; out Report: TPadesArchiveTimestampReport): Boolean아카이브 Document Time-stamp를 추가하고 검증된 B-LTA 체인을 스트림에 기록합니다
class procedure RestoreActualTimedeterministic-time 세션 뒤 PDFium을 시스템 시계로 되돌립니다
function SaveAsPadesDss(const FileName: string; const Options: TPadesDssOptions): Boolean중복 제거된 PAdES DSS 자료, 서명별 VRI 딕셔너리, 소스 xref 표현으로 활성 PDF를 파일에 저장합니다
function SaveAsPadesDssToStream(Stream: TStream; const Options: TPadesDssOptions): Boolean중복 제거된 PAdES DSS 자료, 서명별 VRI 딕셔너리, 소스 xref 표현으로 활성 PDF를 스트림에 저장합니다
SaveAsPdfA기본 PDF를 증분 업데이트로 후처리해 XMP 메타데이터 스트림, sRGB ICC OutputIntent, 갱신된 문서 catalog를 주입함으로써 현재 문서를 PDF/A-1b 컨포먼트 파일로 저장합니다
function SaveAsPdfAToStream(Stream: TStream; const Options: TPdfASaveOptions): BooleanSaveAsPdfA의 인메모리 변형입니다 — 디스크 스테이징 없이 PDF/A-1b 출력을 임의 TStream에 기록합니다
SaveAsPdfE기본 PDF를 증분 업데이트로 후처리해 PDF/E-1 파일 형식 마커(ISO 24517-1:2008)를 주입함으로써 현재 문서를 PDF/E-1 컨포먼트 파일로 저장합니다
function SaveAsPdfEToStream(Stream: TStream; const Options: TPdfESaveOptions): BooleanSaveAsPdfE의 인메모리 변형입니다 — 디스크 스테이징 없이 PDF/E-1 출력을 임의 TStream에 기록합니다
SaveAsPdfR현재 문서를 PDF/R-1 컨포먼트 파일(ISO 23504-1:2020, 스캔 문서에 쓰이는 PDF의 래스터 이미지 전송·저장 서브셋)로 저장합니다
function SaveAsPdfRToStream(Stream: TStream; const Options: TPdfRSaveOptions): BooleanSaveAsPdfR의 인메모리 변형입니다 — 디스크 스테이징 없이 PDF/R-1 출력을 임의 TStream에 기록합니다
SaveAsPdfUa기본은 PDF/UA-1, TPdfUaSaveOptions.PdfUa2로 PDF/UA-2를 저장하며, 필요한 XMP 식별과 실효 PDF 버전을 포함합니다
function SaveAsPdfUaToStream(Stream: TStream; const Options: TPdfUaSaveOptions): Boolean디스크 스테이징 없는 인메모리 PDF/UA-1·PDF/UA-2 출력입니다
SaveAsPdfVT현재 문서를 단일 파일 PDF/VT-1 컨포먼트 파일(ISO 16612-2:2010, 가변·트랜잭션 인쇄 PDF 서브셋)로 저장합니다
function SaveAsPdfVTToStream(Stream: TStream; const Options: TPdfVTSaveOptions): BooleanSaveAsPdfVT의 인메모리 변형입니다 — 디스크 스테이징 없이 PDF/VT 출력을 임의 TStream에 기록합니다
SaveAsPdfX기본 PDF를 증분 업데이트로 후처리해 PDF/X 파일 형식 마커(ISO 15930 패밀리)를 주입함으로써 현재 문서를 PDF/X-1a:2001, PDF/X-3:2002 또는 PDF/X-4 컨포먼트 파일로 저장합니다
function SaveAsPdfXToStream(Stream: TStream; const Options: TPdfXSaveOptions): BooleanSaveAsPdfX의 인메모리 변형입니다 — 디스크 스테이징 없이 PDF/X 출력을 임의 TStream에 기록합니다
function SaveAsWithAssociateFiles(const FileName: string; const Options: TAssocFilesOptions): BooleanISO 32000-2 §7.11.4를 준수하도록 associated file을 catalog나 페이지에 주입하면서 활성 PDF를 파일 경로에 저장합니다
function SaveAsWithAssociateFilesToStream(Stream: TStream; const Options: TAssocFilesOptions): Boolean디스크 스테이징 없이 associated file이 주입된 PDF 출력을 시크 가능한 임의 TStream에 기록합니다
function SaveAsWithXmpPacket(Stream: TStream; Packet: TPdfXmpPacket; AllowSignedDocument: Boolean = False): Boolean교체용 XMP 메타데이터 패킷으로 문서를 저장합니다
function NormalizePdfAMetadata(Stream: TStream; AllowSignedDocument: Boolean = False): Boolean어긋난 매핑 XMP 속성을 수리하고 정규화된 문서를 저장합니다
procedure SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)현재 페이지에서 지정한 주석 인덱스의 폼 필드에 AcroForm 필드 플래그를 설정합니다
procedure SetFormFieldFlagsAt(X, Y: Single; const Flags: TPdfFormFieldFlags)주어진 좌표의 폼 필드에 Flags 비트 필드를 설정합니다
function SetFocusedFormFieldText(const Value: WString): Boolean대화형 캐럿에 의존하지 않고 FocusedFormFieldIndex로 현재 논리 폼 필드 값을 설정합니다
function SetFocusedFormFieldTextDirection(Direction: TPdfFormTextDirection): Boolean포커스 위젯의 메모리 내 텍스트 방향을 바꿉니다. 값은 저장 시 유지되지 않습니다
function SetFocusedFormOptionSelected(Index: Integer; Selected: Boolean): Boolean포커스된 리스트 또는 콤보 박스의 옵션 하나를 선택하거나 해제합니다
procedure SetPageBox(Box: TPdfPageBox; const Rectangle: TPdfRectangle)현재 페이지의 이름 붙은 페이지 박스(MediaBox / CropBox / BleedBox / TrimBox / ArtBox)에 새 사각형을 기록합니다
procedure SetPageObjectMarkParam(Index, MarkIndex: Integer; const Param: TPdfContentMarkParam)기존 마크의 정체와 무관한 속성을 보존하면서 타입 속성 하나를 upsert합니다
SetText주어진 페이지 좌표에 텍스트 페이지 오브젝트를 추가합니다
procedure SetTextPositions(ObjectIndex: Integer; const Positions: TPdfSingleArray)지정한 텍스트 오브젝트에 문자별 위치를 설정합니다. 첫 문자 위치는 0으로 간주되고, Positions[0]이 두 번째 문자 위치, Positions[1]이 세 번째 문자 위치를 정하는 식입니다. 값은 포인트 단위이며 텍스트 오브젝트 원점 기준입니다
StampPagesFromPdf소스 페이지를 위치·크기·선택적 회전이 지정된 Form XObject 오버레이 또는 언더레이로 하나 이상 대상 페이지에 찍습니다
Signature인덱스 속성 — 전자 서명 레코드 하나(서명자, 이유, 연락처, 바이트 범위)를 반환합니다
SignatureCount문서에 내장된 전자 서명 필드 수입니다
property Signatures: TPdfSignatures모든 네이티브 서명 레코드를 수명 안전 스냅샷 하나로 복사합니다
function SignPades(const FileName: string; const Options: TPadesSignOptions): Boolean기존 폼·권한 항목을 보존하면서 seed 값, 인증서, FieldMDP, DocMDP 제약을 선택적으로 붙여 승인 또는 인증 PAdES 서명을 추가합니다
function SignPadesToStream(Stream: TStream; const Options: TPadesSignOptions): Boolean등록된 Widget 필드, 64비트 ByteRange 처리, 소스 xref 표현과 함께 제약이 걸린 PAdES 서명 업데이트를 기록합니다
function SignPadesWithPdfA(const FileName: string; const Options: TPadesSignOptions; PdfAOptions: TPdfASaveOptions): BooleanPDF/A 아카이브 표준을 준수하는 서명된 PAdES PDF 문서를 저장합니다
StructureElements인덱스 속성 — 논리 구조 트리 요소(StructTree)의 자식을 반환합니다
SubjectPDF 문서 정보 딕셔너리의 /Subject 항목 값을 반환합니다
function Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WString페이지에서 텍스트 문자열을 추출합니다. StartIndex와 Count 파라미터가 추출할 문자를 결정합니다. StartIndex 파라미터는 0 기반입니다
function TextInRectangle(Left, Top, Right, Bottom: Double): WString페이지의 사각형 경계 안에서 텍스트를 추출합니다
TextPage현재 활성 페이지의 네이티브 PDFium 텍스트 페이지 핸들입니다
function ThumbnailDecodedData: TBytes스트림 필터를 디코딩한 상태로 내장 페이지 축소판을 읽습니다
property ThumbnailCacheMaxEntries: Integer보관되는 내장·렌더링 축소판 항목 최대 개수, 기본값 64
property ThumbnailCacheMaxBytes: Int64축소판 LRU가 보관하는 추정 픽셀 바이트 최대치, 기본값 64 MiB
property ThumbnailCacheStatistics: TPdfThumbnailCacheStatistics점유율, 저장 바이트, 히트, 미스, 축출을 보고합니다
property ThumbnailRevision: Int64축소판 소비자가 낡은 로컬 미리보기를 버릴 때 쓰는 단조 증가 콘텐츠 리비전입니다
function ThumbnailRawData: TBytes저장된 그대로, 필터가 아직 적용된 상태로 내장 페이지 축소판을 읽습니다
property Thumbnail현재 페이지 /Thumb 항목의 원본 바이트를 반환합니다(선택적 미리 계산된 미리보기, 보통 64x64 래스터)
TitlePDF 문서 정보 딕셔너리의 /Title 항목 값을 반환합니다
property TrailerEnds: TPdfCardinalArray문서의 각 trailer가 끝나는 바이트 오프셋이며 리비전당 하나입니다
procedure TransformPageAnnotations(const Matrix: FS_MATRIX)현재 페이지의 모든 주석에 변환 행렬을 적용합니다
procedure TransformPageContent(const Matrix: FS_MATRIX; const Clip: TPdfRectangle)현재 페이지의 모든 콘텐츠 오브젝트에 클립 사각형과 함께 변환 행렬을 적용합니다
procedure TransformPageObject(Index: Integer; const Matrix: FS_MATRIX)한 페이지 오브젝트의 변환 행렬을 곱해 이동, 확대, 회전, 왜곡합니다
procedure TransformPageObjectClipPath(Index: Integer; const Matrix: FS_MATRIX)한 페이지 오브젝트에 연결된 클립 지오메트리만 변환합니다
Transparent현재 활성 페이지에 투명 콘텐츠가 있는지 여부입니다
procedure UpdateAnnotationObject(AnnotIndex: Integer; PageObj: Pointer)주석의 페이지 오브젝트 하나가 수정되었음을 알립니다
procedure UpdatePageObject(Index: Integer; const Value: TPdfPageObjectInfo; Changes: TPdfPageObjectChanges)변경 집합이 가리키는 페이지 오브젝트 속성만 되돌려 씁니다
procedure UpdatePageCreateAnnotation, AddImage, AddText, SetFormFieldFlagsAt 등으로 만든 메모리 내 편집을 기반이 되는 PDFium 페이지에 커밋합니다
property UserPermissionsuser password 권한 비트(Permissions의 부분집합)를 반환합니다
UserGrantedPermissionsuser password 권한을 타입화된 TPdfPermissions 집합으로 반환합니다
UserHasPermission(Permission: TPdfPermission): Boolean수동 비트 연산 없이 user password 권한 하나를 검사합니다
function ValidatePades: TPadesValidationResultPDF를 다시 저장하지 않고 원본 소스 바이트에서 고유한 서명 프로필 항목과 정확한 Contents 배제 범위를 검증합니다
function ValidatePadesTrust(const Options: TPadesTrustValidationOptions): TPadesValidationResult정확한 원본 ByteRange 데이터, 서명자 신뢰, 선택적 폐기 증거, RFC 3161 타임스탬프 토큰을 확인합니다
function ValidatePadesTrustAsync(const Options: TPadesTrustValidationOptions; const Reply: TPadesTrustValidationReply): Boolean원본 소스를 수집하고 취소 가능한 단계적 신뢰 검증을 워커 스레드에 보냅니다
function ValidatePdfMac(const Password: AnsiString): TPdfMacValidationResult정확한 원본 소스 바이트와 공급된 비밀번호로 독립 PDF MAC을 확인합니다
function ValidatePdfA: TPdfAValidationResultPDF/A 마커, 콘텐츠 팩트, 정확한 ISO 19005-1 Info-to-XMP 값 동등성을 검증합니다
function ValidatePdfE: TPdfEValidationResult현재 열린 PDF에서 PDF/E-1 컨포먼스 마커를 검사하고 감지된 컨포먼스 레벨과 발견된 구체적 문제 집합을 담은 구조화 결과를 반환합니다
ValidatePdfRPDF/R-1 파일 마커, 메타데이터, 암호화 프로필, 래스터 전용 페이지 콘텐츠, 스트립 지오메트리, 색상, 실효 해상도, 압축 파라미터를 검증합니다
function ValidatePdfUa: TPdfUaValidationResultPDF/UA-1·PDF/UA-2 식별, 공유 접근성 규칙, 프로필별 PDF 2.0 요구사항을 검증합니다
function ValidatePdfVT: TPdfVTValidationResult현재 열린 PDF에서 PDF/VT 컨포먼스 마커를 검사하고 감지된 컨포먼스 레벨과 발견된 문제 집합을 담은 구조화 결과를 반환합니다
function ValidatePdfX: TPdfXValidationResult현재 열린 PDF에서 PDF/X 컨포먼스 마커를 검사하고 감지된 컨포먼스 레벨과 발견된 구체적 문제 집합을 담은 구조화 결과를 반환합니다
function VisitStructureElements(PageNumber; Options; Visitor; out Status): Integer페이지 배열을 실체화하지 않고 구조 요소 스냅샷을 메서드 콜백으로 스트리밍합니다
ViewerPreference인덱스 속성 — /ViewerPreferences 키의 정수 값(NumCopies, PrintScaling 등)을 반환합니다
WebLink페이지에서 자동 감지된 웹 링크의 URL과 경계 사각형입니다
WebLinkCount페이지 텍스트를 스캔해 식별된 자동 감지 웹 URL 수입니다
property XFA문서에 내장된 XFA XML 패킷을 반환합니다(PDF/A 2.0에서 이 형식은 폐기됐지만 Acrobat이 만든 폼은 아직 씁니다)
property XfaFormPackets: TXfaPacketListXFA 런타임이 노출하는 모든 내장 XFA 패킷을 TXfaPacketList 컬렉션으로 스냅샷합니다
property XfaRuntimeAvailable: Boolean로드된 문서에 XFA 런타임을 사용할 수 있는지 나타냅니다
property XfaStaticReadable: Boolean정적 XFA 패킷을 XFA 런타임 없이 읽을 수 있는지 나타냅니다
function LinkZOrderAtPoint(X, Y: Double): Integer페이지 좌표에서 맨 앞 링크 주석 z-순서를 반환하고 링크가 없으면 -1입니다
function FormFieldZOrderAtPoint(X, Y: Double): Integer페이지 좌표에서 맨 앞 폼 필드 z-순서를 반환하고 필드가 없으면 -1입니다
function TryGetAnnotationFileAttachment(AnnotIndex: Integer; out Attachment: TPdfAnnotationAttachment; MaxBytes: Cardinal = 67108864): Boolean주석에서 제한된 파일 첨부 메타데이터와 페이로드를 소유 레코드로 복사합니다
function GetLinkedAnnotationIndex(AnnotIndex: Integer; Relationship: TPdfAnnotationRelationship): Integer댕글링 참조 보호와 함께 Popup 또는 IRT 관련 주석 인덱스를 해석합니다
function GetLinkedAnnotationChain(AnnotIndex: Integer; Relationship: TPdfAnnotationRelationship; MaxDepth: Integer = 64): TPdfIntegerArray순환·깊이 보호와 함께 Popup 또는 IRT 관계 체인을 따라갑니다
function GetAnnotationDictionaryValue(AnnotIndex: Integer; const Key: WString): TPdfDictionaryValue주석 딕셔너리 항목에서 타입 값 하나를 읽습니다
function GetAttachmentDictionaryValue(Index: Integer; const Key: WString): TPdfDictionaryValue내장 파일 첨부 딕셔너리 항목에서 타입 값 하나를 읽습니다
procedure SetFocusableAnnotationSubtypes(const Subtypes: array of TPdfAnnotationSubtype)폼 핸들을 통해 어떤 주석 서브타입이 키보드 포커스를 받을 수 있는지 제한합니다
function GetFocusableAnnotationSubtypes: TPdfAnnotationSubtypes현재 키보드 포커스를 받을 수 있는 주석 서브타입을 반환합니다
procedure ClearFormSelectionRectsOnFormSelectionRect로 보고된 캐시된 폼 선택 사각형을 지웁니다

TPdfView 컴포넌트

TPdfView는 PDF 문서를 표시하고 상호작용하는 스크롤 가능한 시각 컨트롤입니다. Pdf: TPdf 참조가 필요합니다

게시 속성(디자인 타임)

속성타입기본값설명
Aboutstring컴포넌트 버전 정보입니다
ActiveBooleanFalse뷰어를 활성화/비활성화합니다
CurrentCharIndexInteger0호환을 위해 남겨진 애플리케이션 선택 문자 인덱스입니다
DisplayModeTPdfDisplayModedmSingleContinuous페이지 표시 모드입니다(dmSingleContinuous, dmTwoPageContinuous, dmTwoPageContinuousWithCover)
OptionsTRenderOptions[reLcd]렌더링 옵션입니다(LCD 텍스트, 주석, 그레이스케일 등)
PageShadowSizeInteger0선택적 드롭 섀도 크기(픽셀)입니다. 음수는 0으로 클램프됩니다
PageShadowColorTColorclGrayPageShadowSize > 0일 때 쓰이는 드롭 섀도 채우기 색상입니다
PageBorderColorTColorclBlack1픽셀 페이지 테두리 색상입니다
SmoothScrollBooleanFalse줄/페이지 스크롤바 명령을 타이머 기반 세그먼트로 애니메이션합니다. 썸 추적은 즉시 유지됩니다
LinkOptionsTPdfViewLinkOptions[loAutoGoto, loAutoOpenURI]링크 클릭 이벤트 뒤의 자동 goto, URI, launch, embedded-goto 동작을 제어합니다
AsyncRenderingBooleanFalse활성화하면 로딩 오버레이를 표시합니다. 워커 디스패치는 여전히 애플리케이션 소유입니다
LoadingTextstringLoadingAsyncRendering 오버레이에 그려지는 텍스트입니다. 빈 문자열이면 오버레이를 숨깁니다
LoadingColorTColorclYellowAsyncRendering 오버레이의 배경 색상입니다
NightDuotoneInkTColor$0000C8FFreNightDuotone 저시력 렌더 옵션이 쓰는 잉크 색상입니다
NightDuotonePaperTColorclBlackreNightDuotone 저시력 렌더 옵션이 쓰는 용지 색상입니다
ReadingHighlightColorTColorclSkyBlue더 넓은 읽기 하이라이트 오버레이 색상을 제어합니다
ReadingWordColorTColor$0000A5FF현재 단어 수준 reading 커서에 쓰이는 오버레이 색상을 제어합니다
ReadingWordFollowBooleanTrue읽기 추적 중 TPdfView가 현재 읽는 단어를 화면 안으로 스크롤하는지 제어합니다
PageNumberInteger1현재 페이지 번호(1 기반)입니다
PdfTPdfnilTPdf 컴포넌트 참조입니다
RotationTRotationro0표시 회전입니다(ro0, ro90, ro180, ro270)
ZoomDouble1.0확대 수준입니다(1.0 = 100%)

TPdfView 전용 공개 속성

속성타입설명
ActualSizeZoom[PageNumber]Double페이지를 실제 크기로 표시하는 확대 값입니다
property AllowFormEvents: Boolean뷰어가 폼 채우기 레이어로 전달하는 마우스, 키보드, 포커스 이벤트를 게이트합니다. 페이지 로드와 닫기는 게이트되지 않습니다
CanvasTCanvas뷰어에 커스텀 그리기를 위한 캔버스입니다
CharacterAngle[Index]Single문자 회전 각도(라디안)입니다
CharacterCountInteger현재 뷰어 페이지의 문자 수입니다
CharacterFontSize[Index]Double인덱스 문자의 폰트 크기입니다. FontSize[Index]는 호환 별칭으로 남습니다
CharacterFontWeight[Index]Integer인덱스 문자의 폰트 굵기입니다
CharacterOrigin[Index]TPoint뷰어 디바이스 좌표의 문자 원점입니다
CharacterRectangle[Index]TRect뷰어 디바이스 좌표의 문자 경계입니다
FontAscent[Index; FontSize]Single인덱스 텍스트 오브젝트가 쓰는 폰트의 어센트입니다
FontBaseName[Index]WString인덱스 텍스트 오브젝트의 베이스 폰트 이름입니다
FontData[Index]TBytes인덱스 텍스트 오브젝트의 원본 폰트 데이터입니다
FontDescent[Index; FontSize]Single인덱스 텍스트 오브젝트가 쓰는 폰트의 디센트입니다
FontFamilyName[Index]WString인덱스 텍스트 오브젝트의 폰트 패밀리 이름입니다
FontHandle[Index]FPDF_FONT인덱스 텍스트 오브젝트의 저수준 PDFium 폰트 핸들입니다
FontIsEmbedded[Index]Boolean텍스트 오브젝트의 폰트가 PDF에 임베드되어 있으면 True입니다
FontItalicAngle[Index]Integer텍스트 오브젝트 폰트의 이탤릭 각도입니다
FontWeight[Index]Integer텍스트 오브젝트 폰트의 굵기입니다
PageHeightZoom[PageNumber]Double뷰어에 페이지 높이를 맞추는 확대 값입니다
PageWidthZoom[PageNumber]Double뷰어에 페이지 너비를 맞추는 확대 값입니다
PageZoom[PageNumber]Double뷰어에 페이지 전체를 맞추는 확대 값입니다
StructureElementsTPdfStructureElements현재 뷰어 페이지의 평탄화된 논리 구조 요소입니다
WindowHandleHWND뷰어 컨트롤의 윈도우 핸들입니다

TPdfView 전용 메서드

function AddSearchTextHighlight(const Text: WString; MatchCase: Boolean = False; MatchWholeWord: Boolean = False): Integer현재 페이지에서 해당 텍스트의 모든 매치를 하이라이트하고 히트 수를 반환합니다
메서드설명
CharacterIndexAtPos(X, Y: Integer; ToleranceX, ToleranceY: Double): Integer뷰어 디바이스 좌표 지점 근처의 문자를 해석합니다. 근처에 문자가 없으면 -1을 반환합니다
DeviceToPage(X, Y: Integer; out PageX, PageY: Double): Boolean뷰어 디바이스 좌표를 페이지 좌표로 변환합니다
DeviceToPage(X, Y: Integer; var PageNumber: Integer; var PageX, PageY: Double): Boolean페이지 감지와 함께 뷰어 디바이스 좌표를 페이지 좌표로 변환합니다
DeviceToPage(Rectangle: TRect): TPdfRectangle뷰어 디바이스 사각형을 페이지 사각형으로 변환합니다
PageToDevice(PageX, PageY: Double; out X, Y: Integer): Boolean페이지 좌표를 뷰어 디바이스 좌표로 변환합니다
PageToDevice(Rectangle: TPdfRectangle): TRect페이지 사각형을 뷰어 디바이스 사각형으로 변환합니다
LinkAnnotationAtPos(X, Y: Integer): Integer화면 위치의 링크 주석 인덱스를 구합니다
LinkAnnotationAtPos(X, Y: Integer; out PageNumber: Integer): Integer페이지 번호와 함께 링크 주석 인덱스를 구합니다
WebLinkAtPos(X, Y: Integer): Integer화면 위치의 웹 링크 인덱스를 구합니다
WebLinkAtPos(X, Y: Integer; out PageNumber: Integer): Integer페이지 번호와 함께 웹 링크 인덱스를 구합니다
PaintSelection(SelectionStart, SelectionEnd: Integer; Mask: TColor)텍스트 선택 하이라이트를 그립니다
function PasteFormTextFromClipboard: Boolean클립보드 텍스트를 포커스된 폼 필드에 붙여넣습니다
FocusedFormFieldValue: WString대화형 캐럿에 의존하지 않고 FocusedFormFieldIndex로 현재 논리 폼 필드 값을 반환합니다
function FocusedFormOptionSelected(Index: Integer): Boolean포커스된 리스트 또는 콤보 박스의 옵션 하나가 선택되어 있는지 보고합니다
FocusedFormFieldName: WString현재 논리 폼 필드 표시 이름을 반환하며, AlternateName을 우선하고 Name으로 대체합니다
FocusedFormFieldDetails: TPdfFormFieldInfo현재 논리 폼 필드의 TPdfFormFieldInfo를 반환합니다
ReadingUnits: TPdfReadingUnits보조 청취 읽기와 시맨틱 탐색을 위한 문장 수준 reading unit을 반환합니다
PageWordBoxes: TPdfWordBoxes단어별 하이라이트를 위한 FTextPage 범위와 페이지 공간 사각형을 갖춘 word box를 반환합니다
SetReadingWord(const Word: TPdfWordBox)하나의 TPdfWordBox를 TPdfView의 현재 읽는 단어로 하이라이트합니다
ClearReadingWordTPdfView의 현재 단어 수준 reading 커서 오버레이를 지웁니다
function CopySelectedFormTextToClipboard: Boolean포커스된 폼 필드의 선택 텍스트를 클립보드로 복사합니다
function CutSelectedFormTextToClipboard: Boolean포커스된 폼 필드의 선택 텍스트를 클립보드로 잘라냅니다
TrackReadingWordAt(PageNumber, CharIndex: Integer): Integer페이지 문자 오프셋을 포함하는 TPdfWordBox로 매핑하고 하이라이트한 뒤 단어 인덱스를 반환합니다
RemoveObject(Index: Integer; DestroyObject: Boolean = True)현재 페이지에서 페이지 오브젝트를 제거하고, 페이지 콘텐츠를 다시 생성하며, 뷰어를 다시 그립니다
function SelectLineAt(Page, CharIndex: Integer): Boolean주어진 문자 인덱스를 포함하는 텍스트 줄 전체를 선택합니다
function SetFocusedFormOptionSelected(Index: Integer; Selected: Boolean): Boolean포커스된 리스트 또는 콤보 박스의 옵션 하나를 선택하거나 해제합니다
GenerateFormAppearances연결된 TPdf 컴포넌트를 통해 /AP appearance 스트림을 다시 생성합니다(TPdf.GenerateFormAppearances 참고)
FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): Integer현재 페이지의 주석과 폼 위젯을 정적 콘텐츠로 평탄화합니다
SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)현재 페이지 주석 인덱스로 AcroForm 필드 플래그를 설정합니다
SetFormFieldFlagsAt(X, Y: Integer; const Flags: TPdfFormFieldFlags)뷰어 컨트롤 좌표에서 AcroForm 필드 플래그를 설정합니다
function ReplaceFormTextAndKeepSelection(const Text: WString): BooleanFORM_ReplaceAndKeepSelection으로 포커스 폼 필드 텍스트를 교체하면서 선택 상태를 유지합니다
function FormFieldZOrderAt(X, Y: Integer): Integer클라이언트 좌표에서 맨 앞 폼 필드 z-순서를 반환하고 맞는 게 없으면 -1입니다
function LinkZOrderAt(X, Y: Integer): Integer클라이언트 좌표에서 맨 앞 링크 주석 z-순서를 반환하고 맞는 게 없으면 -1입니다

VCL에서 상속한 속성 & 메서드와 기타 멤버

API설명
property About: stringTPdfView가 게시한 About 멤버를 문서화합니다
Active뷰어를 활성화/비활성화하며, 바인딩된 PDF 문서를 열고 선택한 페이지를 렌더링합니다
property ActualSizeZoom[PageNumber: Integer]: Double호스트 화면에서 페이지를 실제 물리 크기로 표시하는 읽기 전용 확대 배율입니다
procedure AddImage(const FileName: string; X, Y, Width, Height: Integer); overloadTPdfView가 현재 표시하는 페이지에 이미지를 추가하며, 뷰어 클라이언트 좌표 사각형을 PDF 페이지 좌표로 변환합니다
function AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Integer): BooleanTPdf.AddJpegImage로 전달하는 TPdfView 래퍼입니다
procedure AddPicture(Picture: TPicture; X, Y: Integer); overloadTPdf.AddPicture로 전달하는 TPdfView 래퍼입니다
AlignPDF 뷰어가 부모 컨테이너 안에서 배치되는 방식을 제어합니다
property AllowUserPageChange: Boolean사용자 입력(마우스 휠, 스크롤바 드래그, 키 바인딩)이 현재 페이지를 바꿀 수 있게 합니다
property AllowUserTextSelection: Boolean뷰어에서 사용자 입력 기반 텍스트 선택을 게이트합니다
Anchors부모 크기가 바뀔 때 뷰어의 어느 모서리가 부모의 해당 모서리와 고정 거리를 유지하는지 지정합니다
property Annotation[Index: Integer]: TPdfAnnotationTPdf.Annotation으로 전달하는 TPdfView 래퍼입니다
property AnnotationCount: IntegerTPdf.AnnotationCount로 전달하는 TPdfView 래퍼입니다
property AsyncRendering: Boolean긴 렌더링 동안 작은 "Loading..." 오버레이를 그리게 하는 옵트인 플래그입니다. 스레드 밖 렌더링에 자체 워커를 쓰는 애플리케이션도 일관된 시각 표시를 공유합니다
property Bitmap[Index: Integer]: TBitmapTPdf.Bitmap으로 전달하는 TPdfView 래퍼입니다
property BitmapCount: IntegerTPdf.BitmapCount로 전달하는 TPdfView 래퍼입니다
property Canvas: TCanvas페이지가 렌더링된 뒤 컨트롤이 노출하는 그리기 캔버스입니다
property ChangePageOnMouseScrolling: BooleanSinglePage 모드에서 페이지 가장자리의 마우스 휠 스크롤이 다음 페이지로 넘어가는지 제어합니다
property Character[Index: Integer]: WideCharTPdf.Character로 전달하는 TPdfView 래퍼입니다
property CharacterAngle[Index: Integer]: SingleTPdf.CharacterAngle로 전달하는 TPdfView 래퍼입니다
property CharacterCount: IntegerTPdf.CharacterCount로 전달하는 TPdfView 래퍼입니다
property CharacterFontSize[Index: Integer]: DoubleTPdf.CharacterFontSize로 전달하는 TPdfView 래퍼입니다
property CharacterFontWeight[Index: Integer]: IntegerTPdf.CharacterFontWeight로 전달하는 TPdfView 래퍼입니다
property CharacterGenerated[Index: Integer]: BooleanTPdf.CharacterGenerated로 전달하는 TPdfView 래퍼입니다
function CharacterIndexAtPos(X, Y: Integer; ToleranceX, ToleranceY: Double): Integer현재 페이지에서 화면 픽셀 (X, Y)에 가장 가까운 문자 인덱스를 반환하고, 충분히 가까운 문자가 없으면 -1입니다
property CharacterIsHyphen[Index: Integer]: BooleanTPdf.CharacterIsHyphen으로 전달하는 TPdfView 래퍼입니다
property CharacterMapError[Index: Integer]: BooleanTPdf.CharacterMapError로 전달하는 TPdfView 래퍼입니다
property CharacterOrigin[Index: Integer]: TPointTPdf.CharacterOrigin으로 전달하는 TPdfView 래퍼입니다
property CharacterRectangle[Index: Integer]: TRectTPdf.CharacterRectangle로 전달하는 TPdfView 래퍼입니다
property Charcode[Index: Integer]: WideCharTPdf.Charcode로 전달하는 TPdfView 래퍼입니다
procedure ClearFormFieldFocus키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
procedure ClearHighlightTPdfView.ClearHighlight로 전달하는 TPdfView 래퍼입니다
procedure ClearReadingHighlight동기화된 TTS 재생이 쓰는 TPdfView 읽기 하이라이트 오버레이를 제어합니다
procedure ClearReadingWordTPdfView의 현재 단어 수준 reading 커서 오버레이를 지웁니다
procedure ClearSelection현재 텍스트 선택을 지우고 뷰를 무효화합니다
Color페이지 사각형 사이와 문서 가장자리 주위에 그려지는 배경 색상을 설정합니다
Constraints부모 크기가 바뀔 때 PDF 뷰어가 가질 수 있는 최소·최대 너비와 높이를 정의합니다
function CopySelectionToClipboard: Boolean선택한 Unicode 텍스트를 Windows 또는 네이티브 LCL 시스템 클립보드로 복사합니다
constructor Create(AOwner: TComponent); overrideTPdfView 컨트롤을 만들고 렌더링, 스크롤, 선택, 폼 상호작용 상태를 초기화합니다
procedure CreateAnnotation(const Annotation: TPdfAnnotation)TPdf.CreateAnnotation으로 전달하는 TPdfView 래퍼입니다
property CurrentCharIndex: Integer현재 마우스 커서(또는 마지막 hit-test 지점) 아래 문자의 읽기 전용 0 기반 인덱스입니다
procedure DeleteAnnotation(Index: Integer)TPdf.DeleteAnnotation으로 전달하는 TPdfView 래퍼입니다
destructor Destroy; overrideTPdfView가 파괴되기 전에 뷰어 리소스, 렌더링 버퍼, 문서 구독을 해제합니다
function DeviceToPage(X, Y: Integer; out PageX, PageY: Double): Boolean; overload뷰 안의 화면 픽셀 (X, Y)을 현재 페이지의 PDF 사용자 공간 점으로 변환합니다
property DisplayMode: TPdfDisplayMode레이아웃 모드입니다: 단일 페이지, 연속, 두 페이지, 두 페이지 연속, 표지 포함/미포함
property DragCursorTPdfView가 게시한 DragCursor 멤버를 문서화합니다
property DragKindTPdfView가 게시한 DragKind 멤버를 문서화합니다
property DragModeTPdfView가 게시한 DragMode 멤버를 문서화합니다
EnabledPDF 뷰어가 마우스·키보드 사용자 입력을 받는지 제어합니다
property Find: FPDF_SCHHANDLETPdf.Find로 전달하는 TPdfView 래퍼입니다
function FindFirst(const Text: WString; Options: TSearchOptions= []; StartIndex: Integer= 0; DirectionUp: Boolean= True): Integer지정한 텍스트 검색을 시작합니다. StartIndex는 0 기반이고 -1은 페이지 끝입니다. DirectionUp 파라미터가 검색 방향을 결정합니다
function FindNext: IntegerTPdf.FindNext로 전달하는 TPdfView 래퍼입니다
function FindPrevious: IntegerTPdf.FindPrevious로 전달하는 TPdfView 래퍼입니다
property FitMode: TPdfFitMode현재 페이지가 뷰어 클라이언트 영역 안에 어떻게 놓이는지 제어합니다. Resize와 PageNumber 변경 시 자동으로 다시 적용되어, 페이지 크기가 섞인 긴 문서도 계속 틀 안에 머릅니다
function FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): IntegerTPdf.FlattenPage로 전달하는 TPdfView 래퍼입니다
function FocusFormField(Index: Integer): Boolean키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusNextFormField: Integer키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusPreviousFormField: Integer키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusedFormFieldDetails: TPdfFormFieldInfo현재 논리 폼 필드의 TPdfFormFieldInfo를 반환합니다
function FocusedFormFieldIndex: Integer키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusedFormFieldName: WString현재 논리 폼 필드 표시 이름을 반환하며, AlternateName을 우선하고 Name으로 대체합니다
function FocusedFormFieldText: WString키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FocusedFormFieldTextDirection: TPdfFormTextDirection뷰어에서 포커스된 위젯의 메모리 내 텍스트 방향을 읽습니다
function FocusedFormFieldValue: WString대화형 캐럿에 의존하지 않고 FocusedFormFieldIndex로 현재 논리 폼 필드 값을 반환합니다
property FontAscent[Index: Integer; FontSize: Single]: SingleTPdf.FontAscent로 전달하는 TPdfView 래퍼입니다
property FontBaseName[Index: Integer]: WStringTPdf.FontBaseName으로 전달하는 TPdfView 래퍼입니다
property FontData[Index: Integer]: TBytesTPdf.FontData로 전달하는 TPdfView 래퍼입니다
property FontDescent[Index: Integer; FontSize: Single]: SingleTPdf.FontDescent로 전달하는 TPdfView 래퍼입니다
property FontFamilyName[Index: Integer]: WStringTPdf.FontFamilyName으로 전달하는 TPdfView 래퍼입니다
property FontFlags[Index: Integer]: IntegerTPdf.FontFlags로 전달하는 TPdfView 래퍼입니다
property FontHandle[Index: Integer]: FPDF_FONTTPdf.FontHandle로 전달하는 TPdfView 래퍼입니다
property FontIsEmbedded[Index: Integer]: BooleanTPdf.FontIsEmbedded로 전달하는 TPdfView 래퍼입니다
property FontItalicAngle[Index: Integer]: IntegerTPdf.FontItalicAngle로 전달하는 TPdfView 래퍼입니다
property FontSize[Index: Integer]: DoubleTPdf.FontSize로 전달하는 TPdfView 래퍼입니다
property FontWeight[Index: Integer]: IntegerTPdf.FontWeight로 전달하는 TPdfView 래퍼입니다
function FormCanRedo: Boolean포커스된 AcroForm 위젯에 redo할 undone 편집이 하나 이상 있는지 보고합니다
function FormCanUndo: Boolean포커스된 AcroForm 위젯에 undo할 편집이 하나 이상 있는지 보고합니다
property FormField[Index: Integer]: WStringTPdf.FormField로 전달하는 TPdfView 래퍼입니다
property FormFieldAt[X, Y: Integer]: WStringTPdf.FormFieldAt으로 전달하는 TPdfView 래퍼입니다
property FormFieldCount: IntegerTPdf.FormFieldCount로 전달하는 TPdfView 래퍼입니다
property FormFieldInfo[Index: Integer]: TPdfFormFieldInfoTPdf.FormFieldInfo로 전달하는 TPdfView 래퍼입니다
property FormFieldInfoAt[X, Y: Integer]: TPdfFormFieldInfoTPdf.FormFieldInfoAt으로 전달하는 TPdfView 래퍼입니다
function FormFieldTypeAt(X, Y: Integer; out FieldType: TPdfFormFieldType): Boolean뷰 픽셀을 페이지 좌표로 변환하고 네이티브 필드 타입 hit testing을 수행합니다
function FormFieldTabOrder: TPdfIntegerArray키보드, 음성, 접근성 워크플로를 위한 현재 페이지 AcroForm 논리 포커스 커서와 함께 동작합니다
function FormRedo: Boolean포커스된 AcroForm 위젯에서 가장 최근에 undo된 편집을 redo하며, PDFium의 위젯별 redo 이력을 구동합니다
function FormUndo: Boolean포커스된 AcroForm 위젯에서 가장 최근 편집을 undo하며, PDFium의 위젯별 undo 이력을 구동합니다
procedure GenerateFormAppearancesTPdf.GenerateFormAppearances로 전달하는 TPdfView 래퍼입니다
function GetSelectedFormText: WString뷰의 활성 페이지에서 포커스된 AcroForm 위젯 안에 현재 선택된 텍스트를 반환합니다
property HasFormFieldAt[X, Y: Integer]: BooleanTPdf.HasFormFieldAt으로 전달하는 TPdfView 래퍼입니다
function HasSelection: Boolean뷰어에서 현재 선택된 텍스트가 있는지 반환합니다
property HighlightColor: TColorHighlightSearchText가 반환한 각 매치 위에 칠해지는 사각형 색상입니다. 기본값은 clYellow이며, 애플리케이션이 하이라이트를 테마할 수 있게 게시되어 있습니다
function HighlightSearchText(const Text: WString; MatchCase: Boolean= False; MatchWholeWord: Boolean= False): IntegerTPdfView.HighlightSearchText로 전달하는 TPdfView 래퍼입니다
property Image[Index: Integer]: TPdfImageTPdf.Image로 전달하는 TPdfView 래퍼입니다
property ImageCount: IntegerTPdf.ImageCount로 전달하는 TPdfView 래퍼입니다
property LinkAnnotation[PageNumber, Index: Integer]: TLinkAnnotationTPdf.LinkAnnotation으로 전달하는 TPdfView 래퍼입니다
function LinkAnnotationAtPos(X, Y: Integer; out PageNumber: Integer): Integer; overload화면 픽셀 (X, Y)의 링크 주석 인덱스를 반환하고 없으면 -1입니다
property LinkAnnotationCount[PageNumber: Integer]: IntegerTPdf.LinkAnnotationCount로 전달하는 TPdfView 래퍼입니다
property LinkOptions: TPdfViewLinkOptions사용자가 링크를 클릭할 때 PDFium의 네 가지 링크 액션 타입 중 뷰가 무엇을 자동으로 따를지 제어하는 게시된 집합입니다
LoadingColor페이지가 아직 렌더링 중일 때 그려지는 “loading” 플레이스홀더의 채우기 색상입니다
LoadingText비동기 렌더링이 진행되는 동안 페이지 중앙에 표시되는 텍스트입니다
property NightDuotoneInk: TColorreNightDuotone 저시력 렌더 옵션이 쓰는 잉크 색상을 제어합니다
property NightDuotonePaper: TColorreNightDuotone 저시력 렌더 옵션이 쓰는 용지 색상을 제어합니다
property ObjectBitmap[Index: Integer]: TBitmapTPdf.ObjectBitmap으로 전달하는 TPdfView 래퍼입니다
property ObjectBounds[Index: Integer]: TPdfRectangleTPdf.ObjectBounds로 전달하는 TPdfView 래퍼입니다
property ObjectCount: IntegerTPdf.ObjectCount로 전달하는 TPdfView 래퍼입니다
property ObjectHandle[Index: Integer]: PointerTPdf.ObjectHandle로 전달하는 TPdfView 래퍼입니다
property ObjectTransparent[Index: Integer]: BooleanTPdf.ObjectTransparent로 전달하는 TPdfView 래퍼입니다
property ObjectType[Index: Integer]: TObjectTypeTPdf.ObjectType으로 전달하는 TPdfView 래퍼입니다
property Options: TRenderOptions렌더링 힌트와 TPdfView 렌더 후 저시력 옵션의 집합입니다
property Page: FPDF_PAGETPdf.Page로 전달하는 TPdfView 래퍼입니다
property PageBorderColor: TColor각 페이지 사각형 주위에 그려지는 1픽셀 테두리 색상입니다
property PageBounds: TPdfRectangleTPdf.PageBounds로 전달하는 TPdfView 래퍼입니다
property PageColor: TColor렌더링된 PDF 페이지 아래에 칠해지는 배경 색상으로, 주변 컨트롤의 Color와 분리되어 있습니다. 기본값은 clWhite라서 호스트 컨트롤 Color가 다크 테마여도 PDF 페이지는 종이처럼 흽게 유지됩니다
property PageCount: IntegerTPdf.PageCount로 전달하는 TPdfView 래퍼입니다
property PageHeight: DoubleTPdf.PageHeight로 전달하는 TPdfView 래퍼입니다
property PageHeightZoom[PageNumber: Integer]: Double페이지 높이를 뷰에 맞추는 읽기 전용 확대 배율입니다
property PageLabel: WStringTPdf.PageLabel로 전달하는 TPdfView 래퍼입니다
property PageNumber: IntegerTPdf.PageNumber로 전달하는 TPdfView 래퍼입니다
property PageRotation: TRotationTPdf.PageRotation으로 전달하는 TPdfView 래퍼입니다
PageShadowColor각 페이지 사각형 아래에 칠해지는 드롭 섀도의 채우기 색상입니다
property PageShadowSize: Integer연속 모드에서 각 페이지 주위에 그려지는 부드러운 섀도의 너비(픽셀)입니다
function PageToDevice(PageX, PageY: Double; out X, Y: Integer): Boolean; overloadDeviceToPage의 역입니다. PDF 사용자 공간 점을 뷰 안의 화면 픽셀로 변환합니다
property PageWidth: DoubleTPdf.PageWidth로 전달하는 TPdfView 래퍼입니다
property PageWidthZoom[PageNumber: Integer]: Double페이지 너비를 뷰에 맞추는 읽기 전용 확대 배율입니다
function PageWordBoxes: TPdfWordBoxes현재 TPdfView 페이지 단어에 대한 문자 범위와 페이지 공간 사각형을 갖춘 TPdfWordBox 레코드를 반환합니다
property PageZoom[PageNumber: Integer]: Double현재 DisplayMode에서 현재 페이지를 뷰에 맞추는 데 필요한 읽기 전용 확대 배율입니다
procedure PaintSelection(SelectionStart, SelectionEnd: Integer; Mask: TColor)TPdfView.PaintSelection으로 전달하는 TPdfView 래퍼입니다
property ParentShowHintTPdfView가 게시한 ParentShowHint 멤버를 문서화합니다
property Pdf: TPdf뷰어가 렌더링하는 문서의 TPdf 컴포넌트를 참조합니다
PopupMenuPDF 뷰어에 TPopupMenu를 연결해 페이지를 오른쪽 클릭하면 컨텍스트 메뉴가 나오게 합니다
ReadableContent스크린 리더, TTS, 접근성 워크플로를 위한 시맨틱 readable content 프래그먼트를 반환합니다
property ReadingHighlightColor: TColor동기화된 TTS 재생이 쓰는 TPdfView 읽기 하이라이트 오버레이를 제어합니다
function ReadingUnits: TPdfReadingUnits현재 TPdfView 페이지에서 문장 수준 TPdfReadingUnit 레코드를 만듭니다
property ReadingWordColor: TColor현재 단어 수준 reading 커서에 쓰이는 오버레이 색상을 제어합니다
property ReadingWordFollow: Boolean읽기 추적 중 TPdfView가 현재 읽는 단어를 화면 안으로 스크롤하는지 제어합니다
property Rectangle[Index: Integer]: TRectTPdf.Rectangle로 전달하는 TPdfView 래퍼입니다
function RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): IntegerTPdf.RectangleCount로 전달하는 TPdfView 래퍼입니다
procedure ReloadPageTPdf.ReloadPage로 전달하는 TPdfView 래퍼입니다
procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True)TPdf.RemoveObject로 전달하는 TPdfView 래퍼입니다
procedure RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = [])페이지 콘텐츠를 디바이스(화면, 비트맵, 프린터)에 렌더링합니다
function RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []): TBitmap페이지의 사각형 영역을 새 비트맵에 렌더링합니다. 반환된 비트맵은 수동으로 해제해야 합니다
property Rotation: TRotation렌더링된 페이지에 적용되는 시각 회전입니다(ro0 / ro90 / ro180 / ro270)
procedure SelectAll뷰어가 현재 표시하는 페이지의 모든 문자를 선택합니다
function SelectAllFormText: Boolean뷰의 활성 페이지에서 포커스된 AcroForm 위젯 안의 모든 문자를 선택합니다(위젯 안에서 Ctrl+A에 해당)
function SelectTextRange(Page, StartIndex, Count: Integer): Boolean사용자 마우스 입력 없이 TPdfView 프로그래매틱 텍스트 선택 모델을 읽거나 씁니다
function SelectWordBox(const Word: TPdfWordBox): Boolean현재 TPdfView 페이지에서 하나의 TPdfWordBox가 나타내는 텍스트 범위를 선택합니다
function SelectWordSpan(const Words: TPdfWordBoxes; StartIndex, EndIndex: Integer): Boolean같은 페이지의 TPdfWordBox 레코드 범위를 하나의 TPdfView 텍스트 선택으로 지정합니다
function SelectedText: WString현재 선택된 텍스트를 wide string으로 반환합니다
function SelectionCharCount: Integer현재 선택된 문자 총 개수를 반환합니다
property SelectionColor: TColor사용자가 드래그하는 텍스트 선택 오버레이의 채우기 색상입니다
function SelectionRanges: TPdfUserSelectionRanges사용자 마우스 입력 없이 TPdfView 프로그래매틱 텍스트 선택 모델을 읽거나 씁니다
function SelectionRectangles: TPdfRectangles사용자 마우스 입력 없이 TPdfView 프로그래매틱 텍스트 선택 모델을 읽거나 씁니다
procedure SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)TPdf.SetFormFieldFlags로 전달하는 TPdfView 래퍼입니다
procedure SetFormFieldFlagsAt(X, Y: Integer; const Flags: TPdfFormFieldFlags)TPdf.SetFormFieldFlagsAt으로 전달하는 TPdfView 래퍼입니다
function SetFocusedFormFieldTextDirection(Direction: TPdfFormTextDirection): Boolean포커스 위젯의 메모리 내 텍스트 방향을 바꾸고 페이지 장면을 다시 그립니다
procedure SetReadingHighlight(const Rects: TPdfRectangles; PageNumber: Integer)동기화된 TTS 재생이 쓰는 TPdfView 읽기 하이라이트 오버레이를 제어합니다
procedure SetReadingWord(const Word: TPdfWordBox)하나의 TPdfWordBox를 TPdfView의 현재 읽는 단어로 하이라이트합니다
function SetSelection(const Ranges: TPdfUserSelectionRanges): Boolean사용자 마우스 입력 없이 TPdfView 프로그래매틱 텍스트 선택 모델을 읽거나 씁니다
ShowHint마우스가 PDF 뷰어 위에 있을 때 표시되는 힌트 풍선을 켜거나 끕니다
property SmoothScroll: Boolean줄/페이지 스크롤바 명령에 타이머 기반 세그먼트 애니메이션을 켭니다. 썸 추적은 즉시 유지됩니다
property StructureElements: TPdfStructureElementsTPdf.StructureElements로 전달하는 TPdfView 래퍼입니다
TabOrder부모 탭 순환에서 PDF 뷰어의 위치를 정의합니다
TabStop사용자가 Tab 키로 PDF 뷰어에 포커스를 줄 수 있는지 나타냅니다
function Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WStringTPdf.Text로 전달하는 TPdfView 래퍼입니다
function TextInRectangle(Left, Top, Right, Bottom: Integer): WString; overloadTPdf.TextInRectangle로 전달하는 TPdfView 래퍼입니다
property TextPage: FPDF_TEXTPAGETPdf.TextPage로 전달하는 TPdfView 래퍼입니다
property Thumbnail: TBitmapTPdf.Thumbnail로 전달하는 TPdfView 래퍼입니다
property TouchTPdfView가 게시한 Touch 멤버를 문서화합니다
function TrackReadingWordAt(PageNumber, CharIndex: Integer): Integer페이지 문자 오프셋을 포함하는 TPdfWordBox로 매핑하고 하이라이트한 뒤 단어 인덱스를 반환합니다
property Transparent: BooleanTPdf.Transparent로 전달하는 TPdfView 래퍼입니다
procedure UpdatePageTPdf.UpdatePage로 전달하는 TPdfView 래퍼입니다
VisiblePDF 뷰어를 표시하거나 숨깁니다
property WebLink[PageNumber, Index: Integer]: TWebLinkTPdf.WebLink로 전달하는 TPdfView 래퍼입니다
function WebLinkAtPos(X, Y: Integer; out PageNumber: Integer): Integer; overload화면 픽셀 (X, Y)의 웹 링크 인덱스를 반환합니다
property WebLinkCount[PageNumber: Integer]: IntegerTPdf.WebLinkCount로 전달하는 TPdfView 래퍼입니다
property WindowHandle: HWND컨트롤의 네이티브 창 또는 widget 핸들이며, 선택한 플랫폼과 widget set에 맞게 해석합니다
property Zoom: Double확대 배율입니다. 1.0 = 100%(72 DPI에서 PDF 포인트 하나 = 화면 픽셀 하나)

TPdfView 이벤트

이벤트타입설명
OnPageChangeTNotifyEvent스크롤 중 표시 페이지가 바뀔 때 발생합니다
OnPageNumberChangedTNotifyEventPageNumber 속성이 수정될 때 발생합니다
OnAnnotationLinkClickTPdfViewAnnotationLinkClickEvent주석 링크 자동 액션 전에 발생합니다. Handled를 설정하면 기본 액션을 막습니다
OnWebLinkClickTPdfViewWebLinkClickEvent자동 감지 웹 링크 자동 액션 전에 발생합니다. Handled를 설정하면 ShellExecute를 막습니다
OnPaintTNotifyEvent커스텀 그리기 작업 중에 발생합니다
property OnAnnotationLinkClick: TPdfViewAnnotationLinkClickEventLinkOptions가 자동 처리하지 않는 /Annot Subtype Link를 사용자가 클릭할 때 발생합니다
property OnCanResizeTPdfView가 게시한 OnCanResize 이벤트를 문서화합니다
OnClick뷰어 안에서 사용자가 클릭하면(왼쪽 마우스 버튼) 발생합니다
property OnConstrainedResizeTPdfView가 게시한 OnConstrainedResize 이벤트를 문서화합니다
property OnContextPopupTPdfView가 게시한 OnContextPopup 이벤트를 문서화합니다
OnDblClick뷰어 안에서 사용자가 더블클릭하면(왼쪽 마우스 버튼) 발생합니다
property OnDragDropTPdfView가 게시한 OnDragDrop 이벤트를 문서화합니다
property OnDragOverTPdfView가 게시한 OnDragOver 이벤트를 문서화합니다
property OnEndDockTPdfView가 게시한 OnEndDock 이벤트를 문서화합니다
property OnEndDragTPdfView가 게시한 OnEndDrag 이벤트를 문서화합니다
property OnEnterTPdfView가 게시한 OnEnter 이벤트를 문서화합니다
property OnExitTPdfView가 게시한 OnExit 이벤트를 문서화합니다
property OnFormFieldFocusChange: TPdfFormFieldFocusEventTPdfView가 논리 AcroForm 필드 포커스 커서를 옮기거나 지울 때 발생합니다
property OnGestureTPdfView가 게시한 OnGesture 이벤트를 문서화합니다
property OnKeyDown: TKeyEvent컨트롤에 포커스가 있는 상태에서 키를 누르면 발생합니다
property OnKeyPress: TKeyPressEvent키보드가 만들어내는 문자마다 발생합니다
property OnKeyUp: TKeyEvent뷰어 컨트롤에 포커스가 있는 상태에서 키를 떼면 발생합니다
property OnMouseActivateTPdfView가 게시한 OnMouseActivate 이벤트를 문서화합니다
property OnMouseDown: TMouseEvent뷰 위에서 사용자가 마우스 버튼을 누르면 발생합니다
property OnMouseEnterTPdfView가 게시한 OnMouseEnter 이벤트를 문서화합니다
property OnMouseLeaveTPdfView가 게시한 OnMouseLeave 이벤트를 문서화합니다
property OnMouseMove: TMouseMoveEvent마우스가 뷰 위에서 움직일 때마다 발생합니다
property OnMouseUp: TMouseEvent사용자가 마우스 버튼을 떼면 발생합니다
property OnMouseWheel: TMouseWheelEvent뷰 위에서 휠을 돌리면 발생합니다
property OnMouseWheelDownTPdfView가 게시한 OnMouseWheelDown 이벤트를 문서화합니다
property OnMouseWheelUpTPdfView가 게시한 OnMouseWheelUp 이벤트를 문서화합니다
property OnPageChange: TNotifyEvent어떤 이유로든 현재 페이지가 바뀔 때 발생합니다
property OnPageNumberChanged: TNotifyEvent스크롤 때문에 보이는 페이지 번호가 바뀔 때 발생합니다
property OnPaint: TNotifyEvent뷰가 현재 페이지 그리기를 마친 뒤 발생합니다
property OnResize: TNotifyEvent컨트롤의 클라이언트 영역 크기가 바뀔 때마다 발생합니다
property OnSelectionChange: TNotifyEvent실체화된 텍스트 선택 범위가 실제로 바뀔 때 발생합니다
property OnStartDockTPdfView가 게시한 OnStartDock 이벤트를 문서화합니다
property OnStartDragTPdfView가 게시한 OnStartDrag 이벤트를 문서화합니다
property OnWebLinkClick: TPdfViewWebLinkClickEventLinkOptions가 자동 처리하지 않는 텍스트 감지 웹 URL을 사용자가 클릭할 때 발생합니다

TPdfDocumentSearch 클래스

현재 페이지의 네이티브 PDFium 핸들만 보유하는 lazy 순방향/역방향 문서 전체 텍스트 검색입니다

메서드

메서드설명
Next페이지, 문자 범위, 텍스트, 페이지 공간 사각형을 담은 TPdfDocumentSearchResult 하나를 반환합니다

속성

멤버타입설명
CurrentPageInteger현재 검색 중인 1 기반 페이지입니다
DirectionTPdfDocumentSearchDirection순방향 또는 역방향 순회입니다
FinishedBoolean더 이상 결과를 반환할 수 없는지 여부입니다
CancelledBoolean취소 토큰이 검색을 끝냈는지 여부입니다
MatchCountUInt64이미 반환된 결과 수입니다

TPdfProgressiveDocument 클래스

TPdfProgressiveDocument는 TPdf에서 파생되며, 원격 또는 성장 중인 랜덤 액세스 스트림이 요청된 바이트 범위를 받는 동안 PDFium의 네이티브 availability 세션을 살려 둡니다

메서드

메서드설명
BeginProgressiveLoad선택적 초기 연속 접두사와 함께 논리 크기 랜덤 액세스 세션을 시작합니다
CheckDocumentAvailabilityPDFium에 문서 메타데이터가 준비됐는지 묻고 병합된 다운로드 힌트를 반환합니다
OpenProgressiveDocument네이티브 linearized 문서 또는 완성된 non-linearized 커스텀 스트림을 엽니다
CheckFormAvailability폼 채우기 초기화를 게이트하고 추가 바이트 범위가 있으면 반환합니다
LoadAvailablePage필요한 바이트가 도착한 뒤 1 기반 페이지 하나를 게이트하고 활성화합니다
CancelProgressiveLoad의존 순서대로 모든 progressive 상태를 해제합니다

속성 및 이벤트

멤버타입설명
ProgressiveLoadingBoolean네이티브 availability 세션이 살아 있는지 여부입니다
LogicalFileSizeUInt64최종 PDF 콘텐츠 길이입니다
AvailableByteCountUInt64단조 증가하는 읽기 가능 접두사 길이입니다
LinearizationTPdfLinearization네이티브 linearization 판정입니다
FirstAvailablePageNumberInteger1 기반 첫 가용 페이지입니다
OnDataAvailableTPdfDataAvailableEventsparse range-cache availability 콜백입니다
RangeRequestsTPdfRangeRequestScheduler네이티브 availability 힌트로 채워진 소유 우선순위 스케줄러입니다

TPdfRangeRequestScheduler 클래스

sparse PDF 바이트 범위 요청을 병합, 우선순위화, 분할, 재시도, 취소, 정산하는 스레드 안전 트랜스포트 중립 스케줄러입니다

핵심 워크플로

메서드설명
EnqueueHints빠진 네이티브 바이트 범위를 추가하고 겹치는 낮은 우선순위 전송을 선점합니다
TryDequeue최고 우선순위 요청을 in-flight 집합으로 옮깁니다
CompleteRequest바이트가 저장된 뒤 전체 또는 부분 전송 응답을 커밋합니다
FailRequestMaxRetryCount 안에서 실패한 전송 시도를 재시도하거나 포기합니다
MarkAvailable외부 바이트를 기록하고 중복된 대기·활성 작업을 취소합니다
Cancel세대를 무효화하고 활성 전송 요청을 호스트에 알립니다

TPdfStreamInspector 클래스

FPdfStreamInspect 유닛이 제공하는 임의 물리 PDF 스트림 오브젝트의 읽기 전용 제한 인벤토리와 추출입니다

핵심 워크플로

멤버설명
Create호출자 스트림 위치를 보존하면서 바이트 배열 또는 시크 가능 스트림을 검사합니다
CopyRawData완전한 인코딩 페이로드 또는 검증된 원본 바이트 창을 대상 스트림으로 복사합니다
DecodeData지원되는 general 필터를 선언 순서대로 적용하고 남은 네이티브 코덱 경계를 보고합니다
Infos오브젝트 오프셋, 길이, 필터 메타데이터, DecodeParms, 네이티브 액세스 분류를 반환합니다

TPdfReadingSession 컴포넌트

TPdfReadingSession은 TTS 중립 읽어주기 상태 머신으로, TPdfSpokenText 청크, 호스트 음성 엔진 콜백, TPdfView 단어 커서 하이라이트를 조율합니다

메서드

메서드설명
Create(AOwner: TComponent)기본 추정 음성 페이싱으로 대기 상태 세션을 초기화합니다
LoadSpoken(const Chunks: TPdfSpokenTexts)현재 재생을 중지하고 순서대로 말할 청크를 복사합니다
Play로드된 첫 청크부터 재생을 시작합니다
PlayFrom(ChunkIndex: Integer)0 기반 청크 인덱스부터 재생을 시작합니다
PausepssSpeaking에서 pssPaused로 옮기고 OnPauseRequest를 발생시킵니다
Resume일시정지된 재생을 재개하거나, ResumeRestartsChunk가 켜져 있으면 현재 청크를 다시 말합니다
Stop재생을 취소하고 청크·단어 커서를 초기화하며, 연결된 TPdfView 단어 하이라이트를 지웁니다
FeedSpokenPosition(SpokenOffset: Integer)음성 엔진 오프셋을 PDF 페이지 문자로 되돌려 매핑하고 TPdfView 단어 커서를 움직입니다
Tick(SpeechStillBusy: Boolean; ElapsedMs: Cardinal = 0)다음 청크로 전진하거나, 재생을 마치거나, 음성이 아직 바쁜 동안 현재 단어를 추정합니다

속성

속성타입설명
StateTPdfReadingSessionState현재 상태: pssIdle, pssSpeaking, pssPaused
ChunkCountInteger로드된 spoken 청크 수입니다
CurrentChunkInteger0 기반 활성 청크 인덱스이며 활성 청크가 없으면 -1입니다
CurrentWordInteger현재 청크 안의 0 기반 활성 단어 인덱스이며 모르면 -1입니다
ViewTPdfView단어 커서 업데이트를 받는 뷰어입니다
EstimatePacingBoolean단어 위치 신호가 없는 음성 엔진을 위해 경과 시간으로 단어 위치를 추정합니다
EstimatedWordsPerMinuteInteger추정 페이싱이 쓰는 음성 속도입니다. 기본값 175
ResumeRestartsChunkBoolean일시정지가 대기 음성을 취소하는 엔진을 위해 Resume가 현재 청크를 다시 말하게 합니다

이벤트

이벤트타입설명
OnSpeakTPdfReadingSpeakEvent호스트가 청크를 말해야 할 때 발생합니다
OnCancelRequestTNotifyEvent호스트가 음성을 취소해야 할 때 발생합니다
OnPauseRequestTNotifyEvent호스트가 음성을 일시정지해야 할 때 발생합니다
OnResumeRequestTNotifyEvent호스트가 청크를 다시 시작하지 않고 음성을 재개해야 할 때 발생합니다
OnChunkChangeTPdfReadingChunkEvent활성 청크가 바뀔 때 발생합니다
OnWordChangeTPdfReadingWordEvent활성 단어가 바뀔 때 발생합니다
OnFinishedTNotifyEvent마지막 청크가 끝난 뒤 발생합니다

TPdfThumbnailView 컴포넌트

TPdfThumbnailView는 FPdfThumbnail 유닛의 스크롤 가능한 사이드 패널 컨트롤입니다. TPdf 컴포넌트에 연결되어 페이지 탐색을 위해 행마다 페이지 축소판 하나를 렌더링합니다

게시 속성

속성타입기본값설명
PdfTPdfnil축소판 렌더링에 쓰이는 문서 컴포넌트입니다
CurrentPageIndexInteger01 기반 선택 페이지 인덱스입니다. 0은 선택된 페이지가 없다는 뜻입니다
ThumbnailWidthInteger120대상 축소판 너비입니다. 48..800으로 클램프됩니다
ThumbnailHeightInteger160대상 축소판 높이입니다. 48..800으로 클램프됩니다
TextColorTColorclBlack페이지 번호 캡션 색상입니다
HoverColorTColorclMoneyGreen호버한 축소판 아래 행 하이라이트 색상입니다
SelectionColorTColorclHighlightCurrentPageIndex의 행 하이라이트 색상입니다
BorderColorTColorclGray축소판 테두리 색상입니다

이벤트

이벤트타입설명
OnPageClickTPdfThumbnailClickEvent사용자가 축소판 행을 왼쪽 클릭하면 발생합니다. APageIndex는 1 기반입니다

데이터 타입 및 열거형

핵심 타입

타입정의
WStringUnicode 텍스트용 wide string 타입입니다
TPdfIntegerArrayInteger 값의 동적 배열입니다
TPdfSingleArray텍스트 오브젝트 문자 위치에 쓰이는 Single 값의 동적 배열입니다
TPdfPrintPageRange레코드: StartPage, EndPage: Integer
TPdfPrintPageRanges1 기반 인쇄 페이지 범위의 동적 배열입니다
TPdfPoint레코드: X, Y: Double
TPdfRectangle레코드: Left, Top, Right, Bottom: Double
TPdfDocumentSearchDirectiondsdForward, dsdBackward
TPdfDocumentSearchResult1 기반 페이지, 네이티브 문자 범위, 매치된 텍스트, 페이지 공간 사각형을 저장합니다
TPdfReadingUnit텍스트, 시맨틱 종류, 페이지, 하이라이트 사각형, 소스 인덱스, 대체 텍스트 상태, 언어를 담은 spoken reading unit 하나를 저장합니다
TPdfReadingUnitsTPdfReadingUnit 레코드의 동적 배열입니다
TPdfWordBox단어 하나와 그 FTextPage 문자 범위, 페이지 공간 사각형, 1 기반 페이지 번호를 저장합니다
TPdfWordBoxesTPdfWordBox 레코드의 동적 배열입니다
TPdfSpokenSpan음성 엔진 텍스트 실행 하나를 소스 페이지 문자 범위로 되돌려 매핑합니다
TPdfSpokenSpansTPdfSpokenSpan 레코드의 동적 배열입니다
TPdfSpokenText음성 텍스트와 PDF 페이지 텍스트로의 span 매핑입니다
TPdfSpokenTextsTPdfSpokenText 청크의 동적 배열입니다
TPdfReadingSessionStatepssIdle, pssSpeaking, pssPaused
TPdfReadingSpeakEventTPdfReadingSession.OnSpeak의 콜백 시그니처입니다
TPdfReadingChunkEventTPdfReadingSession.OnChunkChange의 콜백 시그니처입니다
TPdfReadingWordEventTPdfReadingSession.OnWordChange의 콜백 시그니처입니다
TPdfStreamAdapter시크 가능 TStream을 PDFium FPDF_FILEACCESS 콜백으로 노출하는 클래스입니다
TPdfRandomAccessStore제한된 메모리, 안전한 임시 파일 spill, 위치 지정 I/O, 전송, flush, 저장소 진단을 갖춘 스레드 안전 시크 가능 스트림입니다
TPdfStorageBackendpsbMemory, psbTemporaryFile
TPdfXObjectCreateXObjectFromPage가 만든 재사용 가능 Form XObject 핸들의 수명 래퍼입니다
TPdfFileIdentifierTypefidPermanent, fidChanging
TPdfPageBoxpbMedia, pbCrop, pbBleed, pbTrim, pbArt
TPdfJavaScriptAction레코드: Name, Script: WString
TPdfJavaScriptActionsTPdfJavaScriptAction 레코드의 동적 배열입니다
TPdfVersionpvUnknown, pv10, pv11, pv12, pv13, pv14, pv15, pv16, pv17; pv13부터 pv17까지의 명시적 SaveAs 대상은 선택된 PDF 버전에 맞춰 정규화·검증됩니다
TPdfVersionInfo유닛 FPdfCompress의 헤더, catalog, 실효 코어, Adobe 개발자 확장 버전 팩트를 분리해 담은 레코드입니다
TRotationro0, ro90, ro180, ro270
TSaveOptionsaNone, saIncremental, saNoIncremental, saRemoveSecurity
TObjectTypeotUnknown, otText, otPath, otImage, otShading, otForm
TPageModepmNone, pmOutline, pmThumbs, pmFullScreen, pmOptionalContentGroup, pmAttachments, pmUnknown
TPdfActionacUnsupported, acGoto, acGotoRemote, acUri, acLaunch
TPdfPrintModeprEmf, prTextOnly, prPostScript2, prPostScript3, prPostScript2PassThrough, prPostScript3PassThrough, prEmfImageMasks, prPostScript3Type42, prPostScript3Type42PassThrough
TPdfDisplayModedmSingleContinuous, dmTwoPageContinuous, dmTwoPageContinuousWithCover
TPdfViewLinkOptionloAutoGoto, loAutoOpenURI, loAutoLaunch, loAutoEmbeddedGoto
TPdfViewLinkOptionsTPdfViewLinkOption 값의 집합입니다

검색 및 렌더링 옵션

타입값
TSearchOptionseCaseSensitive, seWholeWord, seConsecutive
TSearchOptionsTSearchOption의 집합입니다
TRenderOptionreAnnotations, reLcd, reNoNativeText, reGrayscale, reDebugInfo, reNoCatchException, reLimitCache, reHalftone, rePrinting, reReverseByteOrder, reNoSmoothText, reNoSmoothImage, reNoSmoothPath, reInvert, reNightDuotone
TRenderOptionsTRenderOption의 집합입니다

그리기 타입

타입값
TPdfFillModefmNone, fmAlternate, fmWinding
TPdfLineCaplcDefault, lcButt, lcRound, lcProjectingSquare
TPdfLineJoinljDefault, ljMiter, ljRound, ljBevel
TPdfPathSegmentTypepstUnknown, pstLineTo, pstBezierTo, pstMoveTo
TPdfOverlayPlacementopTopLeft, opTopCenter, opTopRight, opMiddleLeft, opCenter, opMiddleRight, opBottomLeft, opBottomCenter, opBottomRight, opStretch, opCustom
TPdfBlendModebmDefault, bmMultiply, bmScreen, bmOverlay, bmDarken, bmLighten, bmColorDodge, bmColorBurn, bmHardLight, bmSoftLight, bmDifference, bmExclusion, bmHue, bmSaturation, bmColor, bmLuminosity

주석 타입

타입설명
TPdfAnnotationSubtype주석 서브타입: Text, Link, FreeText, Line, Square, Circle, Polygon, PolyLine, Highlight, Underline, Squiggly, StrikeOut, Stamp, Caret, Ink, Popup, FileAttachment, Sound, Movie, Widget, Screen, PrinterMark, TrapNet, Watermark, 3D, RichMedia, XFAWidget, Redact
TPdfAnnotationFlag플래그: afInvisible, afHidden, afPrint, afNoZoom, afNoRotate, afNoView, afReadOnly, afLocked, afToggleNoView
TPdfAnnotationsubtype, 플래그, 색상, 텍스트, 사각형, AttachmentPointSets를 통한 모든 마크업 사분면 집합을 담은 레코드입니다

폼 타입

타입설명
TPdfFormTypeftUnknown, ftNone, ftAcroForm, ftXfaFull, ftXfaForeground
TPdfFormFieldTypefiUnknown, fiPushButton, fiCheckBox, fiRadioButton, fiComboBox, fiListBox, fiTextField, fiSignature
TPdfFormFieldFlagffReadOnly, ffRequired, ffNoExport, ffMultiline, ffChoiceCombo, ffChoiceEdit, ffPassword, ffChoiceMultiSelect
TPdfFormFieldInfoFieldType, Flags, Name, Value, AlternateName 등 속성을 담은 레코드입니다

PAdES 아카이브 타임스탬프 타입

타입설명
TPadesArchiveTimestampOptionsTSA URL, nonce, 토큰 용량, 선택적 DSS 갱신 플래그, 완전한 교체 DSS 자료, Default입니다
TPadesArchiveTimestampReport소스·결과 PAdES 레벨, 이전·결과 Document Time-stamp 수, 소스·결과 바이트 길이, DSS 업데이트 상태, 생성 시각, policy OID, 반환된 nonce입니다

PAdES 서명 알고리즘 타입

타입설명
TPadesSignatureAlgorithmFamilypsafUnknown, psafRsa, psafEcdsa, psafEd25519 또는 psafEd448
TPadesSignatureAlgorithmInfoCMS 다이제스트·서명 OID, X.509 공개키·명명 곡선 OID, 파라미터 존재 여부와 SHAKE 출력 길이, 패밀리, 독립 policy 상태입니다

PAdES 리비전 분석 타입

타입설명
TPadesRevisionAnalysisStatusprasNotChecked, prasNoLaterChanges, prasAllowed, prasDisallowed, prasSuspicious 또는 prasIndeterminate
TPadesRevisionChangeKindxref, 서명, 검증 자료, 폼 필드, 주석, 페이지 콘텐츠, 문서 구조, 메타데이터, 활성 콘텐츠, 삭제, 압축, 미지 변경을 분류합니다
TPadesRevisionObjectChange리비전, 오브젝트·세대 번호, 소스 오프셋 또는 오브젝트 스트림 번호와 인덱스, 분류, 결정, 권한, 재정의 상태를 보고합니다
TPadesSignatureRevisionAnalysis한 서명의 커버된 리비전, DocMDP·FieldMDP 정책, 이후 리비전, 위험, 상태, 오브젝트 변경을 보고합니다
TPadesRevisionAnalysisReport소스 상태, 리비전·서명 수, 위험, 상태, 서명별 분석, 파서 오류를 집계합니다

PAdES 증거 리포트 타입

타입설명
TPadesEvidenceReportOptions신뢰 설정과 소스 바이트, 서명, 리비전 변경, 검증 자료, 저장 바이트, VRI 예산입니다
TPadesValidationMaterialEvidence저장된 DSS 인증서, OCSP 응답, CRL 하나를 오브젝트 번호, 저장 길이, 종류, SHA-256으로 식별합니다
TPadesVriEvidence하나의 VRI 키와 딕셔너리 오브젝트를 인증서, OCSP, CRL 오브젝트 참조로 매핑합니다
TPadesSignatureEvidence한 서명의 PDFium 팩트, ByteRange, 콘텐츠·VRI 해시, CMS 정책, 검증 상태, 신뢰 경로 해시, DSS/VRI 커버리지, 리비전 결정을 서로 연관 짓습니다
TPadesEvidenceReport검증, 리비전, DSS, PDFium, 잘림, 서명별 증거를 ToJson과 ToCsv 내보내기와 함께 집계합니다

이미지 코덱, 문서 차이, 임포지션 타입

타입 또는 함수설명
TPdfImageCodecpicKeepOriginal, picJpeg, picJpx, picCcittGroup4 또는 picFlate
TPdfImageCodecs허용된 TPdfImageCodec 값의 집합입니다
TPdfImageCodecCandidate코덱 선택에 쓰이는 이미지 팩트와 측정된 인코딩 바이트 길이입니다
TPdfImageCodecDecision선택된 코덱, 원본·선택 바이트 수, 절감, 교체 결정입니다
SelectPdfImageCodec요청된 절감에 못 미치면 원본을 교체하지 않으면서 가장 작은 적격 측정 인코딩을 고릅니다
TPdfDocumentDiffOptions렌더링 크기, 색 허용 오차, 텍스트·지오메트리 게이트, 페이지 예산, Default입니다
TPdfPageDifference한 페이지의 텍스트, 지오메트리, 회전, 픽셀 수, 변경 경계 증거입니다
TPdfPageDifferencesTPdfPageDifference 레코드의 동적 배열입니다
TPdfDocumentDiffReport집계 동등성 결과, 페이지 수, 변경 페이지, 픽셀, 잘림, 상세 차이입니다
TPdfImpositionModepimNUp 또는 pimBooklet
TPdfImpositionOptions출력 크기, 그리드, 제본, 거터, 블리드, 크립, 역면 옵션, Default입니다
TPdfImpositionSlot하나의 임포지션 배치에 대한 용지, 면, 슬롯, 소스 페이지, 크립, 가용 경계입니다
TPdfImpositionSlotsTPdfImpositionSlot 레코드의 동적 배열입니다
TPdfImpositionPlan소스·패딩 수, 용지·면 수, 출력 그리드·지오메트리, 정렬된 슬롯입니다
TPdfImpositionExecutionReport네이티브 가져오기, 가져온 페이지, 고유 소스, 빈 슬롯, XObject 템플릿, 폼 오브젝트, 콘텐츠 생성, 출력 페이지, 네이티브 N-up 실행 팩트입니다
TPdfContentMarkSnapshots호출자 소유 불변 content-mark 스냅샷의 동적 배열입니다
TPdfPageObjectSnapshots호출자 소유 불변 페이지 오브젝트 스냅샷의 동적 배열입니다
BuildPdfImpositionPlan문서를 열거나 바꾸지 않고 N-up 또는 소책자 슬롯 플랜을 만들고 검증합니다

레코드 타입

타입필드
TBookmarkHandle, Title, PageNumber, Destination, DescendantCount, IsOpen, Action, ActionPageNumber, ActionDestination, ActionPath, HasColor, Color, Style
TDestinationHandle, Name, PageNumber, ViewMode, ViewParameterCount, ViewParameters, HasX, X, HasY, Y, HasZoom, Zoom
TPdfDocumentMetadataTitle, Author, Subject, Keywords, Creator, Producer, CreationDate, ModifiedDate
TPdfBatchMergeSourceFileName, PageRange, Password 필드와 FromFile 생성자
TPdfBatchMergeOptionsErrorPolicy, FormPolicy, OutlinePolicy, ResourcePolicy, PageChunkSize, InsertAt, CreateDestination, CopyViewerPreferences, RollbackOnCancelOrFailure, CancellationToken, OnProgress 필드와 Default 상수
TPdfBatchMergeReport최종 상태, 소스와 페이지 카운터, 네이티브 임포트 지표, 동시 오픈 소스 최대치, 정책 감지 결과, 대상 및 뷰어 기본 설정 상태, 오류 텍스트, 이슈 목록
TLinkAnnotationHandle, Rectangle, PageNumber, Action, ActionPageNumber, ActionPath, Points
TWebLinkUrl: WString, Rectangles: TPdfRectangles
TPdfImageWidth: Integer, Height: Integer, Data: TBytes
TPdfSignatureContent: TBytes, Encoding: WString, Reason: WString, Time: WString, Permission: Integer
TPdfFormSelectionRectPageNumber: Integer, Bounds: TPdfRectangle
TPdfStructureElement계층 구조, 대체 텍스트, MCID, 표/목록 속성, 네임스페이스 및 네임스페이스 역할 매핑, 참조, 연관 파일, 주석 설명, 위젯 소유 관계, 레이블, 외형 정보
TPdfStructureReadOptions반복 구조 순회를 위한 최대 깊이, 요소, 속성 값, 기한, 속성 포함 제어입니다
TPdfStructureReadStatus방문 카운터와 완료, 깊이, 요소, 속성, 기한, 방문자 중단 결과입니다
TPdfUaNamespaceKindpunkMissing, punkPdf17, punkPdf20, punkMathMl, punkAria, punkDpub, punkCustom

탐색 및 권한 타입

타입값
TPdfDestinationViewModedvmUnknown, dvmXYZ, dvmFit, dvmFitHorizontal, dvmFitVertical, dvmFitRectangle, dvmFitBoundingBox, dvmFitBoundingBoxHorizontal, dvmFitBoundingBoxVertical
TPdfPermissionpermPrint, permModify, permCopy, permAnnotate, permFillForms, permAccessibility, permAssemble, permPrintHighQuality
TPdfPermissionsTPdfPermission 값의 집합입니다

문서 로딩, 저장 및 스트림 타입

타입값
TPdfLoadModeplmCompatible, plmStrict, plmRecovery — 로드가 어디까지 복구할 수 있는지 고릅니다
TPdfLoadStatusplsNotAttempted, plsLoaded, plsLoadedWithRecovery, plsRejected, plsFailed
TPdfLoadRecoveryRouteplrrNone, plrrNativeCrossReference, plrrNativeCrossReferenceRebuild
TPdfContentNormalizeStatuspcnsNotStarted, pcnsCompleted, 그리고 제한 초과 실패 사유인 pcnsInputLimitExceeded, pcnsOutputLimitExceeded, pcnsTokenLimitExceeded, pcnsMalformedToken, pcnsUnresolvedInlineImage, pcnsUnbalancedState, pcnsUnsupportedFilter, pcnsEncryptedDocument, pcnsSignedDocument, pcnsDocumentRewriteFailed
TPdfObjectPatchOperationKindpopSet, popRemove — SaveAsObjectGraphPatched가 쓰는 연산 종류
TPdfObjectPatchValue레코드: Kind, BooleanValue, IntegerValue, RealValue, TextValue, ReferenceObjectNumber, ReferenceGeneration
TPdfOptionalContentStateocsUnspecified, ocsOn, ocsOff
TPdfStreamDecodeLevelpsdlRaw, psdlGeneral, psdlFull
TPdfStreamNativeAccesspsnaNone, psnaImageObject, psnaEmbeddedFile
TPdfStreamReadStatuspsrsCompleted, psrsPartiallyDecoded, 그리고 psrsInvalidIndex, psrsSourceLimitExceeded, psrsExpansionRatioExceeded, psrsUnsupportedFilter, psrsEncrypted, psrsMalformed 같은 제한 읽기 거부 사유
TPdfAFRelationshipafSource, afData, afAlternative, afSupplement, afUnspecified, afEncryptedPayload, afFormData, afTemplate — ISO 32000-2 7.11.4의 associated-file 관계
TDpmTargetdptRoot, dptLeaf — PDF/VT 문서 파트 메타데이터가 붙는 위치
TPdfXmpNamespace레코드: Prefix, Uri — TPdfXmpPacket의 네임스페이스 하나
TPdfAMetadataValuesPDFium이 디코딩한 매핑 Info 값과 명시적 키 존재 집합을 담은 레코드입니다
TPdfAMetadataComparison매핑된 필드 하나, 동등성 상태, 비교된 두 값을 담은 레코드입니다
TPdfAMetadataReportXMP 가용성, 파싱 상태, 필드별 비교, 불일치 필드, IsEquivalent를 담은 레코드입니다
TPdfLoadIssue레코드: Code, Severity, Offset, ObjectNumber, RevisionIndex, MessageText — 제한된 cross-reference 감사의 발견 항목 하나
TPdfLoadIssueCode감사 발견 코드입니다. plicHeaderMissing, plicStartXrefInvalid부터 plicXrefEntryConflict, plicNativeCrossReferenceRebuild, plicStrictModeRejected, plicRepairVerificationFailure까지
TPdfLoadIssueSeverityplisInformation, plisWarning, plisError
TPdfObjectPatchValueKindpovNull, povBoolean, povInteger, povReal, povName, povTextString, povReference
TPdfStreamFilterInfo레코드: 필터 Name, Kind와 디코드 파라미터 Predictor, Colors, BitsPerComponent, Columns, EarlyChange
TPdfOptionalContentGroup하나의 OCG를 기술하는 레코드입니다: 오브젝트 번호·세대, Name, Intents, 보기/인쇄/내보내기 상태, 페이지 요소 서브타입, 언어, 사용자 타입·이름, 선택적 줌 범위, EffectiveVisible, Locked, 라디오 그룹 인덱스
TPdfOptionalContentConfiguration하나의 OCG 구성을 기술하는 레코드입니다: 이름, creator, BaseState, intents, on/off/locked/order 그룹 목록, 라디오 그룹, 자동 상태 존재 여부
TPdfOptionalContentMembership하나의 OCMD를 기술하는 레코드입니다: 참조된 그룹, Policy, 가시성 표현식, EffectiveVisible
TPdfOptionalContentMembershipPolicyocmpAnyOn, ocmpAllOn, ocmpAnyOff, ocmpAllOff, ocmpUnknown
TPdfOptionalContentBaseStateocbsOn, ocbsOff, ocbsUnchanged
TPdfOptionalContentRadioGroup레코드: 하나의 라디오 버튼 집합처럼 동작하는 그룹 오브젝트 번호들
TPdfOptionalContentStateChange레코드: GroupObjectNumber와 기록할 Visible 상태
TPdfXmpValue레코드: Kind(pxvkText, pxvkUri, pxvkResource), Text, Language, Qualifiers, RawXml
EPdfXmpError잘못된 XMP 입력에 대해 발생하는 예외입니다
TXfdfNameValuePair레코드: Name, Value — XFDF 문서의 일반 항목 하나
TPdfDpmEntry레코드: Name, Value, IsNestedDict — PDF/VT 문서 파트 메타데이터 항목 하나
TPdfVT2sValidationIssuePDF/VT-2s MIME 스트림 검증의 발견 항목입니다. 예: vtmviNotMultipart, vtmviMissingStreamVersion, vtmviMissingBoundary, vtmviNoInlinePdf, vtmviInlinePdfNotPdfVT

텍스트, 폰트 및 OCR 타입

타입값
TPdfCidFontEmbeddingModepcfemFull, pcfemSubsetPreferred, pcfemSubsetRequired
TPdfSystemFontRequest레코드: FaceName, Weight, Italic, Charset, PitchFamily — 시스템 폰트 공급자에게 넘기는 폰트 요청
TPdfSystemFontData레코드: FaceName, FontData, Charset, TTCIndex — 시스템 폰트 공급자가 반환한 폰트 바이트
TPdfShapedGlyph레코드: GlyphID, Advance, OffsetX, OffsetY, ClusterStart, ClusterLength
TPdfTextShaper단일 Shape 메서드를 가진 추상 클래스입니다. 구현하면 외부 셰이핑 엔진을 AddShapedText에 꽂을 수 있습니다
TPdfTableDetectionModeptdmRuled, ptdmWhitespace
TPdfTableContinuationptcNone, ptcStart, ptcMiddle, ptcEnd — 표 연속 체인 안에서 페이지 그리드의 위치
TPdfOcrImage레코드: PageNumber, Width, Height, Stride, Dpi, PixelFormat, Pixels — OCR 공급자에게 넘기는 페이지 래스터
TPdfOcrQuad레코드: TopLeft, TopRight, BottomRight, BottomLeft, FromRectangle 포함
TPdfOcrPoint레코드: 페이지 단위의 X, Y
TPdfOcrPixelFormatpopfBgra32 — OCR 공급자에게 넘기는 픽셀 레이아웃
TPdfOcrPageStatuspopsPending, popsCompleted, popsSkippedExistingText, popsCancelled, popsFailed
TPdfOcrPageReport레코드: 페이지 번호, Status, 이미지 크기, 감지/삽입/거부 단어 수와 오류 메시지
TPdfShapedRun레코드: 소스 텍스트 범위, 시각 위치·너비, BidiLevel, IsRightToLeft, 셰이핑된 Glyphs
TPdfReflowNode레코드: 노드 Kind, 부모 인덱스, 깊이, 페이지, 텍스트, 경계, 언어, 읽기 순서 소스, 제목 레벨, 표 행/열 지오메트리, 헤더 플래그, 신뢰도
TPdfReflowNodeKindprnkPage, prnkParagraph, prnkHeading, prnkList, prnkListItem, prnkFigure, prnkCaption, prnkTable, prnkTableRow, prnkTableCell, prnkOther
TPdfSearchHighlightRange레코드: StartIndex, Count — 하이라이트된 문자 범위 하나
TPdfUserSelectionRange레코드: 1 기반 Page, 그 페이지 텍스트 안의 StartIndex, Count
TPdfSelectionPoint레코드: 1 기반 Page, CharIndex. 페이지가 양수가 아니거나 인덱스가 -1이면 선택 없음
EPdfTextShapingError텍스트 셰이핑이 실패하면 발생하는 예외입니다

레이아웃 빌더 타입

타입값
TPdfLayoutItem레이아웃 흐름의 항목 하나입니다. Kind로 텍스트, 스페이서, 구분선, 이미지, 페이지 XObject, 페이지 나눔, 캐시 노드, 링크, 시맨틱 노드 중 하나를 고릅니다
TPdfLayoutItemKindpliText, pliSpacer, pliRule, pliImage, pliPageXObject, pliPageBreak, pliCachedNode, pliLink, pliSemanticNode
TPdfLayoutTextStyle레코드: 폰트 이름·크기, 색·알파, 줄 높이, 정렬, 하위 호환 keep-together, 긴 단어 분리, 앞/뒤 간격이며 Default 생성자가 있습니다
TPdfLayoutConstraints레코드: keep-together, keep-with-next, 앞/뒤 페이지 나눔, widow·orphan 줄 한도이며 보존하는 Default 생성자가 있습니다
TPdfLayoutPageSettings레코드: 페이지 크기와 네 여백, 헤더·푸터 높이이며 A4, Letter 생성자가 있습니다
TPdfLayoutSemanticRoleplsrArtifact, plsrParagraph, plsrHeading1부터 plsrHeading6, plsrList, plsrListItem, plsrListLabel, plsrListBody, plsrTable, plsrTableRow, plsrTableHeader, plsrTableData, plsrFigure, plsrCaption, plsrLink, plsrSection, plsrDivision
TPdfLayoutTableScopepltsNone, pltsRow, pltsColumn, pltsBoth
TPdfLayoutListNumberingplnNone, plnDisc, plnCircle, plnSquare, plnDecimal, plnUpperRoman, plnLowerRoman, plnUpperAlpha, plnLowerAlpha
TPdfLayoutAlignmentplaLeft, plaCenter, plaRight
TPdfLayoutCommandKindplcText, plcRule, plcImage, plcPageXObject, plcCachedNode, plcLink
TPdfLayoutCommand레코드: 종류, 페이지 번호, 경계, 텍스트·폰트, 색·알파, 정렬, 두께, 파일 이름 또는 URI, 소스, 시맨틱 요소 인덱스, marked-content id, 주석 인덱스를 갖춘 해결된 그리기 명령 하나
TPdfLayoutRect레코드: 레이아웃 단위의 Left, Top, Width, Height
TPdfLayoutSemanticElement레코드: 구조 요소 하나의 Semantics와 그 ParentElementIndex
EPdfLayoutError잘못된 레이아웃 입력에 대해 발생하는 예외입니다

PAdES 타입

타입값
TPadesSeedValueConstraintpsvcFilter, psvcSubFilter, psvcVersion, psvcReasons, psvcLegalAttestation, psvcAddRevocationInfo, psvcDigestMethod
TPadesSeedValueConstraintsTPadesSeedValueConstraint가 나타내는 필수 서명 seed 값 항목의 집합입니다
TPadesSignatureFieldOptions레코드: 필드 이름, 필수 seed 값, 허용 사유와 법적 증명, 받아들일 인증서, 인증서 요구사항, FieldMDP 잠금 액션·필드 이름, DocMDP 인증 권한
TPadesLevelplUnknown, plNone, plB_B, plB_T, plB_LT, plB_LTA — EN 319 142-1 컨포먼스 레벨
TPadesCryptoStatuspcsNotChecked, pcsValid, pcsInvalid, pcsUnsupported, pcsIndeterminate
TPadesValidationSourceStatuspvssUnavailable, pvssOriginalBytes, pvssIncomplete
TPadesTrustNetworkPolicyptnpOffline, ptnpOnline
TPadesTrustValidationAsyncStatusptvasSuccess, ptvasCancelled, ptvasFailure — ValidatePadesTrustAsync가 보고하는 결과
TPadesRevisionDecisionprdAllowed, prdDisallowed, prdSuspicious, prdIndeterminate
TPadesFieldMdpActionpfmaNone, pfmaAll, pfmaInclude, pfmaExclude, pfmaUnknown
TWinCmsVerifyStatuswcvsUnavailable, wcvsValid, wcvsInvalid, wcvsUnsupported, wcvsIndeterminate — Windows CMS 검증 결과
TPdfMacValidationStatuspmvsValid, pmvsNotPresent, pmvsInvalid, pmvsUnsupported
TPadesSignatureValidation레코드: 바이트 범위, CMS 서명, 알고리즘 정책, 서명 인증서, 체인 신뢰, 폐기, 타임스탬프 등가물별 서명 상태와 네이티브 오류 코드·알고리즘 정보
TPadesValidationIssueEN 319 142-1과 ISO 32000-1 12.8에 대해 제기되는 발견 항목입니다. 중복 필수 키, 잘못된 Filter·Type 값, 정확한 Contents 배제, 인증서, 폐기, 타임스탬프 요구사항을 포함합니다
TPadesTrustValidationStageptvsStarting, ptvsReadingSource, ptvsParsingSignatures, ptvsCryptographicIntegrity, ptvsCertificateChain, ptvsAiaRetrieval, ptvsOcspRetrieval, ptvsCrlRetrieval, ptvsTimestampToken, ptvsCompleted
TPadesTrustValidationProgress레코드: 현재 Stage, 서명 인덱스·개수, 완료 백분율
TPadesRevisionRisk리비전별로 보고되는 위험입니다. 예: prrMalformedRevisionChain, prrSignatureObjectRedefined, prrPageContentChanged, prrActiveContentAdded, prrResourceLimitExceeded
TPadesDssMaterial레코드: 문서 security store에 추가된 인증서, CRL, OCSP 응답 하나의 DerBytes
TWinCmsVerifyOptions레코드: OnlineRetrieval, CheckRevocation, UrlRetrievalTimeoutMs, OnCheckpoint 콜백이며 Default 생성자가 있습니다
TWinCmsVerifyStagewcvstCryptographicSignature, wcvstChainBuild, wcvstOnlineRetrieval, wcvstRevocationCheck

배치, 검증 및 폼 타입

타입값
TPdfBatchMergeErrorPolicybmepStop, bmepSkip
TPdfBatchMergeFormPolicybmfpPreserveNative, bmfpFlatten, bmfpReject
TPdfBatchMergeOutlinePolicybmopDiscard, bmopReject
TPdfBatchMergeResourcePolicybmrpSourceScoped, bmrpChunked
TPdfBatchMergeStatusbmrsCompleted, bmrsCompletedWithErrors, bmrsCancelled, bmrsFailed
TPdfPagePlanOperationppoDelete, ppoMove, ppoInsert
TPdfPagePlanDecisionppdAllow, ppdReview, ppdReject
TPdfValidationPredicateKindpvpkIssueAbsent, pvpkStandardPass, pvpkCustom
TPdfValidationRun레코드: 통과/실패/건너뜀/오류 수를 갖춘 규칙 결과, 방문한 오브젝트, 증거 바이트, 피크 예약 메모리, 경과 밀리초, IsComplete/IsCompliant
TPdfBatchValidationStatuspbvsComplete, pbvsPartial, pbvsCancelled, pbvsFailed
TPdfInkGesture레코드: 잉크 스트로크 하나를 기술하는 Points 배열
TPdfFormFillInfoPDFium FPDF_FORMFILLINFO 콜백 블록과 소유 TPdf를 짝지운 packed record입니다. 폼 채우기 브리지가 내부적으로 사용합니다
TPdfBatchMergeIssue레코드: 실패하거나 건너뛴 소스 하나의 SourceIndex, FileName, MessageText
TPdfBatchMergeProgress레코드: Stage, 소스 인덱스·개수, 파일 이름, 가져온 소스/페이지/네이티브 호출 수
TPdfBatchMergeProgressStagebmpsStarted, bmpsOpeningSource, bmpsImportingPages, bmpsSourceCompleted, bmpsSourceFailed, bmpsRollingBack, bmpsCompleted, bmpsCancelled, bmpsFailed
TPdfBatchValidationItem레코드: 파일 이름, Status, preflight 리포트, 검증 실행, 오류 메시지, 경과 밀리초
TPdfBatchValidationItemStatuspbvisPending, pbvisPass, pbvisFail, pbvisCancelled, pbvisError
TPdfValidationRuleResult레코드: 규칙 id, 프로필, 조항, 범주, 심각도, Status, 증거, 수정 힌트, 경과 밀리초
TPdfValidationRuleStatuspvrrsPass, pvrrsFail, pvrrsSkipped, pvrrsError
TPdfValidationRunStatuspvrsComplete, pvrsFastFailed, pvrsBudgetExceeded, pvrsCancelled, pvrsError
TPdfARepairStep레코드: 범주, 이슈 코드, 증거, 의존성, Safety, 전체 재작성·서명 무효화·차단 상태 플래그를 갖춘 정렬된 복구 액션
TPdfARepairCategoryparcSecurity, parcFonts, parcColour, parcAttachments, parcStructure, parcMetadata, parcOther
TPdfARepairSafetyparsAutomatic, parsReviewRequired, parsManual
TPdfXProductionIssue레코드: PDF/X 프로덕션 검사의 이슈 Kind, 심각도, 페이지 번호, 오브젝트 인덱스, 증거
TPdfXProductionIssueKindpxpikOutputIntent, pxpikPageBox, pxpikFont, pxpikColourant, pxpikTransparency, pxpikOverprint, pxpikSeparation, pxpikImageResolution
TPdfXProductionPage레코드: 페이지별 박스 존재 여부, 오브젝트 수, 투명성 플래그, 최소 실효 DPI
TPdfRPageFacts레코드: PDF/R 페이지 팩트 — 미디어·이미지 지오메트리, 오브젝트 수, 픽셀 크기, 해상도, 비트 깊이, 색 공간, 필터
TPdfPagePlanImpactppiBookmarks, ppiNamedDestinations, ppiPageLabels, ppiFormFields, ppiStructureTree, ppiSignatures, ppiImportedFeaturesUnknown

병렬 렌더링 및 인쇄 출력 타입

타입값
TPdfParallelRenderOptions레코드: DPI, 워커, 페이지별 픽셀·총 출력 예산, 회전, 네이티브 렌더 옵션, 배경 색상
TPdfBandedImageFormatpbifCustom, pbifPng, pbifTiff
TPdfBandedImageStreamOptions레코드: 형식, 밴드 높이, PNG 압축 레벨, 최대 인코딩 출력 바이트이며 Default로 초기화합니다
TPdfBandedImageReport레코드: 형식, 크기, 렌더링·인코딩 밴드 수, 인코딩 행, 피크 밴드 바이트, 출력 바이트, 완료 상태
TPdfBandedImageEncoderBeginImage, 순차 WriteBand, EndImage, 선택적 바이트 텔레메트리를 갖춘 추상 호출자 코덱 계약입니다
TPdfParallelModuleIdentity레코드: 전용 모듈 FileName, 네이티브 InitializationAddress, 핸들 해제 결과인 Unloaded를 보관합니다. 플랫폼은 매핑을 유지할 수 있습니다
TPdfParallelModuleIdentities렌더링 작업의 격리된 워커에 대해 보관하는 TPdfParallelModuleIdentity 레코드 배열
TPdfParallelRenderReport레코드: 순서가 보존된 결과, 워커 및 상태 수, 보관된 출력 바이트, 경과 시간, 소스 크기, 소스 메모리 최대 사용량, 저장소 백엔드, 공유 저장 방식, Modules 식별자 진단
TPdfParallelPageResult레코드: 페이지 번호, 픽셀 크기·Stride, PixelFormat, top-down Pixels, Status, 오류 메시지, 경과 밀리초
TPdfParallelPixelFormatpppfBgra, pppfRgba
TPdfParallelRenderStatuspprsPending, pprsSucceeded, pprsCancelled, pprsFailed
TPdfParallelSourceBackingKindppsbNone, ppsbSharedMemory, ppsbMemoryMappedFile, ppsbRandomAccessStore
TPdfSpotPlateInfo레코드: SpotPlates가 보고하는 0 기반 Index와 분판 Name

FPdfAsync 헬퍼 유닛

타입설명
IPdfCancellationTokenIsCancelled, ThrowIfCancelled, RegisterCallback을 갖춘 읽기 전용 취소 토큰입니다
IPdfCancellationTokenSourceToken과 Cancel을 노출하는 소유자 측 취소 소스입니다
TPdfCancellationTokenSource기본 구현입니다. TPdfCancellationTokenSource.New를 사용하세요
EPdfOperationCancelled취소 뒤 ThrowIfCancelled가 발생시키는 예외입니다
TPdfFutureStatuspfsSuccess, pfsCancelled, pfsFailure
TPdfFutureResult<T>Value, Status, ErrorMessage, IsSuccess/IsCancelled/IsFailure 헬퍼를 갖춘 결과 봉투입니다
TPdfFuture<T>.Run응답을 메인 스레드로 큐잉하는 fire-and-forget 백그라운드 워커 헬퍼입니다
PdfNoCancellationToken절대 취소되지 않는 공유 토큰입니다

FPdfMeasure 헬퍼 유닛

멤버설명
TPdf.MeasureText선택한 폰트와 크기에 대해 PDF 사용자 단위 텍스트 너비·높이를 반환합니다
TPdf.MeasureTextWidthPDF 사용자 단위 텍스트 너비만 반환합니다
TPdf.WrapText명시적 줄바꿈을 보존하고, 초과 크기 토큰을 Unicode 스칼라 경계에서 선택적으로 분할합니다

FPdfMatrix 헬퍼 유닛

멤버설명
TPdfMatrix.Create단위 행렬, 명시적 6값 행렬을 만들거나 FS_MATRIX에서 복사합니다
NewTranslation / NewScale / NewRotation / NewSkew별도 변경 단계 없이 흔한 변환을 만듭니다
NewRectMapping / TryCreateRectMapping정규화된 사각형 사이에 stretch, contain, cover 매핑을 만듭니다
Reset단위 행렬로 초기화합니다
SetElements / Assign / Clone행렬 상태를 교체, 복사, 독립 복제합니다
Determinant / IsFinite / IsIdentity / IsInvertible행렬을 바꾸지 않고 수치 유효성과 가역성을 살펴봅니다
IsTranslationOnly / IsAxisAligned / NearlyEquals변환 형태를 분류하고 허용 오차로 값을 비교합니다
GetTranslation / SetTranslation / ClearTranslation선형 성분과 독립적으로 평행이동을 읽거나 갱신합니다
TryDecompose평행이동, 부호 있는 스케일, 시계 방향 회전, 전단, 행렬식, 반사 상태를 추출합니다
Multiply다른 TPdfMatrix 또는 6개 FS_MATRIX 값으로 후위 곱셈합니다
PreMultiply / PreTranslate / PreScale / PreRotate / PreSkew현재 변환 앞에 로컬 입력 공간 연산을 붙입니다
Translate / Scale / Rotate / Skew흔한 PDF 공간 변환을 합성합니다
HorizontalFlip / VerticalFlip / CentralFlip축 뒤집기를 합성합니다
RotateAt / ScaleAt / SkewAt / *FlipAt고정되는 피벗 중심으로 연산을 추가합니다
MapRectToRectstretch, contain, cover 사각형 매핑을 추가합니다
Invert / TryInvert / TryGetInverse / InverseCopy가변 역변환을 하거나 명시적 특이 행렬 처리와 함께 비변경 역행렬을 얻습니다
TransformPoint / TransformVector / InverseTransformPoint임시 행렬 객체 없이 위치, 방향 벡터, 역위치를 매핑합니다
TransformQuad / TransformRectPDF 사분면 또는 정규화 사각형 경계를 변환으로 매핑합니다
TransformPoints / TransformRects결과 할당 한 번으로 동적 배열을 매핑하거나 출력 할당이 없는 제자리 변형을 씁니다
TryTransformBounds / TransformBounds중간 배열 없이 한 번의 패스로 변환된 점 경계를 누적합니다
a, b, c, d, e, f읽기 전용 행렬 요소 속성입니다
HandlePDFium API용 원본 FS_MATRIX 값입니다

PDFium 헬퍼 클래스

클래스설명
TPdfCacheGovernor / TPdfCacheParticipant스레드 안전한 전역 LRU 바이트 예산 하나로 보관 메모리를 조율합니다
TPdfStreamAdapter시크 가능한 Pascal TStream을 커스텀 문서 로딩용 FPDF_FILEACCESS로 감쌉니다
TPdfXObject다른 PDF 페이지에서 만든 재사용 가능 FPDF_XOBJECT를 소유합니다
TTileKey / TPdfTileCache렌더링 타일을 리비전으로 키잉하고 제한된 LRU 비트맵 캐시를 유지합니다
Supporting declarations공개 별칭, 콜백 레코드, 안전 한도, 하이라이트 상수, 선택적 print-output ABI 선언입니다

전역 함수

함수설명
BuildToUnicodeCMap(const Glyphs: array of Word; const Text: WString): AnsiStringCID Type 2 텍스트용 재사용 가능 ToUnicode CMap을 만듭니다
NormalizePageViewRect(...): Boolean두 페이지 공간 코너를 정렬하고 보이는 페이지 경계로 클립합니다
AttachmentDescriptionFeaturesAvailable: Boolean첨부 설명 익스포트를 사용할 수 있는지 보고합니다
AttachmentRelationshipFeaturesAvailable: Boolean로드된 DLL이 /AFRelationship 리더를 익스포트하는지 보고합니다
BezierControlPointFeaturesAvailable: Boolean로드된 DLL이 정확한 네이티브 3차 Bézier 제어점 읽기를 노출하는지 보고합니다
BookmarkStyleFeaturesAvailable: Boolean로드된 DLL이 북마크 텍스트 스타일 리더를 익스포트하는지 보고합니다
StrokePatternRenderingFeaturesAvailable: Boolean로드된 DLL이 path 오브젝트의 stroke tiling 패턴을 래스터라이즈할 수 있는지 보고합니다
ReadPdfVersionInfo(Source: TStream; out Info: TPdfVersionInfo; out ErrorText: string): Boolean헤더, catalog 재정의, 실효 코어 버전, Adobe 개발자 확장 레벨을 하나의 값으로 뭉개지 않고 읽습니다
AppendPdfSparseUpdate(Source, Dest: TStream; const Revision: TPdfSparseRevisionInfo; const Objects: TPdfSparseUpdateObjects; const TrailerExtra: AnsiString; const BeforeStartXref: AnsiString = ''): Boolean저장된 PDF 위에 sparse 리비전 하나를 스트리밍합니다. 소스 바이트는 그대로, 오브젝트 본문은 호출자가 공급하고, /Prev로 체인된 단일 증분 xref/trailer 블록을 씁니다
Loaded: Boolean선택한 PDFium 라이브러리가 로드되어 있으면 True를 반환합니다
LoadLibraryPDFium 라이브러리를 수동으로 로드합니다
UnloadLibraryPDFium 라이브러리를 언로드합니다
ConfigureSystemFontCacheGovernor(Governor: TPdfCacheGovernor)프로세스 전역 보관 시스템 폰트 결과를 호출자 소유 공유 바이트 예산 아래에 둡니다
ConfigureSystemFontProvider(const Provider: IPdfSystemFontProvider; const Policy: TPdfSystemFontPolicy)PDFium 로드 전에 애플리케이션이 제어하는 네이티브 시스템 폰트 매퍼를 설치합니다
ClearSystemFontProviderPDFium 언로드 뒤 구성된 매퍼를 제거합니다
GetSystemFontProviderStatistics: TPdfSystemFontStatistics매핑, 캐시, fallback, 콜백, 라이브 핸들 카운터를 반환합니다
DecodeDate(const Value: string; out DateTime: TDateTime; out DateTimeOffset: Integer): BooleanPDF 날짜 문자열을 TDateTime과 UTC 오프셋으로 파싱합니다
SetPdfPrintMode(PrintMode: TPdfPrintMode): Boolean이후 인쇄 렌더링을 위한 PDFium Windows 인쇄 출력 모드를 고릅니다
SetPdfPrintPaperHandlingDevMode(var DevMode: TDeviceMode; PrintPaperHandling: TPrintPaperHandling): BooleanPDF 뷰어 기본 설정 duplex 힌트를 Windows DEVMODE.dmDuplex로 매핑합니다
V8FeaturesAvailable: Boolean로드된 DLL이 PDFium V8 헬퍼 익스포트를 노출하면 True를 반환합니다
XfaBStrHelpersAvailable: Boolean로드된 DLL이 XFA FPDF_BSTR 헬퍼 익스포트를 노출하면 True를 반환합니다
XfaFeaturesAvailable: Boolean로드된 PDFium 빌드가 XFA 기능 익스포트를 노출하면 True를 반환합니다
GetRecommendedV8Flags: stringPDFium 권장 V8 커맨드라인 플래그를 반환하고, 로드된 DLL이 노출하지 않으면 빈 문자열입니다
PdfBufferLooksXfa(Data: PByte; Size: Integer): Booleanpdfium.dll을 로드하지 않고 원본 PDF 바이트 버퍼에서 XFA 마커를 스캔합니다
PdfFileLooksXfa(const FileName: string): Booleanpdfium.dll을 로드하지 않고 디스크의 PDF 파일에서 XFA 마커를 스캔합니다
ValidatePdfUaStructureElements(const Elements: TPdfStructureElements; Conformance: TPdfUaConformance = puc1): TPdfUaValidationIssuespdfium.dll을 로드하지 않고 PDF/UA-1 또는 PDF/UA-2 제목 시맨틱으로 평탄화된 구조 데이터를 검증합니다
IsPdfUaLanguageTagValid, ResolvePdfUaEffectiveLanguage언어 태그를 검증하고 marked-content, 가장 가까운 구조 조상, 그다음 catalog 언어 우선순위를 해석합니다
ClassifyPdfUaNamespace(const NamespaceUri: WString): TPdfUaNamespaceKind없음, PDF 1.7, PDF 2.0, MathML, 커스텀 구조 네임스페이스를 분류합니다
ValidatePdfUa2StructureElements(const Elements: TPdfStructureElements): TPdfUaValidationIssues네임스페이스 인식 PDF/UA-2 시맨틱 구조 규칙 전부를 실행합니다
PdfUa2StructureHasIssue(const Elements: TPdfStructureElements; Issue: TPdfUaValidationIssue): BooleanPascal 집합을 값으로 반환하지 않는 C++Builder 안전 단일 이슈 질의입니다
ValidatePdfUa2NamespaceSemantics, ValidatePdfUa2Containment, ValidatePdfUa2TableGrid집중된 네임스페이스, 부모-자식, 제한된 표 그리드 검증을 실행합니다
ValidatePdfUa2AnnotationSemantics, ValidatePdfUa2FormulaSemantics, ValidatePdfUa2AssociatedFileSemantics, ValidatePdfUa2DocumentSemantics집중된 주석/폼, Formula/MathML, associated file 소유·읽기 순서, 문서/목록/TOC/캡션 검증을 실행합니다
ValidatePdfUaPageContentTagging(const Objects: TPdfPageContentMarkInfos; const Elements: TPdfStructureElements): TPdfUaValidationIssues실제 콘텐츠 태깅을 검증하고 Artifact 오브젝트가 구조 트리에 귀속되지 않게 합니다
ValidatePdfUaRoleMapUsage(const Elements: TPdfStructureElements; const RoleMapKeys, RoleMapVals: TPdfUaNameArray): TPdfUaValidationIssuesRoleMap 키/값 쌍이 표준 ISO 32000-1 타입으로 해석되는지 검증합니다
ClassifyStructType(const TypeName: WString; out HeadingLevel: Integer): TPdfContentFragmentKind구조 요소 타입 이름을 TPdfContentFragmentKind와 선택적 제목 레벨로 분류합니다
FormFieldTabOrderForPage(FormHandle: FPDF_FORMHANDLE; Page: FPDF_PAGE): TPdfIntegerArray폼 탭 순서의 페이지 위젯 주석 인덱스를 반환합니다
FocusedFormFieldTextForPage(FormHandle: FPDF_FORMHANDLE; Page: FPDF_PAGE): WString하나의 폼 핸들과 페이지에 대한 포커스 위젯 텍스트를 반환합니다
NormalizePageViewRect(X1, Y1, X2, Y2, PageWidth, PageHeight: Double; out Left, Top, Right, Bottom: Double): Boolean매핑된 두 페이지 공간 코너를 페이지 클램프된 보이는 사각형으로 정규화합니다. 페이지가 하나도 안 보이면 False입니다
NextFormFieldIndexForPage(FormHandle: FPDF_FORMHANDLE; Page: FPDF_PAGE; CurrentIndex: Integer; GoForward: Boolean): Integer페이지 탭 순서에서 다음/이전 위젯 주석 인덱스를 찾습니다
ClearFocusedFormField(FormHandle: FPDF_FORMHANDLE): BooleanPDFium 폼 핸들의 현재 포커스 폼 위젯을 지웁니다
ComputeSpreadPages(DisplayMode: TPdfDisplayMode; PageNumber, PageCount: Integer; out LeftPageNo, RightPageNo: Integer)두 페이지 표시 모드의 왼쪽·오른쪽 페이지 번호를 계산합니다
BuildReadingUnits(const Fragments: TPdfContentFragments): TPdfReadingUnitsreadable content 프래그먼트를 문장 수준 reading unit으로 변환합니다
NextReadingUnitOfKind(const Units: TPdfReadingUnits; CurrentIndex: Integer; Kind: TPdfContentFragmentKind; GoForward: Boolean): Integer요청한 시맨틱 종류의 다음/이전 reading unit을 찾습니다
BuildWordBoxes(const PageText: WString): TPdfWordBoxes페이지 텍스트를 TPdfWordBox 레코드로 분할합니다
WordBoxIndexAtCharIndex(const Words: TPdfWordBoxes; CharIndex: Integer): Integer페이지 문자 인덱스를 word box 인덱스로 매핑합니다
SpokenTextAppend(var Spoken: TPdfSpokenText; const SpokenPart: WString; Page, StartIndex: Integer; SourceCount: Integer = -1)매핑된 spoken-text run 하나를 음성 청크에 추가합니다
BuildSpokenTextFromWords(const Words: TPdfWordBoxes; FirstWord, LastWord: Integer): TPdfSpokenTextword box 범위에서 음성 텍스트 청크를 만듭니다
SpokenToPageChar(const Spoken: TPdfSpokenText; SpokenOffset: Integer; out Page, CharIndex: Integer): Boolean음성 텍스트 오프셋을 페이지 문자 인덱스로 되돌려 변환합니다
EstimateSpokenWordIndex(const Words: TPdfWordBoxes; ElapsedMs: Cardinal; WordsPerMinute: Integer): Integer단어 위치 신호를 보고하지 않는 엔진을 위해 현재 단어 인덱스를 추정합니다
FPDF_RenderPageSkia페이지 콘텐츠를 외부 SkCanvas에 렌더링하는 저수준 PDFium 바인딩입니다
FPDF_FFLDrawSkia폼 필드와 팝업 주석을 외부 SkCanvas에 그리는 저수준 PDFium 바인딩입니다
PointsToInches(Points: Double): DoublePDF 포인트를 인치로 변환합니다
PointsToPixels(Points, PixelsPerInch: Double): DoublePDF 포인트를 픽셀로 변환합니다
PixelsToInches(Pixels, PixelsPerInch: Double): Double픽셀을 인치로 변환합니다
PixelsToPoints(Pixels, PixelsPerInch: Double): Double픽셀을 PDF 포인트로 변환합니다
GetApplicationPath: string첫 PDFium DLL 검색 루트로 쓰이는 실행 파일 디렉터리를 반환합니다
IsWin64: Boolean현재 프로세스가 Win64를 대상으로 하면 True를 반환합니다
BuildDllName(UseV8: Boolean): string요청한 V8 모드에 맞는 pdfium.dll 또는 pdfium.v8.dll을 반환합니다
FindDllInPath(const DllName, SearchPath: string): string하나의 디렉터리에서 이름이 일치하는 PDFium DLL을 찾습니다
FindDllInDllsTree(const DllName, StartPath, SubDir: string): string시작 경로 아래의 DLLs\Win32 또는 DLLs\Win64 폴더를 검색합니다
LoadPDFiumDll: string어느 엔진 모드에서든 명시적 LibraryName 경로를 존중하고, 그 외에는 컴포넌트 검색 정책으로 런타임을 해석합니다
ConfigurePdfLibrary(const Configuration: TPdfLibraryConfiguration)첫 라이브러리 로드 전에 DLL 선택, V8, 샌드박스 구성을 적용합니다
GetPdfLibraryConfiguration: TPdfLibraryConfiguration현재 실효 라이브러리 구성의 복사본을 반환합니다
PdfLibraryConfigurationSealed: Boolean라이브러리가 로드되어 구성을 더 바꿀 수 없으면 True를 반환합니다
PdfNativeRendererType(Preference: TPdfRendererPreference; SkiaBuild: Boolean): FPDF_RENDERER_TYPE선호도가 AGG 전용 또는 Skia 지원 PDFium 빌드에서 고르는 네이티브 렌더러를 반환하며 prpDefault일 때는 빌드 기본값을 유지합니다
PdfLibraryConfigurationSupportError(const Configuration: TPdfLibraryConfiguration; SkiaBuild, FontationsBuild: Boolean): string렌더러나 폰트 백엔드를 PDFium 빌드에 쓸 수 없는 이유를 반환합니다. LoadLibrary가 같은 검사를 적용해 네이티브 초기화가 프로세스를 멈추는 대신 EPdfError를 발생시킵니다
PdfDefaultTtfMapCount: NativeUInt네이티브 기본 TrueType 폰트 대체 맵의 항목 수를 반환합니다
TryGetPdfDefaultTtfMapEntry(Index: NativeUInt; out Entry: TPdfDefaultTtfMapEntry): Boolean인덱스로 기본 폰트 대체 맵 항목 하나를 복사합니다
IsXfaFormField(FieldType: Integer): Boolean (FPdfXfa)폼 필드 타입 코드가 XFA 필드 범위에 속하는지 검사합니다

전역 변수

변수타입기본값설명
LibraryNamestring'pdfium.dll'명시적 경로는 어느 엔진 모드에서든 런타임을 고릅니다. 이름만 있으면 EnableV8Engine이 False일 때 표준 런타임을 고릅니다
EnableV8EngineBooleanFalse로드 전에 True로 설정하면 일치하는 Win32 또는 Win64 DLLs 폴더에서 pdfium.v8.dll을 고릅니다

일반 사용 패턴

PDF 뷰어 구현

procedure TMainForm.OpenPDF(const FileName: string);
begin
  Pdf.FileName := FileName;
  Pdf.Active := True;
  PdfView.Pdf := Pdf;
  PdfView.Active := True;
  StatusBar1.SimpleText := Format('Loaded: %s (%d pages)',
    [ExtractFileName(FileName), Pdf.PageCount]);
end;

압축과 함께 PDF 만들기

Pdf.CreateDocument;
Pdf.Compressed := True;
Pdf.Active := True;
Pdf.AddPage(0, 595, 842);
Pdf.AddText('Hello World!', 'Arial', 24, 100, 700, clBlack, $FF, 0.0);
Pdf.SaveAs('output.pdf');
Pdf.Active := False;

텍스트 추출

Pdf.FileName := 'document.pdf';
Pdf.Active := True;
for I := 1 to Pdf.PageCount do
begin
  Pdf.PageNumber := I;
  Memo1.Lines.Add(Format('--- Page %d ---', [I]));
  Memo1.Lines.Add(Pdf.Text);
end;
Pdf.Active := False;

폼 필드 처리

Pdf.FileName := 'form.pdf';
Pdf.Active := True;
Pdf.PageNumber := 1;
for I := 0 to Pdf.FormFieldCount - 1 do
begin
  FieldInfo := Pdf.FormFieldInfo[I];
  case FieldInfo.FieldType of
    fiTextField:
      Pdf.FormField[I] := 'New Value';
    fiCheckBox:
      Pdf.FormField[I] := 'Yes';
  end;
end;
Pdf.SaveAs('filled_form.pdf');
Pdf.Active := False;

채워진 폼 평탄화

// Bake form values into permanent (non-editable) page content
Pdf.FileName := 'form.pdf';
Pdf.Active := True;
Pdf.FormField[0] := 'John Smith';
Pdf.FormField[1] := 'Yes';
Pdf.GenerateFormAppearances;          // step 1: refresh /AP from /V
Pdf.FlattenAllPages(FLAT_NORMALDISPLAY); // step 2: flatten all pages
Pdf.SaveAs('flattened.pdf');           // step 3: save
Pdf.Active := False;