PDFium Delphi Component Docs

PDFium VCL Referência da API

O Windows usa a VCL ou o conjunto de widgets do Windows do Lazarus. Compilações nativas de Free Pascal/LCL usam Linux Qt6 ou macOS Cocoa com uma biblioteca compartilhada PDFium correspondente; veja a configuração nativa da LCL para os requisitos de toolchain e de runtime. O wrapper VCL de Delphi/C++Builder continua sendo um caminho para Windows; a qualificação dos auxiliares nativos de criptografia e de carimbo de tempo do Delphi no macOS é separada do wrapper visual

Unidades auxiliares

UnidadeDescrição
FPdfAsyncFornece cancelamento estruturado, futures configuráveis e um pool de workers prioritário e limitado para trabalho PDF responsivo em segundo plano
FPdfMatrixFornece composição afim, diagnósticos, mapeamento de retângulos ajustados, geometria inversa, decomposição e transformações em massa de pontos ou retângulos para APIs de page-object do PDFium
FPdfMeasureAdiciona os métodos auxiliares TPdf.MeasureText, MeasureTextWidth e WrapText para layout de texto em unidades de usuário do PDF
FPdfLayoutConstrói layouts paginados, marcados, baseados em grade, Markdown, HTML, tabela, imagem, link e nós reutilizáveis
FPdfTextShapingMolda texto Unicode bidirecional em execuções visuais de glifos limitadas, com uma interface de shaper extensível e uma implementação Windows Uniscribe
FPdfProductionFornece fluxos de trabalho de produção limitados para cores, fontes, SVG, substituição, XFA, códigos de barras, Portfolio e RichMedia
FPdfDiffAlinhamento de páginas com limites definidos, diferenças de texto Unicode e regiões visuais conectadas
FPdfMergeMerge transacional de páginas com outline, named destinations e links internos, com verificação por reabertura independente
FPdfOcrTesseractProvedor opcional de OCR com Tesseract, com limites explícitos de dependência e de reconhecimento
FPdfFormMergeMerge transacional de campos AcroForm com políticas de colisão explícitas
FPdfBarcodeZXingGeração e reconhecimento nativos opcionais de códigos de barras
FPdfStyledEditSubstituição verificada de texto PDF com estilo, com preview e rollback
FPdfSemanticDiffMudanças semânticas estáveis de anotações e formulários, com coordenadas de overlay de antes/depois
FPdfColourLittleCmsTransformações ICC nativas opcionais para amostras Gray, RGB e CMYK originais
FPdfDocumentColourConversão de cores de documentos PDF com limites definidos e relatórios explícitos de objetos não suportados
FPdfRedactionGeometria de Forms aninhados, caminhos preenchidos e imagens afins para redaction transacional
FPdfStandardsExecutionExecuta fluxos de trabalho de medição, GeoPDF, reparo de PDF/A, PDF/UA, PDF/X, evidências PAdES, PDF/VT, PDF/E e PDF/R
FPdfAsn1Codifica, navega, decodifica e valida dados ASN.1 DER limitados com identificadores high-tag, valores tipados, verificações canônicas e limites de recursos
FPdfPreflightReportCria relatórios de padrões consultáveis, planos de reparo de PDF/A, pré-verificação de produção de PDF/X, regras declarativas, orçamentos de recursos, validação paralela isolada, agregação e exportação legível por máquina
FPdfBenchmarkExecuta corpora de desempenho e conformidade limitados com portões de carregamento, primeira página, renderização, salvamento, memória, semântica, pixel e reabertura independente
FPdfXmpLê, edita e grava incrementalmente pacotes XMP limitados com reconhecimento de namespace, valores RDF tipados e preservação de namespaces desconhecidos
FPdf standards helpersAPIs independentes de validação e salvamento de associated-files, PAdES, PDF/A, PDF/E, PDF/R, PDF/UA, PDF/VT e PDF/X
FPdfThumbnailFornece o controle de navegação por miniaturas rolável TPdfThumbnailView
FPdfCompressCompressão FlateDecode no nível de fluxo, injeção de open-action padrão, normalização pós-salvamento e inspeção de versão de PDF usados pelo pipeline de salvamento do TPdf
FPdfContentNormalizeExamina e normaliza sequências de conteúdo PDF, incluindo tratamento limitado de imagens inline
FPdfXfdfImportação e exportação XFDF independentes de campos de formulário e anotações sem carregar pdfium.dll
FPdfEditBinding de edição de page-objects do PDFium mais funções auxiliares independentes de cor ARGB
FPdfPdfvtMimeConstrói e valida fluxos de partes MIME de PDF/VT-2 em arquivo único que transportam um documento PDF/VT inline, anexos reutilizáveis e perfil ICC
FPdfIccProfileRealiza validação limitada de cabeçalho ICC e tabela de tags com MD5, SHA-256, metadados de perfil e correspondência de descrições multilíngues
FPdfEncryptGrava PDFs criptografados com AESV3-CBC ou AESV4-GCM da ISO/TS 32003 e autentica descriptografia de compatibilidade AESV4
FPdfAesCifra de blocos AES-128 e AES-256 em Pascal puro com expansão de chave e wrappers de fluxo AES-256-CBC
FPdfHmacHMAC-SHA256 e HKDF-SHA256 em Pascal puro, comparação de bytes em tempo constante e limpeza segura de bytes
FPdfMacConstrói e verifica tokens CMS AuthenticatedData independentes da ISO/TS 32004
FPdfAesGcmCriptografia autenticada AES-GCM em Pascal puro para chaves AES-128 e AES-256
FPdfSha256Hash SHA-256 em Pascal puro com auxiliares incrementais e de disparo único
FPdfSha512Hashing SHA-512 e SHA-384 em Pascal puro compartilhando um único tipo de contexto
FPdfSha3Hashing SHA3-256, SHA3-384, SHA3-512 e SHAKE256 em fluxo em Pascal puro para extensões criptográficas do PDF 2.x
FPdfCmsConstrói CMS da RFC 5652 e SignedData CAdES a partir de um digest desanexado e um backend criptográfico ICmsSigner
FPdfTsaCliente de autoridade de carimbo de data/hora RFC 3161 para os perfis PAdES B-T e B-LTA
FPdfTsaWinBackend de transporte de carimbo de data/hora WinHttp do Windows para requisições RFC 3161
FPdfTsaFpcTransporte de timestamp via libcurl para solicitações RFC 3161 no Linux e no macOS
FPdfTsaPosixTransporte HTTP POSIX nativo do Delphi para requisições de carimbo de tempo RFC 3161 com limites definidos
FPdfCryptoFacade de resolução de assinantes PAdES sobre o backend criptográfico ativo
FPdfTrustedListAnálise, cache, atualização, âncoras de confiança e avaliação de serviços qualificados de listas de confiança europeias autenticadas
FPdfCryptoWinBackend do Windows para assinatura CNG, verificação de CMS desanexado, extração de certificado do assinante e avaliação de confiança do sistema somente por cache
FPdfCryptoMacBackend de assinatura no macOS com uma identidade do Keychain e verificação de CMS por CMSDecoder e SecTrust
FPdfCryptoSslBackend OpenSSL para verificação de CMS onde não existe um serviço de verificação do sistema
FPdfCryptoOcspPré-filtro de DER e de frescor de OCSP com limites definidos antes da autenticação nativa do respondedor
FPdfPkcs11Backend de assinatura com token PKCS#11 que mantém a chave privada dentro do token, em todas as plataformas
FPdfSha1SHA-1 em Pascal puro usado apenas para localizar um certificado pela impressão digital, nunca como algoritmo de assinatura
FPdfBidiResolução do algoritmo bidirecional do Unicode (UAX #9) e reordenação visual, sem dependência de plataforma
FPdfTextShapingHbBackend de shaping de texto HarfBuzz para plataformas sem Uniscribe

Métodos do componente TPdf

Gerenciamento de documentos

MétodoDescrição
CreateDocumentCriar um novo documento PDF vazio
LoadDocument(Data: TMemoryStream; Buffered: Boolean = True)Carregar um documento PDF de um fluxo de memória
LoadDocument(Data: Pointer; Size: Integer; Buffered: Boolean = True)Carregar um documento PDF de um buffer de memória
LoadDocumentCarregar um documento PDF a partir de FileName
LoadDocument(const Data: TBytes; Buffered: Boolean = True)Carregar um documento PDF a partir de TBytes
LoadCustomDocument(AStream: TStream; AOwnsStream: Boolean = False)Transmitir um documento PDF de qualquer TStream via FPDF_LoadCustomDocument; o PDFium busca blocos sob demanda em vez de copiar o arquivo inteiro para a memória. AOwnsStream = True transfere a vida útil do fluxo para a instância de TPdf
TPdfLoadOptions, TPdfLoadReport, LastLoadReportSeleciona carregamento compatível, estrito ou de recuperação e examina evidências limitadas de auditoria de xref
SaveAsRepairedGrava uma cópia completa de revisão única e a carrega em modo estrito de forma independente antes da entrega
TPdfRandomAccessStoreArmazenamento pesquisável thread-safe com E/S posicionada e transbordo unidirecional da memória limitada para armazenamento temporário privado com exclusão ao fechar
SaveMemoryLimit, SaveTemporaryDirectory, LastSaveSpillCount, LastSaveLargestMemoryBufferConfigura e mede o armazenamento de trabalho limitado usado pelo staging de salvamento do TPdf
SaveAs(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanSalva o documento no fluxo com compressão opcional e verificações de conformidade explícitas de PDF 1.3 a PDF 1.7; saída explícita de versão criptografada e pv13 com saIncremental geram EPdfError
SaveAs(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanSalva o documento em arquivo atomicamente com compressão opcional e verificações de conformidade explícitas de PDF 1.3 a PDF 1.7; uma normalização ou validação com falha deixa o destino existante inalterado
SaveAsLinearized(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanGrava saída Fast Web View do Anexo F com agrupamento da primeira página e tabelas de dicas de deslocamento de página e objetos compartilhados verificadas
SaveAsLinearized(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanGrava saída Fast Web View atomicamente por meio de um arquivo temporário no mesmo diretório
SaveAsObjectStream(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): BooleanGrava fluxos de objetos de PDF 1.5+ limitados com um fluxo xref tipo 2 completo
SaveAsObjectStream(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): BooleanGrava saída moderna de fluxo de objetos atomicamente por meio de um arquivo temporário no mesmo diretório
SaveAsNormalizedContent(Stream: TStream; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): BooleanGrava conteúdo lógico de página normalizado e unificado com validação de sintaxe limitada
SaveAsNormalizedContent(const FileName: string; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): BooleanGrava saída de conteúdo normalizado atomicamente por meio de um arquivo temporário no mesmo diretório
SaveAsReachable(Stream: TStream; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): BooleanRegrava o documento como uma única revisão limpa mantendo apenas os objetos alcançáveis a partir do catálogo e do /Info do trailer
SaveAsReachable(const FileName: string; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): BooleanGrava atomicamente uma cópia podada de revisão única por meio de um arquivo temporário no mesmo diretório
SaveAsDeduplicated(Stream: TStream; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): BooleanRegrava o documento varrendo objetos inalcançáveis e mesclando fontes, imagens e form XObjects compatíveis em um único representante
SaveAsDeduplicated(const FileName: string; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): BooleanGrava atomicamente uma cópia desduplicada de revisão única por meio de um arquivo temporário no mesmo diretório
SaveAsFlateRecompressed(Stream: TStream; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): BooleanRegrava o documento recodificando fluxos FlateDecode com compressão máxima quando a economia ultrapassa um limite definido pelo chamador
SaveAsFlateRecompressed(const FileName: string; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): BooleanGrava atomicamente uma cópia recompactada com Flate por meio de um arquivo temporário no mesmo diretório
SaveAsInlineImagesExternalised(Stream: TStream; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): BooleanRegrava o documento extraindo imagens inline BI/ID/EI para XObjects reutilizáveis e substituindo blocos inline por operadores Do
SaveAsInlineImagesExternalised(const FileName: string; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): BooleanGrava atomicamente uma cópia externalizada por meio de um arquivo temporário no mesmo diretório
SaveAsReproducible(Stream: TStream; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): BooleanRegrava o documento removendo carimbos de data/hora não determinísticos e /ID para que salvamentos repetidos sejam idênticos byte a byte
SaveAsReproducible(const FileName: string; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): BooleanGrava atomicamente uma cópia reproduzível por meio de um arquivo temporário no mesmo diretório
ExportObjectGraph(Stream: TStream; const Options: TPdfObjectGraphInspectOptions; out Report: TPdfObjectGraphReport): BooleanExporta valores diretos e de fluxo de objetos ativos como JSON tipado limitado com digests SHA-256 opcionais dos fluxos codificados
SaveAsObjectGraphPatched(Stream: TStream; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): BooleanAplica patches transacionais tipados em dicionários de nível superior e carrega o resultado preparado em modo estrito antes da entrega
SaveAsObjectGraphPatched(const FileName: string; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): BooleanSubstitui um arquivo atomicamente após o sucesso da transação completa de patches do grafo de objetos
ExportObjectGraph / SaveAsObjectGraphPatched object-graph envelopePágina de modelo de inspeção e patch do grafo de objetos compartilhada pelos dois métodos, cobrindo o envelope versionado pdf-object-graph-v1 e patches transacionais verificados por strict load
InspectOptionalContent(out Inventory: TPdfOptionalContentInventory; Usage: TPdfOptionalContentUsage = ocuView; ConfigurationIndex: Integer = -1): BooleanLê o modelo de optional-content e o estado efetivo de renderização nativa
SaveAsOptionalContentConfigured(Stream: TStream; const Changes: TPdfOptionalContentStateChanges; const Options: TPdfOptionalContentConfigureOptions; out Report: TPdfOptionalContentConfigureReport; AllowSignedDocument: Boolean = False): BooleanGrava e verifica estritamente o estado de optional-content selecionado pelo chamador
BeginEditTransaction(const LabelText: WString = ''; AllowSignedDocument: Boolean = False)Inicia uma transação de edição de documento atômica a partir de um snapshot nativo reproduzível
CommitEditTransaction: BooleanArmazena a transação alterada como um delta bidirecional limitado encadeado por SHA-256
RollbackEditTransactionRestaura o documento pré-transação sem adicionar uma entrada de desfazer
BeginPageObjectEditTransaction(AllowSignedDocument: Boolean = False)Inicia um lote atômico de mutação de objetos nativos com escopo de página
CommitPageObjectEditTransaction: BooleanGera o conteúdo da página uma única vez e confirma todas as mutações nativas bem-sucedidas
RollbackPageObjectEditTransactionRestaura o snapshot validado do documento anterior ao lote
PageObjectEditTransactionStatus: TPdfPageObjectEditTransactionStatusInforma estado da transação, página, contagem de mutações e contagem de gerações de conteúdo
BeginPageObjectEditTransaction / CommitPageObjectEditTransaction / RollbackPageObjectEditTransaction / PageObjectEditTransactionStatusModelo de transação de edição com escopo de página atômico, cobrindo o snapshot com limites definidos, mutações nativas em lote, regeneração única de conteúdo e rollback
UndoEdit: BooleanAplica e verifica o delta inverso na posição atual do diário
RedoEdit: BooleanAplica e verifica o delta direto após a posição atual do diário
EditCanUndo: BooleanInforma se uma transação de documento confirmada pode ser desfeita
EditCanRedo: BooleanInforma se uma transação de documento desfeita pode ser refeita
ClearEditJournalLibera o histórico de edições confirmadas mantendo o estado atual do documento
ConfigureEditJournal(const Options: TPdfEditJournalOptions)Define limites de entradas, deltas armazenados e snapshots
GetEditJournalInfo: TPdfEditJournalInfoLê posição do diário, rótulos, fingerprints, uso de limites e disponibilidade de desfazer ou refazer
ExportEditJournal(Stream: TStream)Grava o formato portátil e limitado de diário
ImportEditJournal(Stream: TStream; ApplyRecordedPosition: Boolean = True; AllowSignedDocument: Boolean = False)Valida e reproduz um diário apenas contra seu fingerprint raiz ou registrado
SaveRecoverySnapshotGrava um pacote de recuperação com checksum contendo fingerprints da origem e o diário de edição verificado
RestoreRecoverySnapshotRestaura um pacote de recuperação somente após verificação de checksum, origem, diário e resultado
InspectRecoverySnapshotLê metadados de recuperação e valida o pacote sem aplicar edições
EnableRecoveryAutosave(const FileName: string)Atualiza atomicamente um arquivo de recuperação explícito após confirmação, desfazer ou refazer
DisableRecoveryAutosaveInterrompe gravações de recuperação orientadas a commits sem excluir um pacote existente
RecoveryAutosaveFileName: stringLê o caminho absoluto de autosave de recuperação ou uma string vazia quando desabilitado
ValidatePagePlan(const Plan: TPdfPagePlan; ImportedSource: TPdf = nil; AllowSignedDocument: Boolean = False): TPdfPagePlanValidationReportCompila uma operação de página em um mapa exato de antigo para novo e informa efeitos de navegação, rótulos, formulários, estrutura, recursos importados e assinaturas sem alterar nenhum dos documentos
GenerateLayout(Layout: TPdfLayoutDocument; out Plan: TPdfLayoutPlan; AllowSignedDocument: Boolean = False): BooleanMede e pagina primeiro e, em seguida, anexa atomicamente texto nativo, réguas, bordas de tabela, imagens, páginas e page XObjects reutilizáveis com totais de página estáveis
GeneratePagedLayout(Layout: TPdfLayoutDocument; PagedPlan: TPdfLayoutPagedPlan; out Plan: TPdfLayoutPlan; AllowSignedDocument: Boolean = False): BooleanTransmite comandos para armazenamento pesquisável, materializa um array limitado de páginas por vez e anexa páginas do PDFium sequencialmente
GenerateTaggedLayout(Layout: TPdfLayoutDocument; out Plan: TPdfLayoutPlan; const Language: string = 'en-US'): BooleanGera um novo documento de layout semântico com MCIDs nativos, árvore de estrutura e de pais completa, texto alternativo, associações de cabeçalhos de tabela e links marcados
TPdfLayoutDocument.AddLink / AddSemanticNode / SetLastItemSemanticsAnexa links URI, contêineres semânticos não visuais e metadados de função, pai, ID, idioma, texto alternativo, lista e tabela aos itens de layout
TPdfLayoutDocument.AddTable(Table: TPdfLayoutTable)Captura e pagina uma tabela com legendas, cabeçalhos repetidos, linhas divisíveis, células mescladas, links, bordas e semântica marcada contínua
TPdfLayoutDocument.AddCachedNode(Node: TPdfLayoutCachedNode; Height: Single = 0; Width: Single = 0)Constrói um nó lazy uma vez, armazena em cache seu plano medido e emite posicionamentos repetidos a partir de um único template nativo de Form XObject
BeginIncrementalSave(AllowSignedDocument: Boolean = False)Inicia uma sessão de revisão de objetos alterados a partir de um snapshot semântico estável, retendo o prefixo exato da origem criptografada ou não criptografada
CommitIncrementalSave(Stream: TStream; out Info: TPdfIncrementalCommitInfo): BooleanAnexa apenas objetos indiretos alterados ou novos, herdando parâmetros de segurança criptografados e validando a cadeia completa de revisões
CommitIncrementalSave(const FileName: string; out Info: TPdfIncrementalCommitInfo): BooleanLibera em disco de forma durável, reabre, valida e substitui atomicamente por meio de um arquivo lateral no mesmo diretório, revertendo o estado da sessão após falhas
EndIncrementalSaveLibera a linha de base e o estado de revisão acumulado
SaveAsEncrypted(const FileName: string; const Options: TPdfEncryptOptions): BooleanSalva o PDF ativo com criptografia AESV3-CBC ou AESV4-GCM da ISO/TS 32003
SaveAsEncryptedToStream(Stream: TStream; const Options: TPdfEncryptOptions): BooleanGrava a saída PDF criptografada em qualquer TStream pesquisável sem passar pelo disco
ValidatePdfMac(const Password: AnsiString): TPdfMacValidationResultValida um PDF MAC independente da ISO/TS 32004 contra os bytes originais da origem carregada
SaveAsWithAssociateFiles(const FileName: string; const Options: TAssocFilesOptions): BooleanSalva o PDF ativo em um caminho de arquivo injetando associated-files no catálogo ou nas páginas em conformidade com a ISO 32000-2 §7.11.4
SaveAsWithAssociateFilesToStream(Stream: TStream; const Options: TAssocFilesOptions): BooleanGrava a saída PDF com associated-files injetados em qualquer TStream pesquisável sem passar pelo disco
CompareWith(Other: TPdf; const Options: TPdfDocumentDiffOptions; out Report: TPdfDocumentDiffReport): BooleanCompara contagem de páginas, geometria, rotação, texto extraído e pixels renderizados com tolerância
ImportImposed(const Options: TPdfImpositionOptions; out Plan: TPdfImpositionPlan; out Report: TPdfImpositionExecutionReport): TPdfConstrói saída N-up ou livreto por meio de composição nativa em lote do PDFium e informa contagens de execução
ImportPages(Pdf: TPdf; const Range: string; PageNumber: Integer = 1): BooleanImportar páginas de outro documento PDF. Formato do intervalo: '1,3,5-7'
ImportPreferences(Pdf: TPdf): BooleanImportar preferências do visualizador de outro PDF

Operações de página

MétodoDescrição
AddPage(PageNumber: Integer; Width, Height: Double)Adicionar uma nova página na posição especificada baseada em 1 com as dimensões informadas em pontos, onde 72 pontos = 1 polegada. Passar 0 é aceito como alias de compatibilidade para inserir a primeira página, e a página inserida se torna a atual
DeletePage(PageNumber: Integer)Excluir a página no índice especificado
ExtractThumbnail(PageNumber: Integer): TBitmapDecodifica a miniatura incorporada de qualquer página baseada em 1 sem alterar a página ativa
GetPageBox(Box: TPdfPageBox): TPdfRectangleLer a caixa do dicionário de página selecionada da página atual
RemoveObject(Index: Integer; DestroyObject: Boolean = True)Remover um objeto de página da página atual e regenerar o conteúdo da página
ReloadPageRecarregar a página atual
SetPageBox(Box: TPdfPageBox; const Rectangle: TPdfRectangle)Definir a caixa do dicionário de página selecionada na página atual
UpdatePageAplicar as alterações pendentes à página atual, chamando FPDFPage_GenerateContent

Operações de texto

MétodoDescrição
Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WStringExtrair texto da página atual
TextInRectangle(Left, Top, Right, Bottom: Double): WStringExtrair texto de uma área retangular, em coordenadas da página
TextInRectangle(Rectangle: TPdfRectangle): WStringExtrair texto de um retângulo
ReadTextPageSnapshot(PageNumber: Integer; const Options: TPdfTextSnapshotOptions; out Status: TPdfTextSnapshotStatus): TPdfTextPageSnapshotCaptura texto, Unicode, geometria, estilo e metadados normalizados de objetos de texto em uma única passagem nativa explicitamente limitada
TextPageSnapshot[PageNumber: Integer]: TPdfTextPageSnapshotRetorna uma cópia profunda de propriedade do chamador da LRU de snapshots de texto com detecção de revisão, sem alterar a página ativa
TextSnapshotCacheCapacity, TextSnapshotCacheCount, TextSnapshotCacheHitCount, TextSnapshotCacheMissCountConfigura retenção limitada e informa ocupação, acertos e falhas do cache
TPdfTextPageSnapshot / TPdfTextSnapshotStatusRecord de snapshot de texto de propriedade de quem chama e modelo de status de leitura limitada, junto com o comportamento do cache LRU com reconhecimento de revisão
ReadPageObjectsSnapshot(PageNumber: Integer; const Options: TPdfPageObjectSnapshotOptions; out Status: TPdfPageObjectSnapshotStatus): TPdfPageObjectsSnapshotCaptura geometria imutável de objetos de página, estilo, marcas, clips, fatos de imagem e fatos de texto sob orçamentos explícitos
PageObjectsSnapshot[PageNumber: Integer]: TPdfPageObjectsSnapshotRetorna uma cópia profunda de propriedade do chamador da LRU de snapshots de objetos de página com detecção de revisão
PageObjectSnapshotCacheCapacity, PageObjectSnapshotCacheCount, PageObjectSnapshotCacheHitCount, PageObjectSnapshotCacheMissCountConfigura retenção limitada de objetos de página e informa ocupação, acertos e falhas do cache
TPdfPageObjectsSnapshot / TPdfPageObjectSnapshotStatusRecord de snapshot de objetos de página de propriedade de quem chama e modelo de status de leitura limitada, junto com o comportamento do cache LRU com reconhecimento de revisão
GetStructuredText(const Options: TPdfStructuredTextOptions): TPdfStructuredTextPageConstrói um modelo limitado de página, bloco, linha e trechos estilizados com geometria nativa de caracteres e enriquecimento semântico opcional
ExtractTables(const Options: TPdfTableExtractionOptions): TPdfTablesDetecta tabelas com linhas e alinhadas por espaços em branco na página atual, com células mescladas, nível de confiança e saída CSV e JSON
ExtractDocumentTables(const Options: TPdfTableExtractionOptions): TPdfTablesExtrai tabelas limitadas em todas as páginas e marca cadeias de continuação entre páginas correspondentes
BuildReflowDocument(const Options: TPdfReflowOptions; const CancellationToken: IPdfCancellationToken = nil): TPdfReflowDocumentConstrói uma árvore semântica de páginas limitada e emite HTML responsivo e escapado com títulos, parágrafos, listas, figuras e tabelas com reconhecimento de spans
ApplyOcrSearchLayer(Provider, Options, Report, CancellationToken): BooleanRenderiza as páginas selecionadas por meio do PDFium e adiciona texto OCR invisível filtrado por confiança sem recodificar as imagens das páginas
AddText(const Text, Font: WString; FontSize: Single; X, Y: Double; Color: TColor = clBlack; Alpha: Byte = $FF; Angle: Double = 0.0)Adicionar texto na posição especificada com fonte, cor, transparência e ângulo de rotação
SetText(ObjectIndex: Integer; const Text: WString)Definir o texto de um objeto de texto existente, API não documentada do PDFium, pode causar problemas de formatação
SetTextPositions(ObjectIndex: Integer; const Positions: TPdfSingleArray)Definir posições por caractere para um objeto de texto existente. As posições começam no segundo caractere e são relativas à origem do objeto de texto
FindFirst(const Text: WString; Options: TSearchOptions = []; StartIndex: Integer = 0; DirectionUp: Boolean = True): IntegerIniciar a busca de texto, retorna o índice do caractere ou -1 se não encontrar
FindNext: IntegerContinuar a busca de texto para frente, retorna o índice do caractere ou -1
FindPrevious: IntegerContinuar a busca de texto para trás, retorna o índice do caractere ou -1
CreateDocumentSearch(Text, Options, StartPage, Direction, CancellationToken): TPdfDocumentSearchCria uma busca lazy para frente ou para trás em todo o documento com retenção de handle nativo de uma página, cancelamento e geometria por correspondência
CharacterIndexAtPos(X, Y, ToleranceX, ToleranceY: Double): IntegerObter o índice do caractere na posição da página
RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): IntegerObter a quantidade de retângulos de texto para um intervalo de caracteres
ReadingUnits: TPdfReadingUnitsRetorna unidades de leitura por sentença para escuta assistida e navegação semântica
DocumentReadingUnits: TPdfReadingUnitsCria registros TPdfReadingUnit por sentença para o fluxo de conteúdo legível de todo o documento
PageWordBoxes: TPdfWordBoxesRetorna caixas de palavra com intervalos FTextPage e retângulos de página para destaque palavra a palavra
SetReadingWord(const Word: TPdfWordBox)Realça um TPdfWordBox como a palavra falada atual em TPdfView
ClearReadingWordLimpa a sobreposição do cursor de leitura no nível de palavra atual em TPdfView
TrackReadingWordAt(PageNumber, CharIndex: Integer): IntegerMapeia um deslocamento de caractere da página para o TPdfWordBox que o contém, realça-o e retorna o índice da palavra
SelectWordBox(const Word: TPdfWordBox): BooleanSeleciona o intervalo de texto do visualizador representado por um TPdfWordBox
SelectWordSpan(const Words: TPdfWordBoxes; StartIndex, EndIndex: Integer): BooleanSeleciona um trecho na mesma página de registros TPdfWordBox como uma única seleção de texto do visualizador
BuildReadingUnits(Fragments)Converte TPdfContentFragments em registros TPdfReadingUnit por sentença sem carregar pdfium.dll
NextReadingUnitOfKind(Units, CurrentIndex, Kind, GoForward)Encontra o próximo ou o anterior TPdfReadingUnit cujo Kind corresponde a um TPdfContentFragmentKind solicitado
BuildWordBoxes(PageText)Divide o texto da página em registros TPdfWordBox com texto da palavra e intervalos de caracteres FTextPage
WordBoxIndexAtCharIndex(Words, CharIndex)Mapeia um índice de caractere de volta ao índice TPdfWordBox baseado em 0 que o contém
SpokenTextAppend(var Spoken: TPdfSpokenText; const SpokenPart: WString; Page, StartIndex: Integer; SourceCount: Integer = -1)Anexa uma sequência mapeada de texto falado a TPdfSpokenText
BuildSpokenTextFromWords(Words, FirstWord, LastWord)Constrói TPdfSpokenText a partir de um intervalo contíguo de TPdfWordBox
SpokenToPageChar(Spoken, SpokenOffset, Page, CharIndex)Traduz um deslocamento de caractere do motor de fala de volta a um caractere da página PDF
EstimateSpokenWordIndex(Words, ElapsedMs, WordsPerMinute)Estima o índice da palavra falada quando o motor de fala não informa a posição da palavra

Operações de anotação

MétodoDescrição
CreateAnnotation(const Annotation: TPdfAnnotation)Criar uma nova anotação na página atual
DeleteAnnotation(Index: Integer)Excluir a anotação no índice

Achatar formulários

MétodoDescrição
GenerateFormAppearancesRegenera os fluxos de aparência /AP para cada widget de formulário em todas as páginas (FPDF_FFLDraw). Chame após as atribuições de FormField[] e antes de SaveAs / FlattenPage / FlattenAllPages
FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): IntegerAchata anotações e widgets de formulário da página atual em conteúdo estático. Retorna FLATTEN_SUCCESS, FLATTEN_NOTHINGTODO ou FLATTEN_FAIL
FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): BooleanAchata todas as páginas do documento. Retorna True quando todas as páginas têm sucesso
SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)Define os sinalizadores de campo AcroForm para o campo de formulário no índice de anotação especificado na página atual
SetFormFieldFlagsAt(X, Y: Single; const Flags: TPdfFormFieldFlags)Define os sinalizadores de campo AcroForm para o campo de formulário nas coordenadas de página especificadas

Operações de XFA

As bibliotecas Windows comuns da v3.125.3 relatam gravações finais em buffer que falharam como salvamentos com falha, alinhando-se ao reparo V8 da v3.125.2. As bibliotecas V8 do Windows preservam o texto editado em salvamentos packet-array e single-stream XDP suportados, incluindo espaços em branco originais e Unicode suplementar. Na v3.126.0, o single-stream XDP suportado também retém comentários e processing instructions fora dos datasets e pacotes de formulário ativos substituídos, incluindo entradas em UTF-8 e UTF-16 com BOM; codificação de entrada inválida, tags incompletas, referências de entidade inválidas, processing instructions malformadas, comentários ou processing instructions dentro dos pacotes substituídos, declarações DTD e XMLDSig são rejeitados. São salvaguardas de salvamento delimitadas, não um validador XML completo. Outros pacotes e namespaces de raiz suportados são retidos semanticamente; conformidade de forma externa arbitrária e serialização XML byte a byte permanecem fora do escopo verificado

Copiar, recortar e colar de formulário no visualizador do Windows usam um orçamento limitado de 100ms de novas tentativas para abrir a área de transferência na v3.126.0, sem fazer pump de mensagens de UI; acesso indisponível à área de transferência ainda retorna falha, e um recorte que falha preserva o texto e a seleção originais do campo

Na v3.126.1, adições e remoções de páginas em XFA dinâmico atualizam TPdf.PageCount e OnXfaPageCountChanged a partir do total real de páginas do layout concluído, em vez de interpretar o delta do evento nativo como o total

Na v3.126.2, a visualização de XFA completo mantém seguras as configurações padrão de seleção de texto, substitui o texto selecionado do campo durante a digitação e atualiza os handles de página depois que o callback de layout dinâmico retorna; campos somente leitura e AllowFormEvents mantêm suas restrições de entrada

As salvaguardas de salvamento das bibliotecas V8 do Windows na v3.126.2 validam sintaxe de atributos, atributos duplicados, qualified names, escopos de namespace e declarações XML antes de alterar single-stream XDP; XML schemas, DTD, XMLDSig, XML 1.1 e nomes de plano suplementar permanecem fora do escopo suportado

AnalyzeSignatureRevisions separa a propriedade da página dos links de navegação de widgets e preserva o contexto de conteúdo da página para payloads de aparência compartilhados, impedindo que uma edição posterior da página seja tratada como atualização permitida de formulário ou anotação

As bibliotecas V8 do Windows da v3.126.1 também recalculam a geometria dos widgets de entrada carregados quando o layout dinâmico move um campo, mantendo o texto e a área de acerto de entrada nativa alinhados com a nova posição. O fixture obrigatório do repositório verifica adição, remoção e mudança de altura de instâncias por meio de eventos nativos; formulários externos arbitrários e entrada em primeiro plano no visualizador continuam sendo trabalho de aceitação separado

MétodoDescrição
GetXfaConfigRecupera os bytes XML brutos do pacote config de XFA do documento PDF
GetXfaDatasetsRecupera os bytes XML originais dos datasets de XFA do documento PDF
GetXfaFormPacketsCaptura todos os pacotes XFA incorporados em uma coleção TXfaPacketList
GetXfaPacketByNameRetorna os bytes de conteúdo brutos do pacote XFA identificado pelo nome
GetXfaPacketContentRetorna os bytes de conteúdo brutos do pacote XFA no índice baseado em 0 informado
GetXfaPacketCountRetorna o número de pacotes XFA incorporados no documento
GetXfaPacketNameRetorna o nome do pacote XFA no índice baseado em 0 informado
GetXfaTemplateRecupera os bytes XML brutos do pacote template de XFA do documento PDF

Operações de anexos

MétodoDescrição
CreateAttachment(const Name: WString): BooleanCriar um novo anexo vazio
DeleteAttachment(Index: Integer): BooleanExcluir o anexo no índice

Operações de imagem

MétodoDescrição
AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): BooleanAdicionar imagem JPEG de um fluxo na posição e tamanho especificados
AddPicture(Picture: TPicture; X, Y: Double)Adicionar uma imagem na posição (tamanho original)
AddPicture(Picture: TPicture; X, Y, Width, Height: Double)Adicionar uma imagem na posição com o tamanho especificado
AddImage(const FileName: string; X, Y, Width, Height: Double)Inserção direta de arquivo de imagem (delega a AddPicture por meio de um TPicture temporário); aceita qualquer formato de imagem registrado nas unidades gráficas da VCL ou LCL
AddImage(Bitmap: TBitmap; X, Y, Width, Height: Double)Insere um TBitmap pf32bit diretamente sem o intermediário TPicture; gera EPdfError para bitmap nil

Operações de desenho

MétodoDescrição
CreatePath(X, Y: Single; FillMode; FillColor; FillAlpha; Stroke; StrokeColor; StrokeAlpha; StrokeWidth; LineCap; LineJoin; BlendMode)Criar um caminho iniciando na posição (X, Y)
CreatePath(X, Y, Width, Height: Single; ...)Criar um caminho retangular com os limites informados
MoveTo(X, Y: Single)Mover o ponto atual para (X, Y)
LineTo(X, Y: Single)Desenhar uma linha do ponto atual até (X, Y)
BezierTo(X1, Y1, X2, Y2, X3, Y3: Single)Desenhar uma curva Bezier com dois pontos de controle e um ponto final
ClosePathFechar o subcaminho atual
AddPathAdicionar o caminho concluído à página atual

Renderização

MétodoDescrição
RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation; Options)Renderizar a página em um contexto de dispositivo (HDC)
RenderPage(Left, Top, Width, Height: Integer; Rotation; Options; Color): TBitmapRenderizar a página em um novo bitmap
RenderPage(Bitmap: TBitmap; Left, Top, Width, Height: Integer; Rotation; Options; Color)Renderizar a página em um bitmap existente
RenderPageByIndex(PageNumber, Width, Height: Integer; Rotation; Options; Color): TBitmapRenderiza qualquer página em tamanho exato sem alterar a página ativa, reutilizando cenas de páginas parseadas
RenderPageSkia(Canvas, Width, Height, DrawFormOverlay)Renderiza a página ativa e a sobreposição opcional de formulário em um SkCanvas de propriedade do chamador quando o módulo PDFium carregado expõe Skia
RenderPageSkiaByIndex(Canvas, PageNumber, Width, Height, DrawFormOverlay)Renderiza qualquer página para Skia por meio do cache limitado de cenas de páginas parseadas sem alterar a página ativa
SpotPlates / RenderSpotPlate / PageUsesOverprint / RenderOverprintPreviewEnumera e renderiza placas de impressão exatas ou pré-visualização de overprint por meio da ABI opcional de saída de impressão com verificação de capacidade
GetSkiaRenderCapabilities / GetPrintOutputCapabilitiesSonda exportações opcionais de renderização nativa sem torná-las requisitos de carregamento da DLL do PDFium
RenderPageThumbnail(PageIndex, MaxWidth, MaxHeight, Rotation, Options, Background, ColorScheme): TBitmapRenderiza qualquer página baseada em 1 em um bitmap de miniatura de propriedade do chamador com rotação, sinalizadores, plano de fundo e cores de baixa visão opcionais, sem alterar PageNumber
ThumbnailCacheMaxEntries / ThumbnailCacheMaxBytes / ThumbnailCacheStatistics / ClearThumbnailCacheLimita a retenção de miniaturas incorporadas e renderizadas por tetos de itens e bytes de pixel e inspeciona a telemetria LRU
ClearPageSceneCacheLibera todas as cenas de páginas parseadas não usadas e descarta entradas em andamento quando sua renderização termina
RenderPagesParallel(PageNumbers; Options; CancellationToken): TPdfParallelRenderReportRenderiza várias requisições de páginas baseadas em 1 simultaneamente por meio de documentos de trabalho isolados que compartilham uma origem imutável de memória, arquivo mapeado ou acesso aleatório nativo
RenderPageBandedToEncoder(Width, Height, BandHeight; Encoder): TPdfBandedImageReportEntrega faixas de página corretamente recortadas a um codec do chamador sem montar um bitmap de página completa
RenderPageBandedToStream(Stream, Width, Height, StreamOptions): TPdfBandedImageReportGrava saída PNG ou TIFF somente para frente com memória de faixas limitada e um teto opcional de bytes de saída
RenderDiffOverlay(Other: TPdf; const Difference: TPdfPageDifference; const Options: TPdfDocumentDiffOptions): TBitmapRenderiza um TPdfPageDifference retornado pelo CompareWith como um bitmap de overlay de propriedade de quem chama
RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; ...): TBitmapRenderizar um tile (porção) de uma página em um novo bitmap
RenderTile(Bitmap: TBitmap; Left, Top, Width, Height, PageWidth, PageHeight: Integer; ...)Renderizar um tile em um bitmap existente
InvertPdfBitmap(Bitmap)Inverte os canais RGB em um TBitmap de 32 bits renderizado, no próprio bitmap, para visualização em modo escuro ou alto contraste
GrayscalePdfBitmap(Bitmap)Converte um TBitmap de 32 bits renderizado em tons de cinza por luminância, no próprio bitmap
DuotonePdfBitmap(Bitmap, DarkColor, LightColor)Mapeia a luminância do bitmap renderizado para cores escura e clara escolhidas pelo chamador, no próprio bitmap

Conversão de coordenadas

MétodoDescrição
DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): BooleanConverter coordenadas de dispositivo em coordenadas de página
PageToDevice(PageX, PageY: Double; Left, Top, Width, Height: Integer; Rotation: TRotation; out X, Y: Integer): BooleanConverter coordenadas de página em coordenadas de dispositivo

Assinaturas digitais PAdES

MétodoDescrição
PadesCryptoAvailableIndica se o backend criptográfico de assinaturas está disponível no sistema
AnalyzeSignatureRevisionsClassifica revisões posteriores dos bytes originais contra as permissões DocMDP e FieldMDP de cada assinatura
BuildPadesEvidenceReport(Options)Correlaciona fatos nativos de assinaturas, confiança, carimbos de data/hora, políticas, cobertura DSS/VRI e revisões posteriores em evidências limitadas em JSON ou CSV
PreparePadesRemoteSignature(Prepared; Options; out Request)Prepara um marcador de posição de assinatura desanexada vinculado ao fingerprint, com restrições opcionais de seed-value, certificado, FieldMDP e DocMDP, para fluxos HSM, em nuvem ou interrompidos
CompletePadesRemoteSignature(Prepared; Dest; Request; CmsDer)Valida e preenche uma sessão persistida de assinatura remota com o valor CMS desanexado retornado
SavePadesRemoteSigningRequest(Stream; Request)Serializa uma requisição de assinatura remota versionada para retomada posterior
LoadPadesRemoteSigningRequest(Stream)Carrega e valida uma requisição persistida de assinatura remota
RenewPadesArchiveTimestamp(FileName; Options; out Report)Anexa um novo Document Time-stamp de arquivamento sem modificar revisões assinadas anteriores
RenewPadesArchiveTimestampToStream(Stream; Options; out Report)Grava a cadeia B-LTA renovada em um fluxo após validação completa
SaveAsPadesDss(const FileName: string; const Options: TPadesDssOptions)Salva o PDF ativo com material DSS PAdES desduplicado e dicionários VRI específicos por assinatura
SaveAsPadesDssToStream(Stream: TStream; const Options: TPadesDssOptions)Salva o PDF ativo em um fluxo com material DSS PAdES desduplicado e dicionários VRI específicos por assinatura
SignPades(const FileName: string; const Options: TPadesSignOptions)Anexa uma assinatura PAdES de aprovação ou certificação restrita usando repositórios de certificados locais
SignPadesToStream(Stream: TStream; const Options: TPadesSignOptions)Grava uma atualização de assinatura PAdES de aprovação ou certificação restrita em um fluxo
SignPadesWithPdfA(const FileName: string; const Options; PdfAOptions)Salva um documento PDF assinado com PAdES em conformidade com os padrões de arquivamento PDF/A
ValidatePadesInspeciona estruturas PAdES dos bytes originais, rejeita chaves obrigatórias ambíguas, comprova a exclusão exata do token Contents e informa revisões cobertas, estados criptográficos, perfis de algoritmos da ISO/TS 32002, nível de linha de base e problemas estruturais
ValidatePadesTrust(Options)Valida integridade da assinatura nos bytes originais, confiança atual do sistema, evidências opcionais de revogação e tokens de carimbo de data/hora RFC 3161
ValidatePadesTrustAsync(Options; Reply)Executa a validação de confiança em estágios em uma thread de trabalho com progresso e cancelamento

Propriedades do componente TPdf

Propriedades publicadas, em tempo de design

PropriedadeTipoDescrição
AboutstringInformações de versão do componente, stored False
ActiveBooleanDefina como True para carregar ou ativar o documento, False para fechá-lo
FileNamestringCaminho do arquivo PDF a ser carregado
FormFillBooleanAtiva o preenchimento interativo de formulários com suporte a JavaScript, padrão True
PageNumberIntegerNúmero da página atual, baseado em 1, ou 0 quando nenhum documento está carregado
PasswordstringSenha para abrir documentos PDF criptografados

Propriedades do documento

PropriedadeTipoR/WDescrição
AuthorWStringRAutor do documento
CompressedBooleanR/WQuando True, padrão, SaveAs pós-processa a saída para garantir que todos os fluxos estejam comprimidos com FlateDecode
CreationDateWStringRMetadados da data de criação do documento
CreatorWStringRAplicativo que criou o documento
DocumentFPDF_DOCUMENTRHandle de documento PDFium de baixo nível
FileIdentifier[IDType: TPdfFileIdentifierType]TBytesRBytes do identificador de arquivo do trailer, permanente ou variável, sem o byte terminador do PDFium
FormTypeTPdfFormTypeRTipo de formulário: ftNone, ftAcroForm, ftXFAFull, ftXFAForeground
IsTaggedBooleanRTrue se o documento é um PDF marcado
JavaScriptAction[Index]TPdfJavaScriptActionRAção JavaScript da name tree em nível de documento pelo índice baseado em 0
JavaScriptActionCountIntegerRNúmero de ações JavaScript da name tree em nível de documento
JavaScriptActionsTPdfJavaScriptActionsRTodas as ações JavaScript da name tree em nível de documento
KeywordsWStringRPalavras-chave do documento
LanguageWStringR/WIdioma do catálogo do documento (/Lang)
StructureElementsTPdfStructureElementsRElementos de estrutura lógica aplainados da página atual por meio do cache compartilhado de snapshots
StructureElementsForPage[PageNumber]TPdfStructureElementsRSnapshot de estrutura em cache de propriedade do chamador para qualquer página baseada em 1, sem alterar a página ativa
StructureCacheCapacityIntegerR/WNúmero máximo de snapshots completos de estrutura de página retidos pelo cache LRU
StructureCacheCountIntegerRNúmero atual de snapshots de estrutura de página em cache
StructureCacheHitCount / StructureCacheMissCountInt64RTelemetria cumulativa do cache de snapshots de estrutura para esta instância do componente
MetaText[const Tag: string]WStringRValor de metadado arbitrário pelo nome da tag
MetadataTPdfDocumentMetadataRUm único snapshot contendo os oito campos de metadados padrão do dicionário Info
ModifiedDateWStringRMetadados da data da última modificação
PageCountIntegerRNúmero total de páginas
PdfVersionTPdfVersionRVersão efetiva do PDF, incluindo uma substituição /Version válida do catálogo quando presente
PermissionsLongWordRSinalizadores de permissões do documento
GrantedPermissionsTPdfPermissionsRConjunto tipado de permissões de senha do proprietário decodificado de Permissions
PrintCopiesIntegerRNúmero de cópias de impressão especificado
PrintPageRangesTPdfPrintPageRangesRIntervalos de páginas de impressão baseados em 1 das preferências do visualizador
PrintPaperHandlingTPrintPaperHandlingRPreferência de manuseio de papel
PrintScalingBooleanRSe o dimensionamento de impressão está habilitado
ProducerWStringRAplicativo produtor do PDF
SubjectWStringRAssunto do documento
TitleWStringRTítulo do documento
UserPermissionsLongWordRPermissões no nível de usuário
UserGrantedPermissionsTPdfPermissionsRConjunto tipado de permissões de senha do usuário decodificado de UserPermissions
ViewerPreference[const Key: string]WStringRValor de preferência do visualizador pela chave
XFABooleanRTrue se o documento contém formulários XFA

Propriedades da página

PropriedadeTipoR/WDescrição
PageFPDF_PAGERHandle de página PDFium de baixo nível
PageBoundsTPdfRectangleRRetângulo delimitador da página atual
PageComplexityTPdfPageComplexityRFatos nativos de objetos, segmentos, pixels de imagem e transparência da página atual
PageBox[Box: TPdfPageBox]TPdfRectangleR/WMediaBox, CropBox, BleedBox, TrimBox ou ArtBox da página atual
PageHeightDoubleRAltura da página atual em pontos
PageLabel[PageNumber: Integer]WStringRRótulo de página para um número de página informado
PageModeTPageModeRComo o documento deve ser exibido ao ser aberto
PageRotationTRotationR/WRotação da página atual (ro0, ro90, ro180, ro270)
PageWidthDoubleRLargura da página atual em pontos
ThumbnailTBitmapRBitmap de miniatura da página atual
TransparentBooleanRTrue se a página atual contém conteúdo transparente

Propriedades de texto e caracteres

PropriedadeTipoDescrição
Character[Index]WideCharCaractere Unicode no índice
CharacterAngle[Index]SingleÂngulo de rotação do caractere em radianos
CharacterCountIntegerNúmero de caracteres na página atual
CharacterFontSize[Index]DoubleTamanho da fonte do caractere no índice; FontSize[Index] permanece como alias compatível
CharacterFontWeight[Index]IntegerPeso da fonte do caractere no índice
CharacterGenerated[Index]BooleanTrue se o caractere foi gerado (não proveniente do conteúdo original)
CharacterIsHyphen[Index]BooleanTrue se o caractere é um hífen
CharacterMapError[Index]BooleanTrue se o caractere tem um erro de mapeamento
CharacterOrigin[Index]TPdfPointPonto de origem do caractere
CharacterRectangle[Index]TPdfRectangleRetângulo delimitador do caractere
Charcode[Index]WideCharCódigo do caractere no índice
FindFPDF_SCHHANDLEHandle de busca PDFium de baixo nível
Rectangle[Index]TPdfRectangleRetângulo de texto da última chamada a RectangleCount
TextPageFPDF_TEXTPAGEHandle de text page PDFium de baixo nível

Propriedades da fonte

PropriedadeTipoDescrição
FontAscent[Index; FontSize]SingleAscent da fonte usada pelo objeto de texto no índice
FontBaseName[Index]WStringNome base da fonte do objeto de texto no índice
FontData[Index]TBytesDados brutos da fonte do objeto de texto no índice
FontDescent[Index; FontSize]SingleDescent da fonte usada pelo objeto de texto no índice
FontFamilyName[Index]WStringNome da família da fonte do objeto de texto no índice
FontHandle[Index]FPDF_FONTHandle de fonte PDFium de baixo nível para o objeto de texto no índice
FontIsEmbedded[Index]BooleanTrue se a fonte do objeto de texto está incorporada ao PDF
FontItalicAngle[Index]IntegerÂngulo itálico da fonte do objeto de texto
FontSize[Index]DoubleAlias compatível com versões anteriores de CharacterFontSize[Index]
FontWeight[Index]IntegerPeso da fonte do objeto de texto (por exemplo, 400 = normal, 700 = negrito)

Propriedades do objeto

PropriedadeTipoDescrição
ObjectCountIntegerNúmero de objetos de página
ObjectType[Index]TObjectTypeTipo: otUnknown, otText, otPath, otImage, otShading, otForm
ObjectBounds[Index]TPdfRectangleRetângulo delimitador do objeto
ObjectBitmap[Index]TBitmapRepresentação em bitmap do objeto
ObjectHandle[Index]PointerHandle de objeto de baixo nível
ObjectTransparent[Index]BooleanTrue se o objeto é transparente

Propriedades da imagem

PropriedadeTipoDescrição
Bitmap[Index]TBitmapBitmap do objeto de página no índice
BitmapCountIntegerNúmero de objetos bitmap na página
Image[Index]TPdfImageDados da imagem (Width, Height, Data) no índice
ImageInfo[Index]TPdfImageInfoDimensões, filtros, DPI, profundidade de bits, espaço de cores, ID de marked-content e fatos ICC leves, sem copiar os bytes do payload
ImageCountIntegerNúmero de imagens na página

Propriedades da anotação

PropriedadeTipoR/WDescrição
Annotation[Index]TPdfAnnotationR/WObtém ou define a anotação no índice
AnnotationCountIntegerRNúmero de anotações na página atual

Propriedades do formulário

PropriedadeTipoR/WDescrição
FormField[Index]WStringR/WValor do campo de formulário pelo índice
FormFieldAt[X, Y: Single]WStringR/WValor do campo de formulário na posição da página
FormFieldCountIntegerRNúmero de campos de formulário na página atual
FormFieldInfo[Index]TPdfFormFieldInfoRInformação do campo de formulário pelo índice
FormFieldInfoAt[X, Y: Single]TPdfFormFieldInfoRInformação do campo de formulário na posição da página
FormFieldTypeAtPoint(X, Y: Double; out FieldType)BooleanRRetorna o tipo nativo do campo em um ponto da página sem alocar um handle de anotação
FocusedFormFieldValue()WStringRRetorna o valor lógico atual do campo de formulário por FocusedFormFieldIndex sem depender do cursor interativo
FocusedFormFieldName()WStringRRetorna o nome de exibição lógico atual do campo de formulário, preferindo AlternateName e recuando para Name
FocusedFormFieldDetails()TPdfFormFieldInfoRRetorna TPdfFormFieldInfo para o campo de formulário lógico atual
FormHandleFPDF_FORMHANDLERHandle de preenchimento de formulário de baixo nível
HasFormFieldAt[X, Y: Single]BooleanRTrue se existe um campo de formulário na posição

Propriedades do anexo

PropriedadeTipoR/WDescrição
Attachment[Index]TBytesR/WDados do anexo pelo índice
AttachmentCountIntegerRNúmero de anexos
AttachmentName[Index]WStringRNome do arquivo do anexo pelo índice
AttachmentType[Index]WStringRSubtipo MIME do anexo pelo índice

Propriedades de navegação

PropriedadeTipoDescrição
Bookmark[const Title: WString]TBookmarkLocaliza um marcador pelo título com destino, ação, estado aberto, contagem de descendentes, caminho e metadados de cor
BookmarkChildren[const Bookmark: TBookmark]TBookmarksMarcadores filhos de um marcador
BookmarkFrom[Handle: FPDF_BOOKMARK]TBookmarkDados do marcador a partir de um handle
BookmarksTBookmarksArray de marcadores de nível superior
Destination[Index]TDestinationDestino nomeado pelo índice com modo de exibição e parâmetros brutos de exibição
DestinationByName[const Name: WString]TDestinationDestino nomeado pelo nome
DestinationCountIntegerNúmero de destinos nomeados
HasBookmarkChildren[const Bookmark: TBookmark]BooleanTrue se o marcador tem filhos
LinkAnnotation[PageNumber, Index]TLinkAnnotationAnotação de link em uma página informada
LinkAnnotationCount[PageNumber]IntegerNúmero de anotações de link em uma página
WebLink[PageNumber, Index]TWebLinkLink da web (URL) em uma página informada
WebLinkCount[PageNumber]IntegerNúmero de links da web em uma página

Propriedades de assinatura digital

PropriedadeTipoDescrição
Signature[Index]TPdfSignatureInformação da assinatura digital no índice
SignatureCountIntegerNúmero de assinaturas digitais no documento
SignaturesTPdfSignaturesSnapshot de propriedade do chamador de cada assinatura digital nativa

Eventos do TPdf

EventoTipoDescrição
OnFormFieldEnterTPdfFormFieldEnterEventDisparado quando um campo de formulário é acessado. Parâmetros: Sender: TObject; const Text: WString
OnFormFieldExitTNotifyEventDisparado quando o foco sai de um campo de formulário
OnJavaScriptAlertTPdfJavaScriptAlertEventDisparado quando o JavaScript incorporado ao PDF chama app.alert para exibir uma caixa de mensagem
OnJavaScriptBeepTPdfJavaScriptBeepEventDisparado quando o JavaScript incorporado ao PDF chama app.beep para reproduzir um som do sistema
OnJavaScriptMailTPdfJavaScriptMailEventDisparado quando o JavaScript incorporado ao PDF chama mailDoc ou app.mailMsg para compor uma mensagem de e-mail
OnJavaScriptPrintTPdfJavaScriptPrintEventDisparado quando o JavaScript incorporado ao PDF chama print para iniciar um trabalho de impressão
OnJavaScriptResponseTPdfJavaScriptResponseEventDisparado quando ações JavaScript incorporadas ao PDF solicitam interação do usuário
OnJavaScriptSubmitFormTPdfJavaScriptSubmitFormEventDisparado quando o JavaScript incorporado ao PDF envia um formulário para uma URL
OnNamedActionTPdfNamedActionEventDisparado quando o documento gera uma ação nomeada; defina Handled para assumir os quatro nomes padrão de navegação
OnPageChangeTNotifyEventDisparado quando a página atual muda
OnUnsupportedFeatureTPdfUnsupportedFeatureEventDisparado quando o PDF contém um recurso sem suporte
OnXfaEmailTPdfXfaEmailEventDisparado quando um formulário XFA dinâmico solicita uma ação de e-mail
OnXfaFocusChangeTPdfXfaFocusChangeEventDisparado quando o campo com foco muda dentro de um formulário XFA dinâmico
OnXfaGotoUrlTPdfXfaGotoUrlEventDisparado ao navegar por URLs de links dentro de formulários XFA dinâmicos
OnXfaHttpRequestTPdfXfaHttpRequestEventDisparado quando um formulário XFA dinâmico emite uma requisição HTTP
OnXfaOpenFileTPdfXfaOpenFileEventDisparado quando um formulário XFA dinâmico solicita abrir um arquivo externo
OnXfaPageCountChangedTPdfXfaPageCountChangedEventDisparado quando a contagem de páginas de um formulário XFA dinâmico muda em tempo de execução
OnXfaRuntimeMissingTNotifyEventDisparado quando um documento XFA é aberto mas o runtime de XFA não está disponível
OnXfaUriActionTPdfXfaUriActionEventDisparado quando ações de URI de links são acionadas dentro de contextos XFA dinâmicos
OnFormCursorTPdfFormCursorEventDisparado quando um campo de formulário solicita um formato de cursor; defina Handled para sobrescrever o cursor nativo
OnFormValueChangeTPdfFormValueChangeEventDisparado após o valor do campo de formulário com foco mudar
OnFormUriActionTPdfFormUriActionEventDisparado quando um campo de formulário gera uma ação de URI; defina Handled para suprimir a navegação nativa
OnFormGoToActionTPdfFormGoToActionEventDisparado quando um campo de formulário gera uma ação go-to com página, modo de zoom e posições; defina Handled para navegar manualmente
OnFormSelectionRectTPdfFormSelectionRectEventDisparado quando a camada de formulário informa um retângulo de seleção para o campo com foco

Outros Métodos e Propriedades Públicas

APIDescrição
function AnalyzeSignatureRevisions: TPadesRevisionAnalysisReportReconstrói a cadeia de revisões original e classifica alterações posteriores de objetos para cada assinatura incorporada
function BuildPadesEvidenceReport(const Options: TPadesEvidenceReportOptions): TPadesEvidenceReportConstrói evidências exportáveis de múltiplas assinaturas a partir de uma única captura retida dos bytes originais
property About: stringInforma as informações de versão do componente PDFium Delphi Component para TPdf
ActiveAbre ou fecha o documento PDF selecionado
function AddAnnotationFileAttachment(AnnotIndex: Integer; const Name: WString; const FileData: TBytes): BooleanAnexa um arquivo incorporado a uma anotação existente e grava seu conteúdo em uma única chamada
procedure AddImage(const FileName: string; X, Y, Width, Height: Double)Insere uma imagem de um arquivo na página PDF atual. Usa TPicture.LoadFromFile internamente, portanto qualquer formato de imagem registrado nas unidades gráficas da VCL ou LCL (BMP, PNG via Vcl.Imaging.PngImage / LCL TPortableNetworkGraphic, JPG etc.) é aceito. As coordenadas estão no espaço de usuário do PDF (origem no canto inferior esquerdo da página); Width e Height são o tamanho de posicionamento em unidades de usuário, não o tamanho em pixels da imagem de origem
function AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): BooleanAdiciona uma imagem JPEG à página PDF atual usando as coordenadas especificadas
procedure AddPage(PageNumber: Integer; Width, Height: Double)Cria uma nova página em branco com as dimensões informadas em pontos
AddPathConfirma o caminho acumulado de MoveTo/LineTo/BezierTo como um novo objeto de página com a pintura solicitada
procedure AddPathToAnnotation(Index: Integer)Entrega o caminho pendente de CreatePath a uma anotação de tinta ou carimbo em vez de ao conteúdo da página
procedure AddPicture(Picture: TPicture; X, Y: Double)Adiciona uma imagem à página PDF atual usando as coordenadas especificadas
function AddPageObjectMark(Index: Integer; const Name: AnsiString; const Params: TPdfContentMarkParams): IntegerAdiciona uma entrada de marked-content e sua lista inicial tipada de propriedades a um objeto de página
PageObjectInfo / AnnotationObjectInfo / PageObjectMarks / PathInfo / TransformPageObject / RenderPageWithMatrixInspeção avançada de conteúdo de página e de objetos de anotação, marcas, caminhos, transformações e métricas de texto em uma única página de visão geral
function SharePageObjectMark(TargetIndex, SourceIndex, SourceMarkIndex: Integer): BooleanReutiliza uma marca nativa de propriedade de marked-content em outro objeto de página
function AddShapedText(const Text, Font: WString; FontSize: Single; X, Y: Double; out Shaped: TPdfShapedText; Direction: TPdfTextDirection = ptdAuto; Color: TColor = clBlack; Alpha: Byte = $FF): BooleanMolda sequências bidi e de scripts complexos em glifos CID Type 2 posicionados com semântica lógica ToUnicode e ActualText
procedure AddStandardFontText(const Text: WString; StandardFont: TPdfStandardFont; FontSize: Single; X, Y: Double; Color: TColor; Alpha: Byte; Angle: Double = 0.0)Desenha texto com uma das 14 fontes padrão do PDF, sem incorporar nenhum programa de fonte
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): BooleanIncorpora glifos CID Type 2 posicionados com mapeamentos Unicode explícitos, subsetting TrueType opcional, fallback controlado e verificação de extração
procedure AddText(const Text, Font: WString; FontSize: Single; X, Y: Double; Color: TColor = clBlack; Alpha: Byte = $FF; Angle: Double = 0.0)Adiciona texto à página PDF atual na posição especificada
AnnotationPropriedade indexada — retorna o registro de anotação no índice informado na página atual (subtipo, retângulo, cor, contents etc.)
AnnotationCountNúmero de objetos de anotação anexados à página ativa atual
function AnnotationObjectCount(Index: Integer): IntegerConta os objetos de página a partir dos quais uma anotação de tinta ou carimbo se desenha
function AnnotationObjectInfo(Index, ObjectIndex: Integer): TPdfPageObjectInfoLê tipo, limites, matriz, cores e estilo de linha de um objeto de página pertencente a uma anotação
property Attachment[Index: Integer]: TBytesLê ou substitui o payload bruto de bytes do arquivo incorporado em nível de documento no índice baseado em 0 especificado. Cada posição corresponde a uma entrada na name tree EmbeddedFiles do PDF definida na seção 7.11 da especificação PDF 1.7
AttachmentCountNúmero de anexos de arquivos incorporados declarados no documento
property AttachmentDescription[Index: Integer]: WStringLê ou grava a descrição /Desc de um arquivo incorporado em nível de documento
function AttachmentHasKey(Index: Integer; const Key: WString): BooleanTesta se um anexo incorporado contém uma chave de especificação de arquivo informada
AttachmentNameRetorna o nome de arquivo Unicode registrado para o arquivo incorporado no índice baseado em 0 informado na name tree EmbeddedFiles do documento
property AttachmentRelationship[Index: Integer]: WStringRetorna o nome /AFRelationship de um arquivo incorporado em nível de documento (ISO 32000-2 Table 43), ou uma string vazia quando ausente
AttachmentTypeRetorna a string de MIME / subtipo registrada para o arquivo incorporado no índice baseado em 0 especificado. O valor é obtido da entrada /Subtype do dicionário de especificação de arquivo, conforme definido na seção 7.11.3 do PDF
AuthorRetorna o valor da entrada /Author do dicionário de informações do documento PDF
BezierToAnexa uma curva Bezier cúbica do ponto atual pelos pontos de controle (X1,Y1) e (X2,Y2) até (X3,Y3)
BitmapRetorna um TBitmap da VCL recém-decodificado contendo os dados raster do objeto de imagem especificado na página atual. O bitmap é alocado a cada chamada; o chamador é o proprietário e é responsável por chamar Free
BitmapCountNúmero de objetos de página de imagem na página ativa, acessíveis como TBitmap da VCL
BookmarkLocaliza um marcador pela sua string de título e retorna o registro TBookmark correspondente da árvore de estrutura de tópicos do documento definida na seção 12.3.3 do PDF
BookmarkChildrenPropriedade indexada — retorna os marcadores filhos imediatos de um nó pai de marcador informado
BookmarkFromConverte um handle bruto FPDF_BOOKMARK em um registro TBookmark totalmente preenchido ao ler o título, a página de destino e os metadados de ação desse nó de estrutura de tópicos
BookmarksPropriedade indexada — retorna a lista completa de entradas de nível superior da estrutura de tópicos (marcadores) do documento
CharacterAcesso indexado somente leitura à forma de string UTF-16 do caractere no índice informado (normalmente uma unidade de código, mas duas para um par substituto)
CharacterAngleAcesso indexado somente leitura ao ângulo de rotação do caractere em radianos, levando em conta a CTM da página
CharacterCountNúmero de caracteres extraíveis na página ativa atual
CharacterFontSizeAcesso indexado somente leitura ao tamanho efetivo da fonte usado para renderizar o caractere (em pontos do PDF, após o dimensionamento pela CTM)
CharacterFontWeightAcesso indexado somente leitura ao valor OS/2 usWeightClass da fonte usada (100 = Thin, 400 = Regular, 700 = Bold, 900 = Black)
CharacterGeneratedRetorna True quando o caractere no índice especificado foi sintetizado pelo PDFium durante a extração de texto, em vez de desenhado explicitamente pelo fluxo de conteúdo da página. Caracteres sintéticos são emitidos para expansão de ligaduras, hifenização suave e heurísticas de fronteiras de palavras/linhas, para que os resultados de busca e seleção total sejam de leitura natural
function CharacterIndexToTextIndex(Index: Integer): IntegerMapeia um índice de caractere para seu deslocamento no texto extraído, ou -1 para caracteres gerados
function CharacterInfo(Index: Integer): TPdfCharacterInfoLê cor, nome e sinalizadores da fonte, limites aproximados, matriz e objeto de texto proprietário de um caractere
function CharacterIndexAtPos(X, Y, ToleranceX, ToleranceY: Double): IntegerObtém o índice de um caractere em ou próximo de uma determinada posição na página. Se não houver caractere em ou próximo do ponto, o valor de retorno será -1. Se ocorrer um erro, será retornado -3
CharacterIsHyphenRetorna True quando o caractere no índice especificado é reconhecido como um hífen opcional usado para quebra de palavras no fim da linha. Útil ao reconstruir palavras entre quebras de linha sem reter a marca visível do hífen
CharacterMapErrorRetorna True quando o caractere no índice especificado não pôde ser mapeado para um code point Unicode válido. O sinalizador é relatado por caractere pelo extrator de texto do PDFium e permite que os chamadores identifiquem code points provavelmente incorretos porque a fonte de origem não possui uma CMap ToUnicode ou um vetor de codificação utilizáveis
CharacterOriginAcesso indexado somente leitura à origem (âncora esquerda da linha de base) do caractere em pontos do espaço de usuário do PDF
CharacterRectangleAcesso indexado somente leitura ao retângulo delimitador do caractere em coordenadas do espaço de usuário do PDF (origem no canto inferior esquerdo, em pontos)
CharcodeAcesso indexado somente leitura ao code point Unicode (UCS-4) do caractere no índice informado
function ChooseRenderFlags(Scale: Double; DestWidth, DestHeight: Integer): IntegerEscolhe sinalizadores nativos FPDF_RENDER_* a partir da escala final e do tamanho de destino para subsampling adaptativo de imagens
procedure ClearFormFieldFocusOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
procedure ClearPageSceneCacheLimpa as cenas de páginas parseadas em cache sem alterar a página ativa
procedure ClearThumbnailCacheLibera bitmaps de miniaturas incorporadas e renderizadas retidos sem alterar limites ou telemetria do cache
ClosePathFecha o subcaminho atual desenhando uma linha reta de volta ao MoveTo mais recente
CompressedControla se os fluxos do PDF de saída são comprimidos com FlateDecode quando SaveAs / Save é chamado. O motor de compressão pós-salvamento examina o PDF serializado, substitui quaisquer fluxos não comprimidos por seus equivalentes zlib-deflate e reconstrói a tabela xref. Fluxos já comprimidos passam inalterados
constructor Create(AOwner: TComponent); overrideCria o componente TPdf e inicializa os estados de documento, renderização, formulário e cache
procedure CreateAnnotation(const Annotation: TPdfAnnotation)Cria uma nova anotação
CreateAttachmentAdiciona um novo arquivo incorporado (anexo) no nível do documento
procedure CreateDocumentFecha o documento atual (se houver) e inicia um novo PDF vazio
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)Cria um novo objeto de caminho em uma posição inicial
CreateXObjectFromPageEncapsula uma página de outro TPdf como um handle reutilizável de Form XObject que pode ser estampado neste documento quantas vezes for necessário
CreationDateCarimbo de data/hora de criação original do dicionário Info do documento
CreatorNome do aplicativo de autoria de origem armazenado no dicionário Info
property CrossReferenceTableValid: BooleanInforma se o documento carregado tem uma tabela de referências cruzadas intacta
DeleteAnnotationRemove a anotação no índice informado na página atual
function DeleteAttachment(Index: Integer): BooleanRemove o anexo de arquivo incorporado no índice informado
procedure DeletePage(PageNumber: Integer)Remove do documento a página em PageIndex
DestinationRetorna o registro TDestination para o destino nomeado no índice baseado em 0 especificado. Destinos nomeados são os destinos indiretos definidos na árvore Dests / Names do catálogo do documento, conforme descrito na seção 12.3.2 do PDF
DestinationByNameLocaliza um destino /Names pelo nome em string e retorna sua página alvo / tipo de ajuste / coordenadas
DestinationCountNúmero de destinos nomeados declarados no documento
function DetectPageSkew(out Report: TPdfSkewReport): BooleanMede a inclinação da página atual com precisão de cerca de 0,1 grau, com um valor de confiança
destructor Destroy; overrideLibera handles de documento, estado de formulário, fontes em cache, fluxos e timers antes que TPdf seja destruído
ExportXFDFSerializa campos de formulário e anotações para XFDF em UTF-8 preservando caminhos de campos aninhados e a distinção entre valores ausentes e explicitamente vazios
function ExportXFDFToStream(Stream: TStream): IntegerGrava todos os valores de formulário e anotações do documento em um fluxo como XFDF
function ExtractAttachmentsToStreams(const Destinations: array of TStream; const Options: TPdfAttachmentBatchOptions; out Report: TPdfAttachmentBatchReport; const CancellationToken: IPdfCancellationToken = nil): BooleanGrava anexos decodificados em fluxos de propriedade do chamador sob orçamentos de contagem e bytes, com cancelamento e resultados por item
TPdfAttachmentBatchOptions / TPdfAttachmentBatchReportModelo de processamento em lote de anexos em uma única passada com limites definidos, para enumeração de metadados e extração de payload de propriedade de quem chama
ExtractThumbnail(PageNumber: Integer): TBitmapDecodifica a miniatura incorporada da página sem trocar ou recarregar a página ativa
function DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): BooleanConverte a coordenada de tela de um ponto em coordenada de página
property DocumentHandle nativo FPDF_DOCUMENT do PDFium para acesso direto de baixo nível
function DocumentReadableContent: TPdfContentFragmentsRetorna fragmentos de conteúdo legível semântico para fluxos de leitor de tela, texto para fala e acessibilidade
function DocumentReadingUnits: TPdfReadingUnitsCria registros TPdfReadingUnit por sentença para o fluxo de conteúdo legível de todo o documento
FileIdentifierSinalizador somente leitura — retorna o array de identificadores de arquivo do documento para a posição de identificador solicitada
property FileNameCaminho do PDF a abrir; atribuir enquanto Active é True recarrega a partir do novo caminho
FindProcura por Pattern a partir de PageNum (ou da página atual se -1) e retorna o índice global de caracteres da primeira ocorrência
function FindFirst(const Text: WString; Options: TSearchOptions = []; StartIndex: Integer = 0; DirectionUp: Boolean = True): IntegerInicia uma busca pelo texto especificado. StartIndex é baseado em 0, -1 indica o fim da página. O parâmetro DirectionUp determina a direção da operação de busca
function FindNextAvança o cursor de uma sessão de busca em andamento e retorna o índice do próximo caractere correspondente
function FindPreviousRetrocede o cursor de busca em uma ocorrência
function CreateDocumentSearchCria uma busca lazy em todo o documento que retorna uma ocorrência e seus retângulos no espaço da página por chamada
function FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): BooleanWrapper de conveniência que achata todas as páginas do documento. Retorna True quando cada página termina com FLATTEN_SUCCESS ou FLATTEN_NOTHINGTODO. Fluxo recomendado: GenerateFormAppearances → FlattenAllPages → SaveAs
function FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): IntegerAchata anotações e widgets de formulário da página atual em conteúdo de página permanente (não editável). nFlag seleciona o perfil de achatamento: FLAT_NORMALDISPLAY (0) para exibição em tela ou FLAT_PRINT (1) para saída impressa. Retorna um entre FLATTEN_SUCCESS, FLATTEN_NOTHINGTODO ou FLATTEN_FAIL. Chame GenerateFormAppearances primeiro ao achatar valores de formulário preenchidos
FlattenPageRotationIncorpora o /Rotate atual de cada página ao fluxo de conteúdo, às caixas de página e aos retângulos de anotações e, em seguida, redefine /Rotate para 0, de modo que o layout visual seja preservado sem depender da dica de exibição de rotação
function FocusedFormFieldDetails: TPdfFormFieldInfoRetorna TPdfFormFieldInfo para o campo de formulário lógico atual
function FocusedFormFieldIndex: IntegerOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusedFormFieldName: WStringRetorna o nome de exibição lógico atual do campo de formulário, preferindo AlternateName e recuando para Name
function FocusedFormFieldText: WStringOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusedFormFieldTextDirection: TPdfFormTextDirectionLê a direção de texto em memória do widget com foco por meio da exportação FORM_GetTextDirection do PDFium
function FocusedFormOptionSelected(Index: Integer): BooleanInforma se uma opção da caixa de lista ou combinação com foco está selecionada
function FocusedFormFieldValue: WStringRetorna o valor lógico atual do campo de formulário por FocusedFormFieldIndex sem depender do cursor interativo
function FocusFormField(Index: Integer): BooleanOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusNextFormField: IntegerOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusPreviousFormField: IntegerOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
FontAscentRetorna o ascent da fonte (distância da linha de base ao ascendente mais alto) da fonte de um objeto de página, expresso em pontos do PDF e dimensionado para um tamanho de fonte informado pelo chamador
FontBaseNameRetorna o nome base PostScript (a entrada /BaseFont do dicionário de fontes do PDF) da fonte usada por um objeto de página, incluindo qualquer sufixo de estilo como -Bold ou ,Italic
FontDataAcesso indexado somente leitura aos bytes brutos do programa de fonte incorporado (preenchido apenas quando a fonte está incorporada)
FontDescentRetorna o descent da fonte (a distância da linha de base até o descendente mais baixo) da fonte de um objeto de página, expresso em pontos do PDF e dimensionado para um tamanho de fonte informado pelo chamador
FontFamilyNameRetorna o nome tipográfico da família (por exemplo, Helvetica, Times New Roman, Noto Sans CJK SC) da fonte usada por um objeto de página na página atual
property FontFlags[Index: Integer]: IntegerRetorna os sinalizadores nativos do descritor de fonte do PDF, ou -1 quando o objeto não tem fonte
FontHandleRetorna o handle nativo FPDF_FONT da fonte usada por um objeto de página. O handle dá aos chamadores avançados acesso direto a APIs de fonte do PDFium não encapsuladas pelo componente
FontIsEmbeddedIndica se a fonte usada por um objeto de página está incorporada ao PDF (True) ou apenas referenciada e resolvida no momento da exibição a partir do sistema operacional (False)
FontItalicAngleAcesso indexado somente leitura ao ângulo itálico da fonte em graus (negativo para itálico típico; 0 para upright)
FontSizeRetorna o tamanho renderizado da fonte, em pontos do PDF, de um caractere individual na página atual. FontSize é um alias de CharacterFontSize mantido para compatibilidade com versões anteriores
FontWeightRetorna o peso estilo CSS (negrito) da fonte usada por um objeto de página na página atual. Os valores típicos são 400 para regular e 700 para negrito
FormFieldPropriedade indexada — retorna um campo de formulário na página atual
FormFieldAtLê ou grava o valor do campo de formulário localizado na coordenada de página informada
FormFieldCountNúmero de widgets de campos de formulário na página ativa atual
FormFieldInfoRegistro completo que descreve um campo de formulário em um índice informado na página ativa
FormFieldInfoAtRegistro do campo de formulário para o widget localizado na coordenada de página informada
FormHostCallbacksComplete, FormSelectionRects, OnForm*Páginas de formulário nativas seguras quanto ao ciclo de vida, mais callbacks de navegação, URI, cursor, mudança de valor e seleção controlados pelo host
function FormFieldTypeAtPoint(X, Y: Double; out FieldType: TPdfFormFieldType): BooleanUsa hit-testing nativo de ponto para retornar o tipo do campo sem criar um handle de anotação
function FormFieldTabOrder: TPdfIntegerArrayOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
property FormFillInterface que permite ao seu aplicativo fornecer callbacks relacionados a formulários (Beep, Invalidate, OutputDocFile etc.)
FormHandleHandle nativo do ambiente de preenchimento de formulários do PDFium anexado ao documento
function DetachFormObjectChild(FormIndex, ChildIndex: Integer): FPDF_PAGEOBJECTRemove um filho de Form XObject e transfere a propriedade do seu handle nativo
function FormObjectChildren(Index: Integer): TPdfPageObjectInfosLista os objetos de página aninhados dentro de um Form XObject
function GetAnnotationFontColor(AnnotIndex: Integer; out Color: TColor): BooleanLê a cor do texto de uma anotação de widget de campo de formulário
function GetAttachmentStringValue(Index: Integer; const Key: WString): WStringLê uma entrada de string do dicionário de especificação de arquivo de um anexo
function GetImageObjectRenderedBitmap(Index: Integer): TBitmapRenderiza um objeto de imagem com sua máscara, conversão de cor e matriz aplicadas
function GetObjectRenderedStrokePattern(Index: Integer): TBitmapRasteriza o tiling pattern com que um objeto de caminho traça o contorno em um bitmap de propriedade do chamador, ou retorna nil quando não há pattern
property FormTypeIndica se o documento contém campos AcroForm, XFA ou nenhum formulário
procedure GenerateFormAppearancesRegenera o /AP (fluxo de aparência) para cada widget de formulário em todas as páginas renderizando cada página por meio de FPDF_FFLDraw. Esta é a chamada complementar recomendada às atribuições FormField[i] := valor — sem ela, os valores do formulário podem ficar visíveis apenas quando o campo tem foco, e qualquer operação de achatamento subsequente perderá os valores silenciosamente. Chame após todas as atribuições de FormField[] e antes de SaveAs / FlattenPage / FlattenAllPages
function GetPageBoxLê o retângulo da caixa de página nomeada na página atual
function GetXfaConfig: TBytesRecupera os bytes XML brutos do pacote config de XFA do documento PDF
function GetXfaDatasets: TBytesRecupera os bytes XML originais dos datasets de XFA do documento PDF
function GetXfaFormPackets: TXfaPacketListCaptura todos os pacotes XFA incorporados em uma coleção TXfaPacketList
function GetXfaPacketByName(const Name: string): TBytesRetorna os bytes de conteúdo brutos do pacote XFA identificado pelo nome
function GetXfaPacketContent(Index: Integer): TBytesRetorna os bytes de conteúdo brutos do pacote XFA no índice baseado em 0 informado
function GetXfaPacketCount: IntegerRetorna o número de pacotes XFA incorporados no documento
function GetXfaPacketName(Index: Integer): stringRetorna o nome do pacote XFA no índice baseado em 0 informado
function GetXfaTemplate: TBytesRecupera os bytes XML brutos do pacote template de XFA do documento PDF
GrantedPermissionsRetorna as permissões de senha do proprietário como um conjunto tipado TPdfPermissions
HasBookmarkChildrenRetorna True quando o nó de estrutura de tópicos informado tem pelo menos um marcador filho
HasFormFieldAtHit-test que retorna True quando um widget de campo de formulário cobre a coordenada de página informada
HasPermission(Permission: TPdfPermission): BooleanTesta uma permissão de senha do proprietário sem aritmética de bits manual
ImagePropriedade indexada — retorna um objeto de página de imagem na página atual (handle + bbox + profundidade de bits + espaço de cores)
ImageCountNúmero de XObjects de imagem raster na página ativa atual
function ImportFDF(const FileName: string): IntegerAplica valores de campos de formulário a partir de um documento FDF; também há uma sobrecarga com TStream
ImportXFDFAplica campos e anotações XFDF com reconhecimento de namespace, incluindo valores explicitamente vazios, texto misto com CDATA e nomes de campos profundamente aninhados
property IncrementalSaveActive: BooleanInforma se uma sessão de salvamento incremental está aberta no momento
procedure InsertClipPath(Left, Bottom, Right, Top: Single)Recorta tudo o que é desenhado na página atual para um retângulo em unidades de página do PDF
procedure InsertObjectAtIndex(StackIndex: Integer; PageObj: Pointer)Insere um objeto de página em uma profundidade escolhida na ordem de desenho, em vez de no topo
class function InspectAvailability(AStream: TStream): TPdfAvailabilityInforma linearização, disponibilidade de parse e primeira página de um fluxo PDF sem carregá-lo
ImportNPagesToOneConstrói um novo TPdf cujas páginas são compostas NumX×NumY das páginas do documento de origem, adequado para layouts de impressão N-up
ImportPagesCopia uma ou mais páginas de outro TPdf aberto para este documento
ImportPagesByIndexImporta um subconjunto específico de páginas de outro TPdf por índice baseado em 0, com controle sobre o ponto de inserção no documento atual
function ImportPreferences(Pdf: TPdf): BooleanConjunto de bits que controla como ImportPages copia o conteúdo (recursos, destinos nomeados, comentários etc.)
function InsertFormObjectFromXObject(XObject: TPdfXObject): FPDF_PAGEOBJECTInsere UMA cópia da página encapsulada por um TPdfXObject na página atual deste documento, retornando o FPDF_PAGEOBJECT para que o chamador possa posicionar / dimensionar / rotacionar
IsTaggedIndica se o documento declara uma árvore de estrutura para acessibilidade
JavaScriptActionPropriedade indexada — retorna uma ação JavaScript em nível de documento (nome + Type + string Source)
JavaScriptActionCountNúmero de ações JavaScript em nível de documento armazenadas no PDF
JavaScriptActionsTodas as ações JavaScript em nível de documento retornadas como um único array dinâmico
KeywordsLista de palavras-chave fornecida pelo autor, do dicionário Info do documento
LanguageIdentificador de idioma natural declarado no catálogo do documento
LineToAnexa uma linha reta do ponto atual até (X, Y)
LinkAnnotationPropriedade indexada — retorna o /Annot Subtype Link explícito no índice informado, incluindo a ação ou o destino alvo
LinkAnnotationCountNúmero de entradas de anotação /Link em uma página específica
function LinkAtPoint(X, Y: Double): BooleanFaz hit-test de uma coordenada no espaço da página contra anotações de link nativas por meio de FPDFLink_GetLinkAtPoint
procedure LoadCustomDocument(AStream: TStream; AOwnsStream: Boolean = False)Carrega um PDF de qualquer TStream pesquisável usando o leitor de blocos sob demanda do PDFium, de modo que documentos de múltiplos GB e origens remotas / apoiadas em banco de dados não precisem de uma cópia antecipada em memória
TPdfRandomAccessStoreArmazena conteúdo pesquisável sob um teto de memória, transborda para armazenamento temporário privado e oferece suporte a chamadas ReadAt e WriteAt independentes de cursor
function TextIndexToCharacterIndex(Index: Integer): IntegerMapeia um deslocamento no texto extraído de volta ao caractere que o produziu
function TextObjectGlyphOutline(Index, GlyphIndex: Integer; FontSize: Single): TPdfPathSegmentsLê o contorno vetorial de um glifo, normalizado para que um em seja 1.0
function TextObjectGlyphWidth(Index, GlyphIndex: Integer; FontSize: Single): SingleMede o avanço nativo do glifo em um tamanho de fonte solicitado
function TextObjectFontSize(Index: Integer): SingleLê o tamanho nativo da fonte de um objeto de text page
procedure SetTextObjectFontSize(Index: Integer; FontSize: Single)Edita o tamanho da fonte de um objeto de texto sem dimensionamento por matriz
procedure LoadDocumentAbre um PDF a partir de um arquivo, array de bytes, buffer de memória validado ou fluxo de memória não nil
LastLoadReportRetorna o status mais recente de carregamento, rota nativa de recuperação, validade do xref, contadores de auditoria limitados e problemas tipados
SaveAsRepairedGrava uma cópia completa e a verifica por meio de um carregamento estrito isolado antes de reportar sucesso
property MetaTextRetorna um valor do dicionário Info do documento pelo nome da tag
MetadataRetorna título, autor, assunto, palavras-chave, criador, produtor, data de criação e data de modificação padrão como um único snapshot em registro
MergeFilesMescla listas de origens apoiadas em arquivos com handles de origem limitados, lotes nativos de importação de páginas, políticas explícitas, progresso, cancelamento, rollback e um relatório detalhado
ModifiedDateCarimbo de data/hora da última modificação registrado no dicionário Info do documento
MovePagesReordena as páginas deste documento no próprio documento por índice baseado em 0, mantendo a contagem de páginas constante
MoveToInicia um novo subcaminho na coordenada de página informada
ObjectBitmapPropriedade indexada — retorna um objeto de página de imagem como um TBitmap da VCL renderizável (decodificado com perdas de JPX/CCITT/etc.)
ObjectBoundsRetângulo delimitador alinhado aos eixos e ajustado de um único objeto de página na página atual
ObjectCountNúmero somente leitura de objetos de página (texto, caminho, imagem, shading, formulário) na página atual
ObjectHandlePonteiro bruto FPDF_PAGEOBJECT do PDFium para o objeto de página especificado
ObjectTransparentIndica se um objeto de página participa da transparência do PDF — seja por meio
ObjectTypeRetorna a categoria do objeto de página no índice especificado — texto, caminho, imagem, shading ou form XObject. A classificação corresponde ao operador do fluxo de conteúdo do PDF que produziu o objeto e permite que os chamadores iterem o array de objetos de página com um único despacho de switch
function OptimizeImages(const Options: TPdfImageOptimizeOptions; out Report: TPdfImageOptimizeReport): BooleanReduz a resolução de objetos de imagem de página cujo DPI efetivo de posicionamento excede um alvo do chamador por meio dos caminhos nativos de bitmap e FPDFImageObj_SetBitmap e, em seguida, deixa o documento pronto para SaveAs
function GetFeatureInventory: TPdfFeatureInventoryExamina cada página uma única vez e retorna um registro unificado de contagens de objetos de texto, caminho, imagem, form XObject e shading junto com fatos em nível de documento
function GetObjectText(Index: Integer): WStringExtrai o texto desenhado por um objeto de texto
function GetObjectsByType(ObjType: TObjectType): TPdfIntegerArrayLista os índices de todos os objetos de página de um tipo na página atual
function GetPageActionType(EventType: Integer): IntegerInforma o tipo PDFACTION_* da ação adicional de abertura ou fechamento da página, 0 quando não há nenhuma
function GetPageActionURI(EventType: Integer): WStringLê a URI que uma ação de abertura ou fechamento de página abre
function GetTextInReadingOrder(Order: TPdfReadingOrder): WStringExtrai o texto da página na ordem bruta do conteúdo ou ordenado na ordem física de leitura
function GetTextObjectRenderedBitmap(Index: Integer; Scale: Single): TBitmapRasteriza um objeto de texto isoladamente na escala solicitada
function GetTextRenderMode(Index: Integer): IntegerLê o modo FPDF_TEXTRENDERMODE_* de um objeto de texto, que é como o texto OCR invisível é distinguido do texto visível
function GetWidgetAdditionalActionJavaScript(AnnotIndex, EventType: Integer): WStringLê o script de keystroke, format, validate ou calculate de um widget de campo de formulário
function AuditActiveContent: TPdfActiveContentAuditRetorna um snapshot da contagem de ações JavaScript, arquivos incorporados, assinaturas, tipo de formulário XFA e permissões sem executar qualquer script ou ação
property OnFormFieldEnterDisparado quando o motor de preenchimento de formulários ganha foco em um campo de formulário
property OnFormFieldExitDisparado quando o motor de preenchimento de formulários perde o foco em um campo de formulário
property OnJavaScriptResponseDisparado quando ações JavaScript incorporadas ao PDF solicitam interação do usuário
property OnPageChangeDisparado quando Pdf.Page é atribuído a um índice de página diferente
property OnUnsupportedFeatureDisparado quando o documento usa um recurso PDF que o PDFium não implementa (por exemplo, formulários XFA completos, anotações 3D, multimídia)
property OnXfaGotoUrlDisparado ao navegar por URLs de links dentro de formulários XFA dinâmicos
property OnXfaUriActionDisparado quando ações de URI de links são acionadas dentro de contextos XFA dinâmicos
function PadesCryptoAvailable: BooleanIndica se o backend criptográfico de assinaturas está disponível no sistema
PageHandle nativo de página do PDFium para a página ativa atual
function PageUsesOverprint: BooleanConsulta o uso exato de overprint da página quando a extensão opcional de saída de impressão suporta detecção
function PathInfo(Index: Integer): TPdfPathInfoLê modo de preenchimento, sinalizador de traço e geometria de segmentos de um objeto de caminho
property PageBounds[Box: TPdfPageBox]: TPdfRectanglePropriedade em nível de página — o retângulo da caixa de página solicitada (MediaBox/CropBox/BleedBox/TrimBox/ArtBox)
property PageBox[Box: TPdfPageBox]: TPdfRectanglePropriedade em nível de página — lê ou grava um retângulo específico de caixa de página na página atual
property PageCount: IntegerPropriedade em nível de página — número total de páginas no documento aberto
property PageMetrics[PageNumber: Integer]: TPdfPageMetricsDimensões, rotação, rótulo, transparência e caixas de página padrão em cache para qualquer página
property CacheBudgetBytes: Int64Define o teto unificado em bytes de cache retido para uma instância de TPdf
property CacheGovernor: TPdfCacheGovernorRetorna o governor compartilhado de propriedade do componente para consultas por tipo e coordenação com o cache do aplicativo
property CacheGovernorStatistics: TPdfCacheGovernorStatisticsRetorna telemetria atual, de pico, fixada, de eviction, de toque e de rejeição
property LifecycleActionPolicy: TPdfLifecycleActionPolicySeleciona execução automática de ações de ciclo de vida de documento e página desabilitada, somente explícita ou compatível
property PageSceneCacheCapacity: IntegerNúmero máximo de cenas de páginas inativas parseadas retidas para renderização indexada
property PageSceneCacheCount: IntegerNúmero atual de cenas de páginas parseadas reutilizáveis
PageHeightAltura da página ativa em unidades do espaço de usuário do PDF (pontos = 1/72 de polegada)
function PageObjectClipPath(Index: Integer): TPdfClipPathLê o clip path que limita onde um objeto de página pode pintar
function PageObjectInfo(Index: Integer): TPdfPageObjectInfoLê todos os atributos editáveis de um objeto de página em um único registro
function PageObjectMarkedContentID(Index: Integer): IntegerLê o /MCID que vincula um objeto de página à árvore de estrutura, -1 quando não marcado
function PageObjectMarks(Index: Integer): TPdfContentMarksLê as tags de marked-content e as listas tipadas de propriedades anexadas a um objeto de página
property PageLabel: WStringPropriedade em nível de página — retorna o rótulo de página visível ao usuário (como "iv" ou "A-3") em vez do índice baseado em 0
property PageMode: TPageModePropriedade em nível de página — a dica /PageMode do documento (Outlines, Thumbs, FullScreen, ...)
property PageNumber: IntegerÍndice da página atual baseado em 1, de leitura e escrita, com verificação de limites e substituição nativa de página segura para rollback
property PageRotation: TRotationPropriedade em nível de página — rotação aplicada à página atual na renderização (ro0 / ro90 / ro180 / ro270)
function PageToDevice(PageX, PageY: Double; Left, Top, Width, Height: Integer; Rotation: TRotation; out X, Y: Integer): BooleanConverte a coordenada de página de um ponto em coordenada de tela
property PageWidth: DoublePropriedade em nível de página — largura da página atual em pontos (1 pt = 1/72 de polegada)
function PageWordBoxes: TPdfWordBoxesRetorna registros TPdfWordBox para palavras na página atual do TPdf com intervalos de caracteres e retângulos no espaço da página
function ExecuteDocumentLifecycleAction(Action: TPdfDocumentLifecycleAction; out ErrorMessage: string): BooleanExecuta uma ação nativa de ciclo de vida de documento e informa falhas de política, ambiente ou callback sem propagar exceções
function ExecutePageLifecycleAction(PageNumber: Integer; Action: TPdfPageLifecycleAction; out ErrorMessage: string): BooleanExecuta uma ação de abertura ou fechamento de página sem alterar a página ativa e libera o estado nativo temporário da página de forma determinística
TPdfDocumentLifecycleAction / TPdfPageLifecycleActionModelo de política e de execução de ações de ciclo de vida de documento e de página, cobrindo os modos desativado, somente explícito e automático compatível
property PasswordSenha de descriptografia atribuída antes de Active := True
PdfAConformanceNível de conformidade PDF/A somente leitura do documento aberto no momento, sem a necessidade de chamar ValidatePdfA explicitamente
PdfEConformanceNível de conformidade PDF/E somente leitura do documento aberto no momento, sem a necessidade de chamar ValidatePdfE explicitamente
PdfRConformanceNível de conformidade PDF/R somente leitura do documento aberto no momento, sem a necessidade de chamar ValidatePdfR explicitamente
PdfUaConformanceNível de conformidade PDF/UA somente leitura do documento aberto no momento, sem a necessidade de chamar ValidatePdfUa explicitamente
PdfVersionSinalizador somente leitura — a versão da especificação PDF do documento aberto (por exemplo, pv14, pv17, pv20)
PdfVTConformanceNível de conformidade PDF/VT somente leitura do documento aberto no momento, sem a necessidade de chamar ValidatePdfVT explicitamente
PdfXConformanceNível de conformidade PDF/X somente leitura do documento aberto no momento, sem a necessidade de chamar ValidatePdfX explicitamente
function PerformNamedAction(const ActionName: string): BooleanExecuta uma ação nomeada; NextPage, PrevPage, FirstPage e LastPage movem PageNumber com limitação
property PermissionsRetorna os bits de permissão da senha do proprietário conforme decodificados do dicionário /Encrypt
PrintCopiesNúmero sugerido de cópias embutido que o autor do PDF gostaria na caixa de diálogo de impressão
PrintPageRangesLista decodificada de intervalos de páginas baseados em 1 que o autor do PDF gostaria na impressão
PrintPaperHandlingValor decodificado da dica /Duplex de /ViewerPreferences do documento —
PrintScalingValor decodificado de /PrintScaling de /ViewerPreferences do documento
ProducerNome da biblioteca ou conversor de PDF que produziu o arquivo
function ReadXmpPacket: TPdfXmpPacketLê o pacote de metadados XMP como um objeto parseado de propriedade do chamador
function InspectPdfAMetadata: TPdfAMetadataReportRetorna evidências tipadas de equivalência para todos os oito mapeamentos Info-para-XMP da ISO 19005-1
function InspectPdfUaLanguageCoverage: TPdfUaLanguageCoverageReportInforma evidências limitadas de idioma natural usando marked-content, ancestrais de estrutura e herança de idioma do catálogo
function InspectPdfUaUnicodeCoverage: TPdfUaUnicodeCoverageReportInforma cobertura de extração Unicode direta e ActualText com escopo de objeto em uma única passagem nativa de text page
function ReadAttachmentMetadata(MaxAttachments: Integer = 10000): TPdfAttachmentMetadataArrayCaptura metadados de anexos e tamanhos decodificados em uma única enumeração nativa limitada sem carregar bytes de payload
function ReadStructureElements(PageNumber; Options; out Status): TPdfStructureElementsMaterializa um snapshot iterativo da árvore de estrutura sob orçamentos de profundidade, elementos, atributos e tempo escolhidos pelo chamador
ReadableContentRetorna fragmentos de conteúdo legível semântico para fluxos de leitor de tela, texto para fala e acessibilidade
function ReadablePageContent(PageNumber: Integer): TPdfReadableContentRetorna fragmentos de conteúdo legível semântico para fluxos de leitor de tela, texto para fala e acessibilidade
function ReadingUnits: TPdfReadingUnitsConstrói registros TPdfReadingUnit por sentença a partir do fluxo de conteúdo legível da página atual para fluxos de escuta assistida
RectangleRetorna um retângulo delimitador de texto do layout de texto da página atual
procedure RefreshAppearance(AnnotIndex: Integer)Força o PDFium a regenerar o fluxo de aparência de uma anotação
procedure RemoveAnnotationObject(Index, ObjectIndex: Integer)Exclui um objeto de página de uma anotação de tinta ou carimbo
function RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): IntegerConta o número de áreas retangulares ocupadas por um segmento de textos. A função mescla automaticamente caixas pequenas de caracteres em uma maior se esses caracteres estiverem na mesma linha e usarem as mesmas configurações de fonte
procedure ReloadPageRecarrega a página selecionada no momento a partir do motor PDFium, atualizando o cache de objetos de página
procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True)Remove o objeto de página especificado da página atual. Quando DestroyObject é True, o objeto removido é liberado após a remoção. O fluxo de conteúdo da página é regenerado automaticamente
procedure RemovePageObjectMark(Index, MarkIndex: Integer)Remove uma entrada de marked-content de um objeto de página
procedure RemovePageObjectMarkParam(Index, MarkIndex: Integer; const Key: WString)Remove uma propriedade de uma marca existente sem substituí-la
procedure RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = [])Renderiza o conteúdo de uma página em um dispositivo (tela, bitmap ou impressora)
function RenderPageByIndex(PageNumber, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmapRenderiza qualquer página sem alterar PageNumber e reutiliza sua cena PDFium parseada entre tamanhos de saída
procedure RenderPageSkia(Canvas: FPDF_SKIA_CANVAS; Width, Height: Integer; DrawFormOverlay: Boolean = True)Renderiza a página atual e a sobreposição opcional de formulário em um SkCanvas de propriedade do chamador
procedure RenderPageSkiaByIndex(Canvas: FPDF_SKIA_CANVAS; PageNumber, Width, Height: Integer; DrawFormOverlay: Boolean = True)Renderiza qualquer página para Skia por meio do cache de cenas de páginas parseadas sem alterar a página ativa
function RenderPageWithMatrix(Width, Height: Integer; const Matrix: FS_MATRIX; const Clip: TPdfRectangle; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmapRenderiza por meio de uma transformação arbitrária com um retângulo de recorte no espaço de destino
function RenderSpotPlate(PlateIndex, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmapRenderiza uma placa de impressão nativa exata quando a ABI opcional expõe a operação
function RenderOverprintPreview(Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmapRenderiza a pré-visualização nativa exata de overprint quando a ABI opcional expõe a operação
function RenderPageBanded(Width, Height, BandHeight: Integer; BandCallback: TPdfBandCallback; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): IntegerRenderiza a página em faixas horizontais para que uma página grande nunca precise de um bitmap em tamanho completo
function RenderPageBandedToEncoder(Width, Height, BandHeight: Integer; Encoder: TPdfBandedImageEncoder; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TPdfBandedImageReportEntrega faixas sequenciais recortadas nativamente a um encoder de propriedade do chamador e informa progresso e pico de memória de faixas
function RenderPageBandedToStream(Stream: TStream; Width, Height: Integer; const StreamOptions: TPdfBandedImageStreamOptions; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TPdfBandedImageReportTransmite linhas PNG ou TIFF diretamente das faixas da página sem reter pixels de página completa
RenderPageProgressiveVariante cancelável de RenderPage que conduz o loop de renderização progressiva do PDFium e consulta um IPdfCancellationToken entre iterações, para que renderizações longas de alto DPI possam abortar no meio da página em vez de bloquear até a conclusão
function RenderPageProgressiveWithColorScheme(Bitmap: TBitmap; Left, Top, Width, Height: Integer; const AToken: IPdfCancellationToken; const ColorScheme: TPdfColorScheme; Rotation: TRotation = ro0; Options: TRenderOptions = []; Background: TColor = clWhite): TPdfProgressiveStatusRenderização progressiva cancelável que sobrescreve cores de caminhos e texto para leitura de baixa visão
function RenderPagesParallel(const PageNumbers: array of Integer; const Options: TPdfParallelRenderOptions; const CancellationToken: IPdfCancellationToken = nil): TPdfParallelRenderReportCaptura o documento atual uma única vez em armazenamento limitado e renderiza as páginas solicitadas por meio de documentos PDFium isolados de propriedade dos workers, compartilhando memória, um mapeamento de arquivo somente leitura ou acesso aleatório nativo
function RenderPageThumbnail(PageIndex, MaxWidth, MaxHeight: Integer; Rotation: TRotation; Options: TRenderOptions; Background: TColor; const ColorScheme: TPdfColorScheme): TBitmapRenderiza qualquer página baseada em 1 em um bitmap em cache por revisão, de propriedade do chamador, com controle total da chave de renderização
function RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []; Color: TColor = clWhite): TBitmapRenderiza uma área retangular de uma página em um novo bitmap. O bitmap retornado deve ser liberado manualmente
function SpotPlates: TPdfSpotPlateInfosRetorna índices nativos exatos de placas spot e nomes UTF-8 quando a ABI opcional expõe a enumeração
InspectOptionalContentEnumera grupos de optional-content, configurações, metadados de uso, grupos de rádio, expressões OCMD e estado efetivo de renderização do PDFium
function IsAnnotationSubtypeSupported(Subtype: TPdfAnnotationSubtype): BooleanInforma se o módulo PDFium carregado pode criar o subtipo de anotação
function IsAnnotationObjectSubtypeSupported(Subtype: TPdfAnnotationSubtype): BooleanInforma se o PDFium pode extrair e editar objetos de aparência para o subtipo de anotação
function SaveAs(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanSalva a cópia do documento PDF no fluxo especificado. Se PdfVersion for pv13 a pv17, a saída salva é normalizada e validada para a versão alvo, incluindo substituições existentes de /Version do catálogo em saída incremental. O validador cobre toda a linha do tempo de recursos do PDF 1.1–1.7 / ISO 32000-1: filtros (FlateDecode, JBIG2Decode, JPXDecode), fluxos de objeto e xref, transparência (SMask, ca/CA, modos de mesclagem), Tagged PDF (StructTreeRoot, MarkInfo), espaços de cores (ICCBased, DeviceN), caixas de página (BleedBox/TrimBox/ArtBox), output intents, optional content, AcroForm, fontes CID/Type 0 e OpenType, criptografia AES & AES-256 (CFM AESV2/AESV3), todos os subtipos de anotação restritos por versão (Widget, Sound, Movie, FreeText, Line, Square, Circle, Highlight, Underline, StrikeOut, Stamp, Ink, Popup, FileAttachment, TrapNet, Squiggly, PrinterMark, Polygon, PolyLine, Caret, Screen, Watermark, 3D, Redact), tipos de ação restritos por versão (SubmitForm, ResetForm, ImportData, Hide, Named, JavaScript, Trans, SetState, Rendition, GoToE, GoTo3DView) e entradas de catálogo (Perms, Legal, Collection, Requirements, NeedsRendering). Tudo que exceder a versão alvo escolhida gera EPdfError. Se o documento não tiver um OpenAction existente e a versão alvo oferecer suporte, o PDF salvo abre na primeira página com zoom Fit Height. Compilações de avaliação aplicam a marca d'água de avaliação durante o salvamento
function SaveAsLinearized(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanGrava um PDF Fast Web View totalmente reescrito com agrupamento da primeira página, duas seções clássicas de xref e dicas comprimidas do Anexo F quando benéfico
function SaveAsLinearized(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): BooleanGrava atomicamente a saída Fast Web View em um arquivo após concluir e validar um arquivo temporário irmão
function SaveAsObjectStream(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): BooleanReordena objetos ativos para localidade de página, empacota valores elegíveis em grupos ObjStm limitados e grava entradas xref tipo 2 completas
function SaveAsObjectStream(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown; MaxObjectsPerStream: Integer = 100; MaxDecodedBytesPerStream: Integer = 65536): BooleanGrava atomicamente a saída de fluxo de objetos PDF 1.5+ após concluir um arquivo temporário irmão
function SaveAsNormalizedContent(Stream: TStream; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): BooleanNormaliza cada sequência de conteúdo lógico de página e unifica arrays /Contents seguros em um único fluxo
function SaveAsNormalizedContent(const FileName: string; out Report: TPdfContentNormalizeReport; const Options: TPdfContentNormalizeOptions; SaveOption: TSaveOption = saNoIncremental; PdfVersion: TPdfVersion = pvUnknown): BooleanSubstitui atomicamente um arquivo após gravar o conteúdo normalizado e um xref clássico completo
SaveAsPageLabelledGrava uma cópia PDF completa cuja number tree de /PageLabels do catálogo é substituída pelos intervalos fornecidos, aplicando estilos de numeração decimal, romana e de letras conforme a ISO 32000-1 §12.4.2
SaveAsOptionalContentConfiguredGrava e verifica estritamente uma cópia com visibilidade de grupos de optional-content escolhida pelo chamador para uma configuração e um uso
function SaveAsReachable(Stream: TStream; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): BooleanVarre objetos inalcançáveis e regrava o documento como uma única revisão clássica preservando os números de objeto
function SaveAsReachable(const FileName: string; out Report: TPdfPruneReport; AllowSignedDocument: Boolean = False): BooleanSubstitui atomicamente um arquivo após uma regravação podada de revisão única
function SaveAsDeduplicated(Stream: TStream; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): BooleanVarre objetos inalcançáveis e regrava referências para que fontes, imagens e form XObjects duplicados compartilhem um único representante
function SaveAsDeduplicated(const FileName: string; out Report: TPdfDedupReport; AllowSignedDocument: Boolean = False): BooleanSubstitui atomicamente um arquivo após uma regravação desduplicada de revisão única
function SaveAsFlateRecompressed(Stream: TStream; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): BooleanRecodifica fluxos FlateDecode elegíveis com compressão máxima quando a economia medida ultrapassa um limite do chamador
function SaveAsFlateRecompressed(const FileName: string; const Options: TPdfFlateRecompressOptions; out Report: TPdfFlateRecompressReport; AllowSignedDocument: Boolean = False): BooleanSubstitui atomicamente um arquivo após uma regravação recompactada com Flate
function SaveAsInlineImagesExternalised(Stream: TStream; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): BooleanExtrai imagens inline BI/ID/EI para XObjects reutilizáveis, expande abreviações e substitui blocos inline por operadores Do
function SaveAsInlineImagesExternalised(const FileName: string; const Options: TPdfInlineImageExternaliseOptions; out Report: TPdfInlineImageExternaliseReport; AllowSignedDocument: Boolean = False): BooleanSubstitui atomicamente um arquivo após a externalização de imagens inline
function SaveAsReproducible(Stream: TStream; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): BooleanRemove carimbos de data/hora não determinísticos e /ID para que dois salvamentos do mesmo documento sejam idênticos byte a byte
function SaveAsReproducible(const FileName: string; out Report: TPdfReproducibleReport; AllowSignedDocument: Boolean = False): BooleanSubstitui atomicamente um arquivo após uma regravação reproduzível
function ExportObjectGraph(Stream: TStream; const Options: TPdfObjectGraphInspectOptions; out Report: TPdfObjectGraphReport): BooleanExporta valores indiretos ativos como JSON tipado com orçamento e informa truncamento explícito
function SaveAsObjectGraphPatched(Stream: TStream; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): BooleanAnexa uma revisão de patches validada apenas de dicionários e a carrega em modo estrito antes de copiar para o destino
function SaveAsObjectGraphPatched(const FileName: string; const Operations: TPdfObjectPatchOperations; out Report: TPdfObjectGraphReport; AllowSignedDocument: Boolean = False): BooleanSubstitui atomicamente um arquivo após uma transação bem-sucedida de patches do grafo de objetos
function SaveAsRedacted(Stream: TStream; const Options: TPdfRedactionOptions; out Report: TPdfRedactionReport): BooleanAplica anotações /Redact a um snapshot isolado, remove objetos de página de nível superior que se cruzam, pinta substituições opacas e emite um fluxo limpo de revisão única
function SaveAsRedacted(const FileName: string; const Options: TPdfRedactionOptions; out Report: TPdfRedactionReport): BooleanSubstitui atomicamente um arquivo após o sucesso do pipeline de redação e sanitização
SaveAsSanitisedProduz uma cópia limpa de revisão única que remove conteúdo ativo e /AF do catálogo e, em seguida, poda objetos inalcançáveis para que corpos órfãos de JavaScript, ações e anexos desapareçam do corpo do arquivo
BeginIncrementalSave / CommitIncrementalSave / EndIncrementalSaveSessão de salvamento incremental de objetos alterados: captura a linha de base estável uma única vez, anexa revisões que preservam cada byte logo após a saída anterior exata e libera a sessão ao final
procedure BeginIncrementalSave(AllowSignedDocument: Boolean = False)Captura a linha de base estável e o prefixo exato da origem criptografada ou não criptografada para uma sessão de revisão de objetos alterados
function CommitIncrementalSave(Stream: TStream; out Info: TPdfIncrementalCommitInfo): BooleanAnexa objetos indiretos alterados ou novos, herda a criptografia existente e valida o resultado de forma independente
function CommitIncrementalSave(const FileName: string; out Info: TPdfIncrementalCommitInfo): BooleanLibera em disco de forma durável e reabre um arquivo lateral antes da substituição atômica e restaura o estado da sessão após qualquer falha
procedure EndIncrementalSaveLibera a linha de base da sessão e a saída acumulada
function ExportFDF(const FileName: string): IntegerGrava valores de campos de formulário como FDF (ISO 32000-1 12.7.11); também há uma sobrecarga com TStream
function SaveAsEncrypted(const FileName: string; const Options: TPdfEncryptOptions): BooleanSalva o PDF ativo com criptografia AESV3-CBC ou AESV4-GCM da ISO/TS 32003
function SaveAsEncryptedToStream(Stream: TStream; const Options: TPdfEncryptOptions): BooleanGrava a saída PDF criptografada em qualquer TStream pesquisável sem passar pelo disco
function PreparePadesRemoteSignature(Prepared: TStream; const Options: TPadesRemoteSignOptions; out Request: TPadesRemoteSigningRequest): BooleanCria um campo de aprovação ou certificação restrito, mais o digest da assinatura desanexada, o ByteRange exato, as coordenadas e o fingerprint do PDF preparado necessários para a assinatura remota
class function CompletePadesRemoteSignature(Prepared, Dest: TStream; const Request: TPadesRemoteSigningRequest; const CmsDer: TBytes): BooleanRejeita uma sessão modificada ou reutilizada e preenche a posição de assinatura reservada somente quando o CMS desanexado está vinculado ao digest do documento preparado
class procedure SavePadesRemoteSigningRequest(Stream: TStream; const Request: TPadesRemoteSigningRequest)Grava o formato fixo versionado de requisição de assinatura remota em um fluxo
property SecurityHandlerRevision: IntegerRevisão do security handler padrão, ou um valor negativo para um documento não criptografado
function SetAnnotationFontColor(AnnotIndex: Integer; Color: TColor): BooleanSobrescreve a cor do texto de uma anotação de widget de campo de formulário
procedure SetAttachmentStringValue(Index: Integer; const Key, Value: WString)Grava uma entrada de string no dicionário de especificação de arquivo de um anexo
class procedure SetDeterministicTime(FixedEpoch: Int64)Congela o relógio que o PDFium estampa na saída para que os documentos salvos sejam reproduzíveis byte a byte
class function LoadPadesRemoteSigningRequest(Stream: TStream): TPadesRemoteSigningRequestLê e valida o formato fixo versionado de requisição de assinatura remota
function RenewPadesArchiveTimestamp(const FileName: string; const Options: TPadesArchiveTimestampOptions; out Report: TPadesArchiveTimestampReport): BooleanAnexa um Document Time-stamp de arquivamento aos bytes PAdES originais carregados e grava um arquivo preparado atomicamente
function RenewPadesArchiveTimestampToStream(Stream: TStream; const Options: TPadesArchiveTimestampOptions; out Report: TPadesArchiveTimestampReport): BooleanAnexa um Document Time-stamp de arquivamento e grava a cadeia B-LTA validada em um fluxo
class procedure RestoreActualTimeRetorna o PDFium ao relógio do sistema após uma sessão de tempo determinístico
function SaveAsPadesDss(const FileName: string; const Options: TPadesDssOptions): BooleanSalva o PDF ativo em um arquivo com material DSS PAdES desduplicado, dicionários VRI específicos por assinatura e a representação xref da origem
function SaveAsPadesDssToStream(Stream: TStream; const Options: TPadesDssOptions): BooleanSalva o PDF ativo em um fluxo com material DSS PAdES desduplicado, dicionários VRI específicos por assinatura e a representação xref da origem
SaveAsPdfASalva o documento atual como um arquivo em conformidade com PDF/A-1b ao pós-processar o PDF base com uma atualização incremental que injeta um fluxo de metadados XMP, um OutputIntent ICC sRGB e um catálogo de documento atualizado
function SaveAsPdfAToStream(Stream: TStream; const Options: TPdfASaveOptions): BooleanVariante em memória de SaveAsPdfA — grava a saída PDF/A-1b em qualquer TStream sem passar pelo disco
SaveAsPdfESalva o documento atual como um arquivo em conformidade com PDF/E-1 ao pós-processar o PDF base com uma atualização incremental que injeta marcadores de formato de arquivo PDF/E-1 (ISO 24517-1:2008)
function SaveAsPdfEToStream(Stream: TStream; const Options: TPdfESaveOptions): BooleanVariante em memória de SaveAsPdfE — grava a saída PDF/E-1 em qualquer TStream sem passar pelo disco
SaveAsPdfRSalva o documento atual como um arquivo em conformidade com PDF/R-1 (ISO 23504-1:2020, o subconjunto de transporte e armazenamento de imagens raster do PDF usado para documentos digitalizados)
function SaveAsPdfRToStream(Stream: TStream; const Options: TPdfRSaveOptions): BooleanVariante em memória de SaveAsPdfR — grava a saída PDF/R-1 em qualquer TStream sem passar pelo disco
SaveAsPdfUaSalva PDF/UA-1 por padrão ou PDF/UA-2 com TPdfUaSaveOptions.PdfUa2, incluindo a identificação XMP exigida e a versão efetiva do PDF
function SaveAsPdfUaToStream(Stream: TStream; const Options: TPdfUaSaveOptions): BooleanSaída PDF/UA-1 e PDF/UA-2 em memória sem passar pelo disco
SaveAsPdfVTSalva o documento atual como um arquivo em conformidade com PDF/VT-1 em arquivo único (ISO 16612-2:2010, o subconjunto do PDF para impressão variável e transacional)
function SaveAsPdfVTToStream(Stream: TStream; const Options: TPdfVTSaveOptions): BooleanVariante em memória de SaveAsPdfVT — grava a saída PDF/VT em qualquer TStream sem passar pelo disco
SaveAsPdfXSalva o documento atual como um arquivo em conformidade com PDF/X-1a:2001, PDF/X-3:2002 ou PDF/X-4 ao pós-processar o PDF base com uma atualização incremental que injeta marcadores de formato de arquivo PDF/X (família ISO 15930)
function SaveAsPdfXToStream(Stream: TStream; const Options: TPdfXSaveOptions): BooleanVariante em memória de SaveAsPdfX — grava a saída PDF/X em qualquer TStream sem passar pelo disco
function SaveAsWithAssociateFiles(const FileName: string; const Options: TAssocFilesOptions): BooleanSalva o PDF ativo em um caminho de arquivo injetando associated-files no catálogo ou nas páginas em conformidade com a ISO 32000-2 §7.11.4
function SaveAsWithAssociateFilesToStream(Stream: TStream; const Options: TAssocFilesOptions): BooleanGrava a saída PDF com associated-files injetados em qualquer TStream pesquisável sem passar pelo disco
function SaveAsWithXmpPacket(Stream: TStream; Packet: TPdfXmpPacket; AllowSignedDocument: Boolean = False): BooleanSalva o documento com um pacote de metadados XMP de substituição
function NormalizePdfAMetadata(Stream: TStream; AllowSignedDocument: Boolean = False): BooleanRepara propriedades XMP mapeadas com divergência e salva o documento normalizado
procedure SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)Define os sinalizadores de campo AcroForm para o campo de formulário no índice de anotação especificado na página atual
procedure SetFormFieldFlagsAt(X, Y: Single; const Flags: TPdfFormFieldFlags)Define o campo de bits Flags no campo de formulário nas coordenadas informadas
function SetFocusedFormFieldText(const Value: WString): BooleanDefine o valor do campo de formulário lógico atual por FocusedFormFieldIndex sem depender do cursor interativo
function SetFocusedFormFieldTextDirection(Direction: TPdfFormTextDirection): BooleanAltera a direção de texto em memória do widget com foco; o valor não é persistido ao salvar
function SetFocusedFormOptionSelected(Index: Integer; Selected: Boolean): BooleanSeleciona ou limpa uma opção da caixa de lista ou combinação com foco
procedure SetPageBox(Box: TPdfPageBox; const Rectangle: TPdfRectangle)Grava um novo retângulo para a caixa de página nomeada (MediaBox / CropBox / BleedBox / TrimBox / ArtBox) na página atual
procedure SetPageObjectMarkParam(Index, MarkIndex: Integer; const Param: TPdfContentMarkParam)Faz upsert de uma propriedade tipada em uma marca existente preservando sua identidade e propriedades não relacionadas
SetTextAdiciona um objeto de página de texto na coordenada de página informada
procedure SetTextPositions(ObjectIndex: Integer; const Positions: TPdfSingleArray)Define posições por caractere para o objeto de texto especificado. A posição do primeiro caractere é implícita como 0; Positions[0] define a posição do segundo caractere, Positions[1] define a do terceiro e assim por diante. Os valores estão em pontos e são relativos à origem do objeto de texto
StampPagesFromPdfEstampa uma página de origem como uma sobreposição ou camada de fundo de Form XObject posicionada, dimensionada e opcionalmente rotacionada em uma ou mais páginas de destino
SignaturePropriedade indexada — retorna um registro de assinatura digital (assinante, motivo, contato, intervalo de bytes)
SignatureCountNúmero de campos de assinatura digital incorporados no documento
property Signatures: TPdfSignaturesCopia todos os registros nativos de assinatura em um único snapshot seguro quanto ao ciclo de vida
function SignPades(const FileName: string; const Options: TPadesSignOptions): BooleanAnexa uma assinatura PAdES de aprovação ou certificação com restrições opcionais de seed-value, certificado, FieldMDP e DocMDP, preservando entradas existentes de formulário e permissões
function SignPadesToStream(Stream: TStream; const Options: TPadesSignOptions): BooleanGrava uma atualização de assinatura PAdES restrita com um campo Widget registrado, processamento de ByteRange de 64 bits e a representação xref da origem
function SignPadesWithPdfA(const FileName: string; const Options: TPadesSignOptions; PdfAOptions: TPdfASaveOptions): BooleanSalva um documento PDF assinado com PAdES em conformidade com os padrões de arquivamento PDF/A
StructureElementsPropriedade indexada — retorna os filhos de um elemento da árvore de estrutura lógica (StructTree)
SubjectRetorna o valor da entrada /Subject do dicionário de informações do documento PDF
function Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WStringExtrai a string de texto da página. Os parâmetros StartIndex e Count determinam os caracteres a extrair. O parâmetro StartIndex é baseado em 0
function TextInRectangle(Left, Top, Right, Bottom: Double): WStringExtrai o texto dentro de um limite retangular na página
TextPageHandle nativo de text page do PDFium para a página ativa atual
function ThumbnailDecodedData: TBytesLê a miniatura incorporada da página com seus filtros de fluxo decodificados
property ThumbnailCacheMaxEntries: IntegerNúmero máximo de entradas de miniaturas incorporadas e renderizadas retidas, padrão 64
property ThumbnailCacheMaxBytes: Int64Máximo estimado de bytes de pixel retido pela LRU de miniaturas, padrão 64 MiB
property ThumbnailCacheStatistics: TPdfThumbnailCacheStatisticsInforma ocupação, bytes armazenados, acertos, falhas e evictions
property ThumbnailRevision: Int64Revisão de conteúdo monotônica usada pelos consumidores de miniaturas para descartar pré-visualizações locais desatualizadas
function ThumbnailRawData: TBytesLê a miniatura incorporada da página como armazenada, com seus filtros ainda aplicados
property ThumbnailRetorna os bytes brutos da entrada /Thumb da página atual (pré-visualização pré-computada opcional, tipicamente um raster de 64x64)
TitleRetorna o valor da entrada /Title do dicionário de informações do documento PDF
property TrailerEnds: TPdfCardinalArrayDeslocamentos de bytes onde cada trailer do documento termina, um por revisão
procedure TransformPageAnnotations(const Matrix: FS_MATRIX)Aplica uma matriz de transformação a todas as anotações da página atual
procedure TransformPageContent(const Matrix: FS_MATRIX; const Clip: TPdfRectangle)Aplica uma matriz de transformação a todos os objetos de conteúdo da página atual, com um retângulo de recorte
procedure TransformPageObject(Index: Integer; const Matrix: FS_MATRIX)Multiplica a matriz de transformação de um objeto de página, movendo, dimensionando, rotacionando ou distorcendo-o
procedure TransformPageObjectClipPath(Index: Integer; const Matrix: FS_MATRIX)Transforma apenas a geometria de recorte associada a um objeto de página
TransparentIndica se a página ativa no momento contém conteúdo transparente
procedure UpdateAnnotationObject(AnnotIndex: Integer; PageObj: Pointer)Informa a uma anotação que um de seus objetos de página foi modificado
procedure UpdatePageObject(Index: Integer; const Value: TPdfPageObjectInfo; Changes: TPdfPageObjectChanges)Grava de volta apenas os atributos do objeto de página nomeados pelo conjunto de alterações
procedure UpdatePageConfirma no PDFium as edições em memória feitas por meio de CreateAnnotation, AddImage, AddText, SetFormFieldFlagsAt e outras chamadas
property UserPermissionsRetorna os bits de permissão da senha do usuário (um subconjunto de Permissions)
UserGrantedPermissionsRetorna as permissões de senha do usuário como um conjunto tipado TPdfPermissions
UserHasPermission(Permission: TPdfPermission): BooleanTesta uma permissão de senha do usuário sem aritmética de bits manual
function ValidatePades: TPadesValidationResultValida entradas exclusivas de perfil de assinatura e o intervalo exato de exclusão de Contents diretamente nos bytes originais da origem sem ressalvar o PDF
function ValidatePadesTrust(const Options: TPadesTrustValidationOptions): TPadesValidationResultVerifica dados exatos do ByteRange original, confiança no assinante, evidências opcionais de revogação e tokens de carimbo de data/hora RFC 3161
function ValidatePadesTrustAsync(const Options: TPadesTrustValidationOptions; const Reply: TPadesTrustValidationReply): BooleanCaptura a origem original e despacha validação de confiança em estágios cancelável para uma thread de trabalho
function ValidatePdfMac(const Password: AnsiString): TPdfMacValidationResultVerifica um PDF MAC independente usando os bytes exatos da origem original e a senha fornecida
function ValidatePdfA: TPdfAValidationResultValida marcadores PDF/A, fatos de conteúdo e equivalência exata de valores Info-para-XMP da ISO 19005-1
function ValidatePdfE: TPdfEValidationResultInspeciona o PDF aberto no momento em busca de marcadores de conformidade PDF/E-1 e retorna um resultado estruturado com o nível de conformidade detectado, além do conjunto de problemas específicos encontrados
ValidatePdfRValida marcadores de arquivo PDF/R-1, metadados, perfil de criptografia, conteúdo de página somente raster, geometria de strip, cor, resolução efetiva e parâmetros de compressão
function ValidatePdfUa: TPdfUaValidationResultValida identificação PDF/UA-1 e PDF/UA-2, regras de acessibilidade compartilhadas e requisitos PDF 2.0 específicos de perfil
function ValidatePdfVT: TPdfVTValidationResultInspeciona o PDF aberto no momento em busca de marcadores de conformidade PDF/VT e retorna um resultado estruturado com o nível de conformidade detectado, além do conjunto de problemas encontrados
function ValidatePdfX: TPdfXValidationResultInspeciona o PDF aberto no momento em busca de marcadores de conformidade PDF/X e retorna um resultado estruturado com o nível de conformidade detectado, além do conjunto de problemas específicos encontrados
function VisitStructureElements(PageNumber; Options; Visitor; out Status): IntegerTransmite snapshots de elementos de estrutura para um callback de método sem materializar um array de páginas
ViewerPreferencePropriedade indexada — retorna o valor inteiro de uma chave /ViewerPreferences (NumCopies, PrintScaling etc.)
WebLinkURL e retângulos delimitadores de um link da web detectado automaticamente em uma página
WebLinkCountNúmero de URLs da web detectadas automaticamente ao examinar o texto de uma página
property XFARetorna o pacote XML XFA incorporado no documento (o PDF/A 2.0 considerou o formato obsoleto, mas formulários gerados pelo Acrobat ainda o usam)
property XfaFormPackets: TXfaPacketListCaptura todos os pacotes XFA incorporados expostos por meio do runtime de XFA como uma coleção TXfaPacketList
property XfaRuntimeAvailable: BooleanIndica se o runtime de XFA está disponível para o documento carregado
property XfaStaticReadable: BooleanIndica se o pacote XFA estático pode ser lido sem o runtime de XFA
function LinkZOrderAtPoint(X, Y: Double): IntegerRetorna a ordem z da anotação de link mais à frente nas coordenadas da página, ou -1 quando nenhum link é atingido
function FormFieldZOrderAtPoint(X, Y: Double): IntegerRetorna a ordem z do campo de formulário mais à frente nas coordenadas da página, ou -1 quando nenhum campo é atingido
function TryGetAnnotationFileAttachment(AnnotIndex: Integer; out Attachment: TPdfAnnotationAttachment; MaxBytes: Cardinal = 67108864): BooleanCopia metadados e payload limitados de anexo de arquivo de uma anotação para um registro próprio
function GetLinkedAnnotationIndex(AnnotIndex: Integer; Relationship: TPdfAnnotationRelationship): IntegerResolve o índice da anotação relacionada Popup ou IRT com proteção contra referências pendentes
function GetLinkedAnnotationChain(AnnotIndex: Integer; Relationship: TPdfAnnotationRelationship; MaxDepth: Integer = 64): TPdfIntegerArrayPercorre uma cadeia de relacionamentos Popup ou IRT com proteção contra ciclos e profundidade
function GetAnnotationDictionaryValue(AnnotIndex: Integer; const Key: WString): TPdfDictionaryValueLê um valor tipado de uma entrada do dicionário de anotação
function GetAttachmentDictionaryValue(Index: Integer; const Key: WString): TPdfDictionaryValueLê um valor tipado de uma entrada do dicionário de anexo de arquivo incorporado
procedure SetFocusableAnnotationSubtypes(const Subtypes: array of TPdfAnnotationSubtype)Restringe quais subtipos de anotação podem receber foco do teclado por meio do handle de formulário
function GetFocusableAnnotationSubtypes: TPdfAnnotationSubtypesRetorna os subtipos de anotação atualmente elegíveis para foco do teclado
procedure ClearFormSelectionRectsLimpa os retângulos de seleção de formulário em cache informados por meio de OnFormSelectionRect

Componente TPdfView

TPdfView é um controle visual rolável para exibir e interagir com documentos PDF. Ele requer uma referência Pdf: TPdf

Propriedades publicadas, em tempo de design

PropriedadeTipoPadrãoDescrição
AboutstringInformações de versão do componente
ActiveBooleanFalseAtiva/desativa o visualizador
CurrentCharIndexInteger0Índice de caractere selecionado pelo aplicativo, mantido por compatibilidade
DisplayModeTPdfDisplayModedmSingleContinuousModo de exibição de páginas (dmSingleContinuous, dmTwoPageContinuous, dmTwoPageContinuousWithCover)
OptionsTRenderOptions[reLcd]Opções de renderização (texto LCD, anotações, tons de cinza, etc.)
PageShadowSizeInteger0Tamanho opcional da sombra projetada em pixels; valores negativos são ajustados para 0
PageShadowColorTColorclGrayCor de preenchimento da sombra projetada usada quando PageShadowSize > 0
PageBorderColorTColorclBlackCor da borda de um pixel da página
SmoothScrollBooleanFalseAnima comandos da barra de rolagem de linha/página em segmentos controlados por timer; o arraste do indicador permanece imediato
LinkOptionsTPdfViewLinkOptions[loAutoGoto, loAutoOpenURI]Controla o comportamento automático de goto, URI, launch e embedded-goto após eventos de clique em link
AsyncRenderingBooleanFalseExibe a sobreposição de carregamento quando habilitado; o despacho do worker continua sob responsabilidade do aplicativo
LoadingTextstringLoading...Texto desenhado na sobreposição de AsyncRendering; uma string vazia suprime a sobreposição
LoadingColorTColorclYellowCor de fundo da sobreposição de AsyncRendering
NightDuotoneInkTColor$0000C8FFCor de tinta usada pela opção de renderização de baixa visão reNightDuotone
NightDuotonePaperTColorclBlackCor de papel usada pela opção de renderização de baixa visão reNightDuotone
ReadingHighlightColorTColorclSkyBlueControla a cor mais ampla da sobreposição de realce de leitura
ReadingWordColorTColor$0000A5FFControla a cor da sobreposição usada para o cursor de leitura palavra a palavra atual
ReadingWordFollowBooleanTrueControla se o TPdfView rola a palavra falada atual para a área visível enquanto acompanha a leitura
PageNumberInteger1Número da página atual (baseada em 1)
PdfTPdfnilReferência ao componente TPdf
RotationTRotationro0Rotação de exibição (ro0, ro90, ro180, ro270)
ZoomDouble1.0Nível de zoom (1.0 = 100%)

Propriedades públicas específicas do TPdfView

PropriedadeTipoDescrição
ActualSizeZoom[PageNumber]DoubleValor de zoom para exibir a página em seu tamanho real
property AllowFormEvents: BooleanLimita os eventos de mouse, teclado e foco que o visualizador encaminha à camada de preenchimento de formulários; o carregamento e o fechamento de página nunca são limitados
CanvasTCanvasCanvas para desenho personalizado no visualizador
CharacterAngle[Index]SingleÂngulo de rotação do caractere em radianos
CharacterCountIntegerNúmero de caracteres na página atual do visualizador
CharacterFontSize[Index]DoubleTamanho da fonte do caractere no índice; FontSize[Index] permanece como um alias compatível
CharacterFontWeight[Index]IntegerPeso da fonte do caractere no índice
CharacterOrigin[Index]TPointOrigem do caractere nas coordenadas de dispositivo do visualizador
CharacterRectangle[Index]TRectLimites do caractere nas coordenadas de dispositivo do visualizador
FontAscent[Index; FontSize]SingleAscendente da fonte usada pelo objeto de texto no índice
FontBaseName[Index]WStringNome base da fonte do objeto de texto no índice
FontData[Index]TBytesDados brutos da fonte do objeto de texto no índice
FontDescent[Index; FontSize]SingleDescendente da fonte usada pelo objeto de texto no índice
FontFamilyName[Index]WStringNome da família tipográfica do objeto de texto no índice
FontHandle[Index]FPDF_FONTHandle de fonte de baixo nível do PDFium para o objeto de texto no índice
FontIsEmbedded[Index]BooleanTrue se a fonte do objeto de texto está incorporada ao PDF
FontItalicAngle[Index]IntegerÂngulo itálico da fonte do objeto de texto
FontWeight[Index]IntegerPeso da fonte do objeto de texto
PageHeightZoom[PageNumber]DoubleValor de zoom para ajustar a altura da página ao visualizador
PageWidthZoom[PageNumber]DoubleValor de zoom para ajustar a largura da página ao visualizador
PageZoom[PageNumber]DoubleValor de zoom para ajustar a página inteira ao visualizador
StructureElementsTPdfStructureElementsElementos de estrutura lógica achatados da página atual do visualizador
WindowHandleHWNDHandle de janela do controle visualizador

Métodos específicos do TPdfView

function AddSearchTextHighlight(const Text: WString; MatchCase: Boolean = False; MatchWholeWord: Boolean = False): IntegerRealça todas as ocorrências do texto na página atual e retorna o número de correspondências
MétodoDescrição
CharacterIndexAtPos(X, Y: Integer; ToleranceX, ToleranceY: Double): IntegerResolve o caractere próximo a um ponto nas coordenadas de dispositivo do visualizador; retorna -1 quando não há caractere próximo
DeviceToPage(X, Y: Integer; out PageX, PageY: Double): BooleanConverte coordenadas de dispositivo do visualizador em coordenadas de página
DeviceToPage(X, Y: Integer; var PageNumber: Integer; var PageX, PageY: Double): BooleanConverte coordenadas de dispositivo do visualizador em coordenadas de página com detecção de página
DeviceToPage(Rectangle: TRect): TPdfRectangleConverte um retângulo de dispositivo do visualizador em um retângulo de página
PageToDevice(PageX, PageY: Double; out X, Y: Integer): BooleanConverte coordenadas de página em coordenadas de dispositivo do visualizador
PageToDevice(Rectangle: TPdfRectangle): TRectConverte um retângulo de página em um retângulo de dispositivo do visualizador
LinkAnnotationAtPos(X, Y: Integer): IntegerObtém o índice da anotação de link na posição de tela
LinkAnnotationAtPos(X, Y: Integer; out PageNumber: Integer): IntegerObtém o índice da anotação de link com o número da página
WebLinkAtPos(X, Y: Integer): IntegerObtém o índice do link da web na posição de tela
WebLinkAtPos(X, Y: Integer; out PageNumber: Integer): IntegerObtém o índice do link da web com o número da página
PaintSelection(SelectionStart, SelectionEnd: Integer; Mask: TColor)Desenha o realce da seleção de texto
function PasteFormTextFromClipboard: BooleanCola o texto da área de transferência no campo de formulário com foco
FocusedFormFieldValue: WStringRetorna o valor lógico atual do campo de formulário por FocusedFormFieldIndex sem depender do cursor de texto interativo
function FocusedFormOptionSelected(Index: Integer): BooleanInforma se uma opção da caixa de listagem ou de combinação com foco está selecionada
FocusedFormFieldName: WStringRetorna o nome de exibição lógico atual do campo de formulário, preferindo AlternateName e recuando para Name
FocusedFormFieldDetails: TPdfFormFieldInfoRetorna TPdfFormFieldInfo para o campo de formulário lógico atual
ReadingUnits: TPdfReadingUnitsRetorna unidades de leitura por sentença para escuta assistida e navegação semântica
PageWordBoxes: TPdfWordBoxesRetorna caixas de palavra com intervalos FTextPage e retângulos no espaço da página para destaque palavra a palavra
SetReadingWord(const Word: TPdfWordBox)Realça um TPdfWordBox como a palavra falada atual em TPdfView
ClearReadingWordLimpa a sobreposição do cursor de leitura no nível de palavra atual em TPdfView
function CopySelectedFormTextToClipboard: BooleanCopia o texto selecionado do campo de formulário com foco para a área de transferência
function CutSelectedFormTextToClipboard: BooleanRecorta o texto selecionado do campo de formulário com foco para a área de transferência
TrackReadingWordAt(PageNumber, CharIndex: Integer): IntegerMapeia um deslocamento de caractere da página para o TPdfWordBox que o contém, realça-o e retorna o índice da palavra
RemoveObject(Index: Integer; DestroyObject: Boolean = True)Remove um objeto de página da página atual, regenera o conteúdo da página e redesenha o visualizador
function SelectLineAt(Page, CharIndex: Integer): BooleanSeleciona toda a linha de texto que contém o índice de caractere informado
function SetFocusedFormOptionSelected(Index: Integer; Selected: Boolean): BooleanSeleciona ou limpa uma opção da caixa de listagem ou de combinação com foco
GenerateFormAppearancesRegenera os streams de aparência /AP por meio do componente TPdf associado (veja TPdf.GenerateFormAppearances)
FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): IntegerAchata anotações e widgets de formulário da página atual em conteúdo estático
SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)Define sinalizadores de campo AcroForm pelo índice de anotação da página atual
SetFormFieldFlagsAt(X, Y: Integer; const Flags: TPdfFormFieldFlags)Define sinalizadores de campo AcroForm nas coordenadas do controle visualizador
function ReplaceFormTextAndKeepSelection(const Text: WString): BooleanSubstitui o texto do campo de formulário com foco por meio de FORM_ReplaceAndKeepSelection mantendo o estado de seleção
function FormFieldZOrderAt(X, Y: Integer): IntegerRetorna a ordem z do campo de formulário mais à frente nas coordenadas de cliente, ou -1 quando nenhum é atingido
function LinkZOrderAt(X, Y: Integer): IntegerRetorna a ordem z da anotação de link mais à frente nas coordenadas de cliente, ou -1 quando nenhuma é atingida

Propriedades e métodos herdados do VCL e outros

APIDescrição
property About: stringDocumenta o membro About publicado pelo TPdfView
ActiveAtiva ou desativa o visualizador, abrindo o documento PDF vinculado e renderizando a página selecionada
property ActualSizeZoom[PageNumber: Integer]: DoubleFator de zoom somente leitura que exibe a página em seu tamanho físico real na tela do host
procedure AddImage(const FileName: string; X, Y, Width, Height: Integer); overloadAdiciona uma imagem à página exibida atualmente pelo TPdfView, convertendo um retângulo nas coordenadas de cliente do visualizador para coordenadas de página PDF
function AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Integer): BooleanWrapper do TPdfView que encaminha para TPdf.AddJpegImage
procedure AddPicture(Picture: TPicture; X, Y: Integer); overloadWrapper do TPdfView que encaminha para TPdf.AddPicture
AlignControla como o visualizador PDF é disposto dentro de seu contêiner pai
property AllowUserPageChange: BooleanPermite que a entrada do usuário (roda do mouse, arraste da barra de rolagem, atalhos de teclado) mude a página atual
property AllowUserTextSelection: BooleanControla a seleção de texto no visualizador conduzida pela entrada do usuário
AnchorsEspecifica quais bordas do visualizador permanecem a uma distância fixa das bordas correspondentes do pai quando o pai é redimensionado
property Annotation[Index: Integer]: TPdfAnnotationWrapper do TPdfView que encaminha para TPdf.Annotation
property AnnotationCount: IntegerWrapper do TPdfView que encaminha para TPdf.AnnotationCount
property AsyncRendering: BooleanSinalizador opcional que instrui a exibição a desenhar uma pequena sobreposição de "Loading..." durante renderizações longas, de modo que aplicativos que usam seu próprio worker para renderização fora da thread compartilhem uma indicação visual consistente
property Bitmap[Index: Integer]: TBitmapWrapper do TPdfView que encaminha para TPdf.Bitmap
property BitmapCount: IntegerWrapper do TPdfView que encaminha para TPdf.BitmapCount
property Canvas: TCanvasCanvas de desenho exposto pelo controle após a renderização de uma página
property ChangePageOnMouseScrolling: BooleanNo modo SinglePage, controla se a rolagem da roda do mouse na borda da página avança para a próxima página
property Character[Index: Integer]: WideCharWrapper do TPdfView que encaminha para TPdf.Character
property CharacterAngle[Index: Integer]: SingleWrapper do TPdfView que encaminha para TPdf.CharacterAngle
property CharacterCount: IntegerWrapper do TPdfView que encaminha para TPdf.CharacterCount
property CharacterFontSize[Index: Integer]: DoubleWrapper do TPdfView que encaminha para TPdf.CharacterFontSize
property CharacterFontWeight[Index: Integer]: IntegerWrapper do TPdfView que encaminha para TPdf.CharacterFontWeight
property CharacterGenerated[Index: Integer]: BooleanWrapper do TPdfView que encaminha para TPdf.CharacterGenerated
function CharacterIndexAtPos(X, Y: Integer; ToleranceX, ToleranceY: Double): IntegerRetorna o índice do caractere na página atual mais próximo do pixel de tela (X, Y), ou -1 se nenhum caractere estiver próximo o suficiente
property CharacterIsHyphen[Index: Integer]: BooleanWrapper do TPdfView que encaminha para TPdf.CharacterIsHyphen
property CharacterMapError[Index: Integer]: BooleanWrapper do TPdfView que encaminha para TPdf.CharacterMapError
property CharacterOrigin[Index: Integer]: TPointWrapper do TPdfView que encaminha para TPdf.CharacterOrigin
property CharacterRectangle[Index: Integer]: TRectWrapper do TPdfView que encaminha para TPdf.CharacterRectangle
property Charcode[Index: Integer]: WideCharWrapper do TPdfView que encaminha para TPdf.Charcode
procedure ClearFormFieldFocusOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
procedure ClearHighlightWrapper do TPdfView que encaminha para TPdfView.ClearHighlight
procedure ClearReadingHighlightControla a sobreposição de realce de leitura do TPdfView usada pela reprodução sincronizada de texto para fala
procedure ClearReadingWordLimpa a sobreposição do cursor de leitura no nível de palavra atual em TPdfView
procedure ClearSelectionLimpa a seleção de texto atual e invalida a exibição
ColorDefine a cor de fundo desenhada entre os retângulos de página e ao redor das bordas do documento
ConstraintsDefine a largura e a altura mínima e máxima que o visualizador PDF pode alcançar quando o pai é redimensionado
function CopySelectionToClipboard: BooleanCopia o texto selecionado atualmente para a área de transferência do Windows como CF_UNICODETEXT
constructor Create(AOwner: TComponent); overrideCria o controle TPdfView e inicializa o estado de renderização, rolagem, seleção e interação com formulários
procedure CreateAnnotation(const Annotation: TPdfAnnotation)Wrapper do TPdfView que encaminha para TPdf.CreateAnnotation
property CurrentCharIndex: IntegerÍndice de caractere somente leitura baseado em 0 sob o cursor atual do mouse (ou no último ponto testado)
procedure DeleteAnnotation(Index: Integer)Wrapper do TPdfView que encaminha para TPdf.DeleteAnnotation
destructor Destroy; overrideLibera recursos do visualizador, buffers de renderização e assinaturas de documento antes que o TPdfView seja destruído
function DeviceToPage(X, Y: Integer; out PageX, PageY: Double): Boolean; overloadConverte um pixel de tela (X, Y) dentro da exibição em um ponto do espaço de usuário PDF na página atual
property DisplayMode: TPdfDisplayModeModo de layout: página única, contínuo, duas páginas, duas páginas contínuo, com ou sem capa
property DragCursorDocumenta o membro DragCursor publicado pelo TPdfView
property DragKindDocumenta o membro DragKind publicado pelo TPdfView
property DragModeDocumenta o membro DragMode publicado pelo TPdfView
EnabledControla se o visualizador PDF aceita entrada do usuário pelo mouse e pelo teclado
property Find: FPDF_SCHHANDLEWrapper do TPdfView que encaminha para TPdf.Find
function FindFirst(const Text: WString; Options: TSearchOptions= []; StartIndex: Integer= 0; DirectionUp: Boolean= True): IntegerInicia uma busca pelo texto especificado. StartIndex é baseado em 0, -1 indica o fim da página. O parâmetro DirectionUp determina a direção da operação de busca
function FindNext: IntegerWrapper do TPdfView que encaminha para TPdf.FindNext
function FindPrevious: IntegerWrapper do TPdfView que encaminha para TPdf.FindPrevious
property FitMode: TPdfFitModeControla como a página atual se encaixa na área de cliente do visualizador; reaplicado automaticamente ao redimensionar e quando PageNumber muda, para que documentos longos com tamanhos de página mistos permaneçam enquadrados
function FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): IntegerWrapper do TPdfView que encaminha para TPdf.FlattenPage
function FocusFormField(Index: Integer): BooleanOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusNextFormField: IntegerOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusPreviousFormField: IntegerOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusedFormFieldDetails: TPdfFormFieldInfoRetorna TPdfFormFieldInfo para o campo de formulário lógico atual
function FocusedFormFieldIndex: IntegerOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusedFormFieldName: WStringRetorna o nome de exibição lógico atual do campo de formulário, preferindo AlternateName e recuando para Name
function FocusedFormFieldText: WStringOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FocusedFormFieldTextDirection: TPdfFormTextDirectionLê a direção de texto em memória do widget com foco no visualizador
function FocusedFormFieldValue: WStringRetorna o valor lógico atual do campo de formulário por FocusedFormFieldIndex sem depender do cursor interativo
property FontAscent[Index: Integer; FontSize: Single]: SingleWrapper do TPdfView que encaminha para TPdf.FontAscent
property FontBaseName[Index: Integer]: WStringWrapper do TPdfView que encaminha para TPdf.FontBaseName
property FontData[Index: Integer]: TBytesWrapper do TPdfView que encaminha para TPdf.FontData
property FontDescent[Index: Integer; FontSize: Single]: SingleWrapper do TPdfView que encaminha para TPdf.FontDescent
property FontFamilyName[Index: Integer]: WStringWrapper do TPdfView que encaminha para TPdf.FontFamilyName
property FontFlags[Index: Integer]: IntegerWrapper do TPdfView que encaminha para TPdf.FontFlags
property FontHandle[Index: Integer]: FPDF_FONTWrapper do TPdfView que encaminha para TPdf.FontHandle
property FontIsEmbedded[Index: Integer]: BooleanWrapper do TPdfView que encaminha para TPdf.FontIsEmbedded
property FontItalicAngle[Index: Integer]: IntegerWrapper do TPdfView que encaminha para TPdf.FontItalicAngle
property FontSize[Index: Integer]: DoubleWrapper do TPdfView que encaminha para TPdf.FontSize
property FontWeight[Index: Integer]: IntegerWrapper do TPdfView que encaminha para TPdf.FontWeight
function FormCanRedo: BooleanInforma se o widget AcroForm com foco tem ao menos uma edição desfeita para refazer
function FormCanUndo: BooleanInforma se o widget AcroForm com foco tem ao menos uma edição a desfazer
property FormField[Index: Integer]: WStringWrapper do TPdfView que encaminha para TPdf.FormField
property FormFieldAt[X, Y: Integer]: WStringWrapper do TPdfView que encaminha para TPdf.FormFieldAt
property FormFieldCount: IntegerWrapper do TPdfView que encaminha para TPdf.FormFieldCount
property FormFieldInfo[Index: Integer]: TPdfFormFieldInfoWrapper do TPdfView que encaminha para TPdf.FormFieldInfo
property FormFieldInfoAt[X, Y: Integer]: TPdfFormFieldInfoWrapper do TPdfView que encaminha para TPdf.FormFieldInfoAt
function FormFieldTypeAt(X, Y: Integer; out FieldType: TPdfFormFieldType): BooleanConverte pixels da exibição em coordenadas de página e executa teste de hits nativo do tipo de campo
function FormFieldTabOrder: TPdfIntegerArrayOpera com o cursor lógico de foco AcroForm da página atual para fluxos de teclado, fala e acessibilidade
function FormRedo: BooleanRefaz a edição desfeita mais recentemente no widget AcroForm com foco, acionando o histórico de refazer por widget do PDFium
function FormUndo: BooleanDesfaz a edição mais recente no widget AcroForm com foco, acionando o histórico de desfazer por widget do PDFium
procedure GenerateFormAppearancesWrapper do TPdfView que encaminha para TPdf.GenerateFormAppearances
function GetSelectedFormText: WStringRetorna o texto atualmente selecionado dentro do widget AcroForm com foco na página ativa da exibição
property HasFormFieldAt[X, Y: Integer]: BooleanWrapper do TPdfView que encaminha para TPdf.HasFormFieldAt
function HasSelection: BooleanRetorna se há algum texto selecionado no visualizador no momento
property HighlightColor: TColorCor do retângulo desenhado sobre cada correspondência retornada por HighlightSearchText. O padrão é clYellow; publicado para que os aplicativos possam tematizar o realce
function HighlightSearchText(const Text: WString; MatchCase: Boolean= False; MatchWholeWord: Boolean= False): IntegerWrapper do TPdfView que encaminha para TPdfView.HighlightSearchText
property Image[Index: Integer]: TPdfImageWrapper do TPdfView que encaminha para TPdf.Image
property ImageCount: IntegerWrapper do TPdfView que encaminha para TPdf.ImageCount
property LinkAnnotation[PageNumber, Index: Integer]: TLinkAnnotationWrapper do TPdfView que encaminha para TPdf.LinkAnnotation
function LinkAnnotationAtPos(X, Y: Integer; out PageNumber: Integer): Integer; overloadRetorna o índice da anotação de link no pixel de tela (X, Y), ou -1
property LinkAnnotationCount[PageNumber: Integer]: IntegerWrapper do TPdfView que encaminha para TPdf.LinkAnnotationCount
property LinkOptions: TPdfViewLinkOptionsConjunto publicado que controla quais dos quatro tipos de ação de link do PDFium a exibição segue automaticamente quando o usuário clica no link
LoadingColorCor de preenchimento do marcador de “carregando” desenhado enquanto uma página ainda está sendo renderizada
LoadingTextTexto exibido no centro da página enquanto a renderização assíncrona ainda está em andamento
property NightDuotoneInk: TColorControla a cor de tinta usada pela opção de renderização de baixa visão reNightDuotone
property NightDuotonePaper: TColorControla a cor de papel usada pela opção de renderização de baixa visão reNightDuotone
property ObjectBitmap[Index: Integer]: TBitmapWrapper do TPdfView que encaminha para TPdf.ObjectBitmap
property ObjectBounds[Index: Integer]: TPdfRectangleWrapper do TPdfView que encaminha para TPdf.ObjectBounds
property ObjectCount: IntegerWrapper do TPdfView que encaminha para TPdf.ObjectCount
property ObjectHandle[Index: Integer]: PointerWrapper do TPdfView que encaminha para TPdf.ObjectHandle
property ObjectTransparent[Index: Integer]: BooleanWrapper do TPdfView que encaminha para TPdf.ObjectTransparent
property ObjectType[Index: Integer]: TObjectTypeWrapper do TPdfView que encaminha para TPdf.ObjectType
property Options: TRenderOptionsConjunto de dicas de renderização e opções de baixa visão pós-renderização do TPdfView
property Page: FPDF_PAGEWrapper do TPdfView que encaminha para TPdf.Page
property PageBorderColor: TColorCor da borda de 1 pixel desenhada ao redor de cada retângulo de página
property PageBounds: TPdfRectangleWrapper do TPdfView que encaminha para TPdf.PageBounds
property PageColor: TColorCor de fundo pintada sob a página PDF renderizada, desacoplada da Color do controle ao redor. O padrão é clWhite para que as páginas PDF permaneçam brancas como papel mesmo quando a Color do controle host usa um tema escuro
property PageCount: IntegerWrapper do TPdfView que encaminha para TPdf.PageCount
property PageHeight: DoubleWrapper do TPdfView que encaminha para TPdf.PageHeight
property PageHeightZoom[PageNumber: Integer]: DoubleFator de zoom somente leitura que ajusta a altura da página à exibição
property PageLabel: WStringWrapper do TPdfView que encaminha para TPdf.PageLabel
property PageNumber: IntegerWrapper do TPdfView que encaminha para TPdf.PageNumber
property PageRotation: TRotationWrapper do TPdfView que encaminha para TPdf.PageRotation
PageShadowColorCor de preenchimento da sombra projetada pintada sob cada retângulo de página
property PageShadowSize: IntegerLargura (em pixels) da sombra suave desenhada ao redor de cada página nos modos contínuos
function PageToDevice(PageX, PageY: Double; out X, Y: Integer): Boolean; overloadInverso de DeviceToPage: converte um ponto do espaço de usuário PDF em um pixel de tela dentro da exibição
property PageWidth: DoubleWrapper do TPdfView que encaminha para TPdf.PageWidth
property PageWidthZoom[PageNumber: Integer]: DoubleFator de zoom somente leitura que ajusta a largura da página à exibição
function PageWordBoxes: TPdfWordBoxesRetorna registros TPdfWordBox para as palavras da página atual do TPdfView com intervalos de caracteres e retângulos no espaço da página
property PageZoom[PageNumber: Integer]: DoubleZoom somente leitura necessário para ajustar a página atual à exibição no DisplayMode atual
procedure PaintSelection(SelectionStart, SelectionEnd: Integer; Mask: TColor)Wrapper do TPdfView que encaminha para TPdfView.PaintSelection
property ParentShowHintDocumenta o membro ParentShowHint publicado pelo TPdfView
property Pdf: TPdfReferencia o componente TPdf cujo documento é renderizado pelo visualizador
PopupMenuAssocia um TPopupMenu ao visualizador PDF para que clicar com o botão direito em uma página apresente um menu de contexto
ReadableContentRetorna fragmentos de conteúdo legível semântico para fluxos de leitor de tela, texto para fala e acessibilidade
property ReadingHighlightColor: TColorControla a sobreposição de realce de leitura do TPdfView usada pela reprodução sincronizada de texto para fala
function ReadingUnits: TPdfReadingUnitsConstrói registros TPdfReadingUnit por sentença a partir da página atual do TPdfView
property ReadingWordColor: TColorControla a cor da sobreposição usada para o cursor de leitura no nível de palavra atual
property ReadingWordFollow: BooleanControla se o TPdfView rola a palavra falada atual para a área visível enquanto acompanha a leitura
property Rectangle[Index: Integer]: TRectWrapper do TPdfView que encaminha para TPdf.Rectangle
function RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): IntegerWrapper do TPdfView que encaminha para TPdf.RectangleCount
procedure ReloadPageWrapper do TPdfView que encaminha para TPdf.ReloadPage
procedure RemoveObject(Index: Integer; DestroyObject: Boolean = True)Wrapper do TPdfView que encaminha para TPdf.RemoveObject
procedure RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = [])Renderiza o conteúdo de uma página em um dispositivo (tela, bitmap ou impressora)
function RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; Rotation: TRotation = ro0; Options: TRenderOptions = []): TBitmapRenderiza uma área retangular de uma página em um novo bitmap. O bitmap retornado deve ser liberado manualmente
property Rotation: TRotationRotação visual aplicada à página renderizada (ro0 / ro90 / ro180 / ro270)
procedure SelectAllSeleciona todos os caracteres na(s) página(s) exibida(s) atualmente pelo visualizador
function SelectAllFormText: BooleanSeleciona todos os caracteres dentro do widget AcroForm com foco na página ativa da exibição (o equivalente a Ctrl+A dentro do widget)
function SelectTextRange(Page, StartIndex, Count: Integer): BooleanLê ou grava o modelo programático de seleção de texto do TPdfView sem exigir entrada do mouse do usuário
function SelectWordBox(const Word: TPdfWordBox): BooleanSeleciona o intervalo de texto representado por um TPdfWordBox na página atual do TPdfView
function SelectWordSpan(const Words: TPdfWordBoxes; StartIndex, EndIndex: Integer): BooleanSeleciona um trecho na mesma página de registros TPdfWordBox como uma única seleção de texto do TPdfView
function SelectedText: WStringRetorna o texto selecionado atualmente como uma string larga
function SelectionCharCount: IntegerRetorna o número total de caracteres selecionados atualmente
property SelectionColor: TColorCor de preenchimento da sobreposição de seleção de texto arrastada pelo usuário
function SelectionRanges: TPdfUserSelectionRangesLê ou grava o modelo programático de seleção de texto do TPdfView sem exigir entrada do mouse do usuário
function SelectionRectangles: TPdfRectanglesLê ou grava o modelo programático de seleção de texto do TPdfView sem exigir entrada do mouse do usuário
procedure SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags)Wrapper do TPdfView que encaminha para TPdf.SetFormFieldFlags
procedure SetFormFieldFlagsAt(X, Y: Integer; const Flags: TPdfFormFieldFlags)Wrapper do TPdfView que encaminha para TPdf.SetFormFieldFlagsAt
function SetFocusedFormFieldTextDirection(Direction: TPdfFormTextDirection): BooleanAltera a direção de texto em memória do widget com foco e redesenha a cena da página
procedure SetReadingHighlight(const Rects: TPdfRectangles; PageNumber: Integer)Controla a sobreposição de realce de leitura do TPdfView usada pela reprodução sincronizada de texto para fala
procedure SetReadingWord(const Word: TPdfWordBox)Realça um TPdfWordBox como a palavra falada atual em TPdfView
function SetSelection(const Ranges: TPdfUserSelectionRanges): BooleanLê ou grava o modelo programático de seleção de texto do TPdfView sem exigir entrada do mouse do usuário
ShowHintHabilita ou desabilita o balão de dica exibido quando o mouse repousa sobre o visualizador PDF
property SmoothScroll: BooleanHabilita animação segmentada controlada por timer para comandos da barra de rolagem de linha/página. O arraste do indicador permanece imediato
property StructureElements: TPdfStructureElementsWrapper do TPdfView que encaminha para TPdf.StructureElements
TabOrderDefine a posição do visualizador PDF no ciclo de tabulação do pai
TabStopIndica se o usuário pode dar foco ao visualizador PDF pressionando a tecla Tab
function Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WStringWrapper do TPdfView que encaminha para TPdf.Text
function TextInRectangle(Left, Top, Right, Bottom: Integer): WString; overloadWrapper do TPdfView que encaminha para TPdf.TextInRectangle
property TextPage: FPDF_TEXTPAGEWrapper do TPdfView que encaminha para TPdf.TextPage
property Thumbnail: TBitmapWrapper do TPdfView que encaminha para TPdf.Thumbnail
property TouchDocumenta o membro Touch publicado pelo TPdfView
function TrackReadingWordAt(PageNumber, CharIndex: Integer): IntegerMapeia um deslocamento de caractere da página para o TPdfWordBox que o contém, realça-o e retorna o índice da palavra
property Transparent: BooleanWrapper do TPdfView que encaminha para TPdf.Transparent
procedure UpdatePageWrapper do TPdfView que encaminha para TPdf.UpdatePage
VisibleExibe ou oculta o visualizador PDF
property WebLink[PageNumber, Index: Integer]: TWebLinkWrapper do TPdfView que encaminha para TPdf.WebLink
function WebLinkAtPos(X, Y: Integer; out PageNumber: Integer): Integer; overloadRetorna o índice do link da web no pixel de tela (X, Y)
property WebLinkCount[PageNumber: Integer]: IntegerWrapper do TPdfView que encaminha para TPdf.WebLinkCount
property WindowHandle: HWNDHandle de janela nativo do controle (somente Windows)
property Zoom: DoubleFator de zoom em que 1.0 = 100% (um ponto PDF = 1 pixel de tela a 72 DPI)

Eventos do TPdfView

EventoTipoDescrição
OnPageChangeTNotifyEventDisparado quando a página exibida muda durante a rolagem
OnPageNumberChangedTNotifyEventDisparado quando a propriedade PageNumber é modificada
OnAnnotationLinkClickTPdfViewAnnotationLinkClickEventDisparado antes de uma ação automática de link de anotação; defina Handled para suprimir a ação padrão
OnWebLinkClickTPdfViewWebLinkClickEventDisparado antes de uma ação automática de link da web detectado automaticamente; defina Handled para suprimir o ShellExecute
OnPaintTNotifyEventDisparado durante operações de desenho personalizado
property OnAnnotationLinkClick: TPdfViewAnnotationLinkClickEventDisparado quando o usuário clica em um Link de Subtype /Annot que não é tratado automaticamente por LinkOptions
property OnCanResizeDocumenta o evento OnCanResize publicado pelo TPdfView
OnClickOcorre quando o usuário clica (botão esquerdo do mouse) dentro do visualizador
property OnConstrainedResizeDocumenta o evento OnConstrainedResize publicado pelo TPdfView
property OnContextPopupDocumenta o evento OnContextPopup publicado pelo TPdfView
OnDblClickOcorre quando o usuário clica duas vezes (botão esquerdo do mouse) dentro do visualizador
property OnDragDropDocumenta o evento OnDragDrop publicado pelo TPdfView
property OnDragOverDocumenta o evento OnDragOver publicado pelo TPdfView
property OnEndDockDocumenta o evento OnEndDock publicado pelo TPdfView
property OnEndDragDocumenta o evento OnEndDrag publicado pelo TPdfView
property OnEnterDocumenta o evento OnEnter publicado pelo TPdfView
property OnExitDocumenta o evento OnExit publicado pelo TPdfView
property OnFormFieldFocusChange: TPdfFormFieldFocusEventAcionado quando o TPdfView move ou limpa o cursor lógico de foco de campo AcroForm
property OnGestureDocumenta o evento OnGesture publicado pelo TPdfView
property OnKeyDown: TKeyEventDisparado quando uma tecla é pressionada enquanto o controle tem foco
property OnKeyPress: TKeyPressEventDisparado para cada caractere gerado pelo teclado
property OnKeyUp: TKeyEventOcorre quando uma tecla é liberada enquanto o controle visualizador tem foco
property OnMouseActivateDocumenta o evento OnMouseActivate publicado pelo TPdfView
property OnMouseDown: TMouseEventDisparado quando o usuário pressiona um botão do mouse sobre a exibição
property OnMouseEnterDocumenta o evento OnMouseEnter publicado pelo TPdfView
property OnMouseLeaveDocumenta o evento OnMouseLeave publicado pelo TPdfView
property OnMouseMove: TMouseMoveEventDisparado sempre que o mouse se move sobre a exibição
property OnMouseUp: TMouseEventDisparado quando o usuário libera um botão do mouse
property OnMouseWheel: TMouseWheelEventDisparado quando a roda é girada sobre a exibição
property OnMouseWheelDownDocumenta o evento OnMouseWheelDown publicado pelo TPdfView
property OnMouseWheelUpDocumenta o evento OnMouseWheelUp publicado pelo TPdfView
property OnPageChange: TNotifyEventDisparado quando a página atual muda por qualquer motivo
property OnPageNumberChanged: TNotifyEventDisparado quando o número da página visível muda devido à rolagem
property OnPaint: TNotifyEventDisparado após a exibição terminar de desenhar a página atual
property OnResize: TNotifyEventDisparado sempre que a área de cliente do controle muda de tamanho
property OnSelectionChange: TNotifyEventAcionado quando os intervalos materializados de seleção de texto realmente mudam
property OnStartDockDocumenta o evento OnStartDock publicado pelo TPdfView
property OnStartDragDocumenta o evento OnStartDrag publicado pelo TPdfView
property OnWebLinkClick: TPdfViewWebLinkClickEventDisparado quando o usuário clica em uma URL da web detectada no texto que não é tratada automaticamente por LinkOptions

Classe TPdfDocumentSearch

Busca de texto lazy em todo o documento, para frente ou para trás, que retém handles nativos do PDFium apenas para a página atual

Método

MétodoDescrição
NextRetorna um TPdfDocumentSearchResult com página, intervalo de caracteres, texto e retângulos no espaço da página

Propriedades

MembroTipoDescrição
CurrentPageIntegerPágina baseada em 1 que está sendo pesquisada no momento
DirectionTPdfDocumentSearchDirectionPercorre para frente ou para trás
FinishedBooleanSe nenhum outro resultado pode ser retornado
CancelledBooleanSe um token de cancelamento encerrou a busca
MatchCountUInt64Número de resultados já retornados

Classe TPdfProgressiveDocument

TPdfProgressiveDocument deriva de TPdf e mantém viva a sessão nativa de disponibilidade do PDFium enquanto um stream remoto ou em crescimento de acesso aleatório recebe os intervalos de bytes solicitados

Métodos

MétodoDescrição
BeginProgressiveLoadInicia uma sessão de acesso aleatório de tamanho lógico com um prefixo contíguo inicial opcional
CheckDocumentAvailabilityPergunta ao PDFium se os metadados do documento estão prontos e retorna dicas de download mescladas
OpenProgressiveDocumentAbre o documento linearizado nativo ou o stream personalizado não linearizado concluído
CheckFormAvailabilityLibera a inicialização do preenchimento de formulários e retorna quaisquer intervalos de bytes adicionais
LoadAvailablePageLibera e ativa uma página baseada em 1 após a chegada dos bytes necessários
CancelProgressiveLoadLibera todo o estado progressivo na ordem de dependência

Propriedades e eventos

MembroTipoDescrição
ProgressiveLoadingBooleanSe a sessão nativa de disponibilidade está ativa
LogicalFileSizeUInt64Comprimento final do conteúdo do PDF
AvailableByteCountUInt64Comprimento monotônico do prefixo legível
LinearizationTPdfLinearizationVeredito nativo de linearização
FirstAvailablePageNumberIntegerPrimeira página disponível, baseada em 1
OnDataAvailableTPdfDataAvailableEventCallback de disponibilidade do cache esparso de intervalos
RangeRequestsTPdfRangeRequestSchedulerAgendador priorizado sob propriedade do componente, populado a partir de dicas nativas de disponibilidade

Classe TPdfRangeRequestScheduler

Agendador seguro para threads e neutro quanto ao transporte para agrupar, priorizar, dividir, repetir, cancelar e contabilizar solicitações esparsas de intervalos de bytes PDF

Fluxo de trabalho principal

MétodoDescrição
EnqueueHintsAdiciona intervalos de bytes nativos ausentes e antecipa transferências sobrepostas de prioridade menor
TryDequeueMove a solicitação de maior prioridade para o conjunto em andamento
CompleteRequestConfirma uma resposta de transporte total ou parcial depois que seus bytes são armazenados
FailRequestRepete ou abandona uma tentativa de transporte com falha dentro de MaxRetryCount
MarkAvailableRegistra bytes externos e cancela trabalhos pendentes ou ativos duplicados
CancelInvalida a geração e notifica o host sobre as solicitações de transporte ativas

Classe TPdfStreamInspector

Inventário limitado somente leitura e extração de objetos físicos arbitrários de stream do PDF na unit FPdfStreamInspect

Fluxo de trabalho principal

MembroDescrição
CreateInspeciona um array de bytes ou um stream posicionável preservando a posição do stream do chamador
CopyRawDataCopia um payload codificado completo ou uma janela validada de bytes brutos para um stream de destino
DecodeDataAplica os filtros gerais suportados na ordem de declaração e informa qualquer fronteira restante de codec nativo
InfosRetorna deslocamentos e comprimentos de objetos, metadados de filtros, DecodeParms e a classificação de acesso nativo

Componente TPdfReadingSession

TPdfReadingSession é uma máquina de estados de leitura em voz alta neutra quanto ao TTS que coordena blocos TPdfSpokenText, callbacks do motor de fala do host e o realce do cursor de palavras do TPdfView

Métodos

MétodoDescrição
Create(AOwner: TComponent)Inicializa uma sessão ociosa com ritmo de fala estimado padrão
LoadSpoken(const Chunks: TPdfSpokenTexts)Interrompe a reprodução atual e copia os blocos a serem falados em ordem
PlayInicia a reprodução a partir do primeiro bloco carregado
PlayFrom(ChunkIndex: Integer)Inicia a reprodução a partir de um índice de bloco baseado em 0
PausePassa de pssSpeaking para pssPaused e aciona OnPauseRequest
ResumeRetoma a reprodução pausada ou fala novamente o bloco atual quando ResumeRestartsChunk está habilitado
StopCancela a reprodução, redefine os cursores de bloco e de palavra e limpa o realce de palavras do TPdfView anexado
FeedSpokenPosition(SpokenOffset: Integer)Mapeia um deslocamento do motor de fala de volta a um caractere da página PDF e move o cursor de palavras do TPdfView
Tick(SpeechStillBusy: Boolean; ElapsedMs: Cardinal = 0)Avança para o próximo bloco, conclui a reprodução ou estima a palavra atual enquanto a fala ainda está ocupada

Propriedades

PropriedadeTipoDescrição
StateTPdfReadingSessionStateEstado atual: pssIdle, pssSpeaking ou pssPaused
ChunkCountIntegerNúmero de blocos de fala carregados
CurrentChunkIntegerÍndice do bloco ativo baseado em 0, ou -1 quando nenhum bloco está ativo
CurrentWordIntegerÍndice da palavra ativa baseado em 0 dentro do bloco atual, ou -1 quando desconhecido
ViewTPdfViewVisualizador que recebe as atualizações do cursor de palavras
EstimatePacingBooleanUsa o tempo decorrido para estimar a posição da palavra em motores de fala sem sinal de posição de palavra
EstimatedWordsPerMinuteIntegerVelocidade de fala usada pelo ritmo estimado, padrão 175
ResumeRestartsChunkBooleanFaz Resume falar novamente o bloco atual em motores em que a pausa cancela a fala enfileirada

Eventos

EventoTipoDescrição
OnSpeakTPdfReadingSpeakEventDisparado quando o host deve falar um bloco
OnCancelRequestTNotifyEventDisparado quando o host deve cancelar a fala
OnPauseRequestTNotifyEventDisparado quando o host deve pausar a fala
OnResumeRequestTNotifyEventDisparado quando o host deve retomar a fala sem reiniciar o bloco
OnChunkChangeTPdfReadingChunkEventDisparado quando o bloco ativo muda
OnWordChangeTPdfReadingWordEventDisparado quando a palavra ativa muda
OnFinishedTNotifyEventDisparado após o último bloco terminar

Componente TPdfThumbnailView

TPdfThumbnailView é um controle de painel lateral rolável da unit FPdfThumbnail. Ele se vincula a um componente TPdf e renderiza uma miniatura de página por linha para navegação de páginas

Propriedades publicadas

PropriedadeTipoPadrãoDescrição
PdfTPdfnilComponente de documento usado para renderizar as miniaturas
CurrentPageIndexInteger0Índice da página selecionada baseado em 1; 0 significa nenhuma página selecionada
ThumbnailWidthInteger120Largura desejada da miniatura, limitada a 48..800
ThumbnailHeightInteger160Altura desejada da miniatura, limitada a 48..800
TextColorTColorclBlackCor da legenda do número da página
HoverColorTColorclMoneyGreenCor de realce da linha sob a miniatura apontada pelo cursor
SelectionColorTColorclHighlightCor de realce da linha para CurrentPageIndex
BorderColorTColorclGrayCor da borda da miniatura

Eventos

EventoTipoDescrição
OnPageClickTPdfThumbnailClickEventDisparado quando o usuário clica com o botão esquerdo em uma linha de miniatura; APageIndex é baseado em 1

Tipos de dados e enumerações

Tipos principais

TipoDefinição
WStringTipo de string larga para texto Unicode
TPdfIntegerArrayArray dinâmico de valores Integer
TPdfSingleArrayArray dinâmico de valores Single usado para posições de caracteres de objetos de texto
TPdfPrintPageRangeRegistro: StartPage, EndPage: Integer
TPdfPrintPageRangesArray dinâmico de intervalos de páginas de impressão baseados em 1
TPdfPointRegistro: X, Y: Double
TPdfRectangleRegistro: Left, Top, Right, Bottom: Double
TPdfDocumentSearchDirectiondsdForward, dsdBackward
TPdfDocumentSearchResultArmazena uma página baseada em 1, um intervalo nativo de caracteres, o texto correspondente e retângulos no espaço da página
TPdfReadingUnitArmazena uma unidade de leitura falada com texto, tipo semântico, página, retângulos de realce, índices de origem, estado de texto alternativo e idioma
TPdfReadingUnitsArray dinâmico de registros TPdfReadingUnit
TPdfWordBoxArmazena uma palavra, seu intervalo de caracteres FTextPage, seu retângulo no espaço da página e seu número de página baseado em 1
TPdfWordBoxesArray dinâmico de registros TPdfWordBox
TPdfSpokenSpanMapeia uma sequência de texto do motor de fala de volta a um intervalo de caracteres da página de origem
TPdfSpokenSpansArray dinâmico de registros TPdfSpokenSpan
TPdfSpokenTextTexto de fala mais mapeamentos de sequência de volta ao texto da página PDF
TPdfSpokenTextsArray dinâmico de blocos TPdfSpokenText
TPdfReadingSessionStatepssIdle, pssSpeaking, pssPaused
TPdfReadingSpeakEventAssinatura de callback para TPdfReadingSession.OnSpeak
TPdfReadingChunkEventAssinatura de callback para TPdfReadingSession.OnChunkChange
TPdfReadingWordEventAssinatura de callback para TPdfReadingSession.OnWordChange
TPdfStreamAdapterClasse que expõe um TStream posicionável como callbacks FPDF_FILEACCESS do PDFium
TPdfRandomAccessStoreStream posicionável seguro para threads com memória limitada, transbordo seguro para arquivo temporário, E/S posicionada, transferência, flush e diagnósticos de armazenamento
TPdfStorageBackendpsbMemory, psbTemporaryFile
TPdfXObjectWrapper de tempo de vida para handles Form XObject reutilizáveis criados por CreateXObjectFromPage
TPdfFileIdentifierTypefidPermanent, fidChanging
TPdfPageBoxpbMedia, pbCrop, pbBleed, pbTrim, pbArt
TPdfJavaScriptActionRegistro: Name, Script: WString
TPdfJavaScriptActionsArray dinâmico de registros TPdfJavaScriptAction
TPdfVersionpvUnknown, pv10, pv11, pv12, pv13, pv14, pv15, pv16, pv17; alvos explícitos de SaveAs de pv13 a pv17 são normalizados e validados em relação à versão de PDF selecionada
TPdfVersionInfoRegistro contendo fatos separados de cabeçalho, catálogo, versão efetiva do núcleo e extensão de desenvolvedor da Adobe, da unit FPdfCompress
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
TPdfViewLinkOptionsConjunto de valores TPdfViewLinkOption

Opções de busca e renderização

TipoValores
TSearchOptionseCaseSensitive, seWholeWord, seConsecutive
TSearchOptionsConjunto de TSearchOption
TRenderOptionreAnnotations, reLcd, reNoNativeText, reGrayscale, reDebugInfo, reNoCatchException, reLimitCache, reHalftone, rePrinting, reReverseByteOrder, reNoSmoothText, reNoSmoothImage, reNoSmoothPath, reInvert, reNightDuotone
TRenderOptionsConjunto de TRenderOption

Tipos de desenho

TipoValores
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

Tipos de anotação

TipoDescrição
TPdfAnnotationSubtypeSubtipos de anotação: 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
TPdfAnnotationFlagSinalizadores: afInvisible, afHidden, afPrint, afNoZoom, afNoRotate, afNoView, afReadOnly, afLocked, afToggleNoView
TPdfAnnotationRegistro contendo subtipo, sinalizadores, cores, texto, retângulo e todos os conjuntos de quadriláteros de marcação por meio de AttachmentPointSets

Tipos de formulário

TipoDescrição
TPdfFormTypeftUnknown, ftNone, ftAcroForm, ftXfaFull, ftXfaForeground
TPdfFormFieldTypefiUnknown, fiPushButton, fiCheckBox, fiRadioButton, fiComboBox, fiListBox, fiTextField, fiSignature
TPdfFormFieldFlagffReadOnly, ffRequired, ffNoExport, ffMultiline, ffChoiceCombo, ffChoiceEdit, ffPassword, ffChoiceMultiSelect
TPdfFormFieldInfoRegistro contendo FieldType, Flags, Name, Value, AlternateName e outras propriedades

Tipos de carimbo de data/hora de arquivo PAdES

TipoDescrição
TPadesArchiveTimestampOptionsURL da TSA, nonce, capacidade do token, sinalizador opcional de atualização do DSS, material DSS de substituição completo e Default
TPadesArchiveTimestampReportNíveis PAdES de origem e de resultado, contagens de Document Time-stamp anteriores e resultantes, comprimentos em bytes de origem e de resultado, estado de atualização do DSS, hora de geração, OID de política e nonce retornado

Tipos de algoritmo de assinatura PAdES

TipoDescrição
TPadesSignatureAlgorithmFamilypsafUnknown, psafRsa, psafEcdsa, psafEd25519 ou psafEd448
TPadesSignatureAlgorithmInfoOIDs de digest e de assinatura CMS, OIDs de chave pública e de curva nomeada X.509, presença de parâmetros e comprimento de saída SHAKE, família e status de política independente

Tipos de análise de revisão PAdES

TipoDescrição
TPadesRevisionAnalysisStatusprasNotChecked, prasNoLaterChanges, prasAllowed, prasDisallowed, prasSuspicious ou prasIndeterminate
TPadesRevisionChangeKindClassifica alterações de xref, assinatura, material de validação, campo de formulário, anotação, conteúdo de página, estrutura do documento, metadados, conteúdo ativo, exclusão, compressão ou desconhecidas
TPadesRevisionObjectChangeInforma a revisão, os números de objeto e de geração, o deslocamento de origem ou o número e índice do object-stream, a classificação, a decisão, a autoridade e o estado de redefinição
TPadesSignatureRevisionAnalysisInforma a revisão coberta de uma assinatura, a política DocMDP e FieldMDP, revisões posteriores, riscos, status e alterações de objetos
TPadesRevisionAnalysisReportAgrega status de origem, contagens de revisões e assinaturas, riscos, status, análises por assinatura e erros do parser

Tipos de relatório de evidências PAdES

TipoDescrição
TPadesEvidenceReportOptionsConfigurações de confiança mais orçamentos de bytes de origem, assinatura, alteração de revisão, material de validação, bytes armazenados e VRI
TPadesValidationMaterialEvidenceIdentifica um certificado DSS armazenado, resposta OCSP ou CRL pelo número de objeto, comprimento armazenado, tipo e SHA-256
TPadesVriEvidenceMapeia uma chave VRI e um objeto dicionário para suas referências de objetos de certificado, OCSP e CRL
TPadesSignatureEvidenceCorrelaciona fatos do PDFium, ByteRange, hashes de conteúdo e VRI, política CMS, status de validação, hashes do caminho de confiança, cobertura DSS/VRI e decisões de revisão para uma assinatura
TPadesEvidenceReportAgrega evidências de validação, revisão, DSS, PDFium, truncamento e por assinatura com exportações ToJson e ToCsv

Tipos de codec de imagem, diferença de documentos e imposição

Tipo ou funçãoDescrição
TPdfImageCodecpicKeepOriginal, picJpeg, picJpx, picCcittGroup4 ou picFlate
TPdfImageCodecsConjunto de valores TPdfImageCodec permitidos
TPdfImageCodecCandidateFatos da imagem e comprimentos codificados medidos em bytes usados para a seleção de codec
TPdfImageCodecDecisionCodec selecionado, contagens de bytes original e selecionada, economia e decisão de substituição
SelectPdfImageCodecSeleciona a codificação medida elegível menor sem substituir a original abaixo da economia solicitada
TPdfDocumentDiffOptionsDimensões renderizadas, tolerância de cor, critérios de texto e geometria, orçamento de páginas e Default
TPdfPageDifferenceEvidências de texto, geometria, rotação, contagem de pixels e limites alterados de uma página
TPdfPageDifferencesArray dinâmico de registros TPdfPageDifference
TPdfDocumentDiffReportResultado agregado de equivalência, contagens de páginas, páginas alteradas, pixels, truncamento e diferenças detalhadas
TPdfImpositionModepimNUp ou pimBooklet
TPdfImpositionOptionsTamanho de saída, grade, encadernação, medianiz, bleed, creep, opção de folha invertida e Default
TPdfImpositionSlotFolha, lado, slot, página de origem, creep e limites utilizáveis para um posicionamento de imposição
TPdfImpositionSlotsArray dinâmico de registros TPdfImpositionSlot
TPdfImpositionPlanContagens de origem e com preenchimento, contagens de folhas e de lados, grade e geometria de saída e slots ordenados
TPdfImpositionExecutionReportFatos de execução de importação nativa, página importada, origem única, slot em branco, modelo XObject, objeto de formulário, geração de conteúdo, página de saída e N-up nativo
TPdfContentMarkSnapshotsArray dinâmico de snapshots imutáveis de content-mark de propriedade do chamador
TPdfPageObjectSnapshotsArray dinâmico de snapshots imutáveis de objetos de página de propriedade do chamador
BuildPdfImpositionPlanConstrói e valida um plano de slots N-up ou booklet sem abrir ou alterar um documento

Tipos de registro

TipoCampos
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 e o construtor FromFile
TPdfBatchMergeOptionsErrorPolicy, FormPolicy, OutlinePolicy, ResourcePolicy, PageChunkSize, InsertAt, CreateDestination, CopyViewerPreferences, RollbackOnCancelOrFailure, CancellationToken, OnProgress e Default
TPdfBatchMergeReportStatus terminal, contadores de origem e de páginas, métricas de importação nativa, pico de origens abertas, detecções de política, estado de destino e de preferências do visualizador, texto de erro e problemas
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
TPdfStructureElementHierarquia, alternativas de texto, MCIDs, atributos de tabela/lista, mapeamento de namespace e de papel de namespace, referências, arquivos associados, descrições de anotações, propriedade de widgets, rótulos e fatos de aparência
TPdfStructureReadOptionsControles de profundidade máxima, elementos, valores de atributos, prazo e inclusão de atributos para travessia iterativa da estrutura
TPdfStructureReadStatusContadores de visitados mais resultados de conclusão, profundidade, elemento, atributo, prazo e parada do visitante
TPdfUaNamespaceKindpunkMissing, punkPdf17, punkPdf20, punkMathMl, punkAria, punkDpub, punkCustom

Tipos de navegação e permissão

TipoValores
TPdfDestinationViewModedvmUnknown, dvmXYZ, dvmFit, dvmFitHorizontal, dvmFitVertical, dvmFitRectangle, dvmFitBoundingBox, dvmFitBoundingBoxHorizontal, dvmFitBoundingBoxVertical
TPdfPermissionpermPrint, permModify, permCopy, permAnnotate, permFillForms, permAccessibility, permAssemble, permPrintHighQuality
TPdfPermissionsConjunto de valores TPdfPermission

Tipos de carregamento, salvamento e stream de documentos

TipoValores
TPdfLoadModeplmCompatible, plmStrict, plmRecovery — seleciona o quanto de reparo um carregamento pode executar
TPdfLoadStatusplsNotAttempted, plsLoaded, plsLoadedWithRecovery, plsRejected, plsFailed
TPdfLoadRecoveryRouteplrrNone, plrrNativeCrossReference, plrrNativeCrossReferenceRebuild
TPdfContentNormalizeStatuspcnsNotStarted, pcnsCompleted e os motivos de falha limitada pcnsInputLimitExceeded, pcnsOutputLimitExceeded, pcnsTokenLimitExceeded, pcnsMalformedToken, pcnsUnresolvedInlineImage, pcnsUnbalancedState, pcnsUnsupportedFilter, pcnsEncryptedDocument, pcnsSignedDocument, pcnsDocumentRewriteFailed
TPdfObjectPatchOperationKindpopSet, popRemove — tipo de operação usado por SaveAsObjectGraphPatched
TPdfObjectPatchValueRegistro: Kind, BooleanValue, IntegerValue, RealValue, TextValue, ReferenceObjectNumber, ReferenceGeneration
TPdfOptionalContentStateocsUnspecified, ocsOn, ocsOff
TPdfStreamDecodeLevelpsdlRaw, psdlGeneral, psdlFull
TPdfStreamNativeAccesspsnaNone, psnaImageObject, psnaEmbeddedFile
TPdfStreamReadStatuspsrsCompleted, psrsPartiallyDecoded, além de recusas de leitura limitada como psrsInvalidIndex, psrsSourceLimitExceeded, psrsExpansionRatioExceeded, psrsUnsupportedFilter, psrsEncrypted, psrsMalformed
TPdfAFRelationshipafSource, afData, afAlternative, afSupplement, afUnspecified, afEncryptedPayload, afFormData, afTemplate — relacionamento de arquivo associado da ISO 32000-2 7.11.4
TDpmTargetdptRoot, dptLeaf — onde os metadados de parte de documento PDF/VT são anexados
TPdfXmpNamespaceRegistro: Prefix, Uri — um namespace de um TPdfXmpPacket
TPdfAMetadataValuesRegistro contendo valores de Info mapeados decodificados pelo PDFium e um conjunto explícito de presença de chaves
TPdfAMetadataComparisonRegistro contendo um campo mapeado, seu estado de equivalência e ambos os valores comparados
TPdfAMetadataReportRegistro contendo disponibilidade de XMP, status de análise, comparações por campo, campos divergentes e IsEquivalent
TPdfLoadIssueRegistro: Code, Severity, Offset, ObjectNumber, RevisionIndex, MessageText — uma constatação da auditoria limitada de referências cruzadas
TPdfLoadIssueCodeCódigos de constatações da auditoria, de plicHeaderMissing e plicStartXrefInvalid até plicXrefEntryConflict, plicNativeCrossReferenceRebuild, plicStrictModeRejected e plicRepairVerificationFailure
TPdfLoadIssueSeverityplisInformation, plisWarning, plisError
TPdfObjectPatchValueKindpovNull, povBoolean, povInteger, povReal, povName, povTextString, povReference
TPdfStreamFilterInfoRegistro: Name e Kind do filtro mais os parâmetros de decodificação Predictor, Colors, BitsPerComponent, Columns, EarlyChange
TPdfOptionalContentGroupRegistro que descreve um OCG: número e geração do objeto, Name, Intents, estados de view / print / export, subtipo de elemento de página, idioma, tipo e nomes de usuário, faixa de zoom opcional, EffectiveVisible, Locked e índice do grupo de rádio
TPdfOptionalContentConfigurationRegistro que descreve uma configuração de OCG: nome, criador, BaseState, intents, listas de grupos on / off / locked / order, grupos de rádio e se o estado automático está presente
TPdfOptionalContentMembershipRegistro que descreve um OCMD: grupos referenciados, Policy, expressão de visibilidade e EffectiveVisible
TPdfOptionalContentMembershipPolicyocmpAnyOn, ocmpAllOn, ocmpAnyOff, ocmpAllOff, ocmpUnknown
TPdfOptionalContentBaseStateocbsOn, ocbsOff, ocbsUnchanged
TPdfOptionalContentRadioGroupRegistro: os números de objeto de grupo que se comportam como um conjunto de botões de opção
TPdfOptionalContentStateChangeRegistro: GroupObjectNumber e o estado Visible a gravar
TPdfXmpValueRegistro: Kind (pxvkText, pxvkUri, pxvkResource), Text, Language, Qualifiers, RawXml
EPdfXmpErrorExceção gerada para entrada XMP malformada
TXfdfNameValuePairRegistro: Name, Value — uma entrada genérica de um documento XFDF
TPdfDpmEntryRegistro: Name, Value, IsNestedDict — uma entrada de metadados de parte de documento PDF/VT
TPdfVT2sValidationIssueConstatações da validação de stream MIME do PDF/VT-2s, como vtmviNotMultipart, vtmviMissingStreamVersion, vtmviMissingBoundary, vtmviNoInlinePdf e vtmviInlinePdfNotPdfVT

Tipos de texto, fonte e OCR

TipoValores
TPdfCidFontEmbeddingModepcfemFull, pcfemSubsetPreferred, pcfemSubsetRequired
TPdfSystemFontRequestRegistro: FaceName, Weight, Italic, Charset, PitchFamily — solicitação de fonte entregue a um provedor de fontes do sistema
TPdfSystemFontDataRegistro: FaceName, FontData, Charset, TTCIndex — bytes de fonte retornados por um provedor de fontes do sistema
TPdfShapedGlyphRegistro: GlyphID, Advance, OffsetX, OffsetY, ClusterStart, ClusterLength
TPdfTextShaperClasse abstrata com um único método Shape; implemente-a para conectar um motor de shaping externo a AddShapedText
TPdfTableDetectionModeptdmRuled, ptdmWhitespace
TPdfTableContinuationptcNone, ptcStart, ptcMiddle, ptcEnd — posição de uma grade de páginas dentro de uma cadeia de continuação de tabela
TPdfOcrImageRegistro: PageNumber, Width, Height, Stride, Dpi, PixelFormat, Pixels — raster da página entregue a um provedor de OCR
TPdfOcrQuadRegistro: TopLeft, TopRight, BottomRight, BottomLeft, com FromRectangle
TPdfOcrPointRegistro: X, Y em unidades da página
TPdfOcrPixelFormatpopfBgra32 — layout de pixels entregue a um provedor de OCR
TPdfOcrPageStatuspopsPending, popsCompleted, popsSkippedExistingText, popsCancelled, popsFailed
TPdfOcrPageReportRegistro: número da página, Status, tamanho da imagem e contagens de palavras detectadas / inseridas / rejeitadas com uma mensagem de erro
TPdfShapedRunRegistro: intervalo do texto de origem, posição e largura visuais, BidiLevel, IsRightToLeft e os Glyphs moldados
TPdfReflowNodeRegistro: Kind do nó, índice do pai, profundidade, página, texto, limites, idioma, origem da ordem de leitura, nível de título, geometria de linha / coluna de tabela, sinalizador de cabeçalho e confiança
TPdfReflowNodeKindprnkPage, prnkParagraph, prnkHeading, prnkList, prnkListItem, prnkFigure, prnkCaption, prnkTable, prnkTableRow, prnkTableCell, prnkOther
TPdfSearchHighlightRangeRegistro: StartIndex, Count — um intervalo de caracteres realçado
TPdfUserSelectionRangeRegistro: Page baseada em 1, StartIndex no texto dessa página e Count
TPdfSelectionPointRegistro: Page baseada em 1 e CharIndex; página não positiva ou índice -1 significa nenhuma seleção
EPdfTextShapingErrorExceção gerada quando o shaping de texto falha

Tipos do construtor de layout

TipoValores
TPdfLayoutItemUm item de um fluxo de layout; Kind seleciona texto, espaçador, régua, imagem, XObject de página, quebra de página, nó em cache, link ou nó semântico
TPdfLayoutItemKindpliText, pliSpacer, pliRule, pliImage, pliPageXObject, pliPageBreak, pliCachedNode, pliLink, pliSemanticNode
TPdfLayoutTextStyleRegistro: nome e tamanho da fonte, cor e alfa, altura de linha, alinhamento, keep-together legado, quebra de palavras longas e espaço antes / depois, com um construtor Default
TPdfLayoutConstraintsRegistro: keep-together, keep-with-next, quebra de página antes / depois, limites de linhas viúvas e órfãs, com um construtor Default que preserva os valores
TPdfLayoutPageSettingsRegistro: tamanho de página e quatro margens mais altas de cabeçalho e rodapé, com construtores A4 e Letter
TPdfLayoutSemanticRoleplsrArtifact, plsrParagraph, plsrHeading1 a 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
TPdfLayoutCommandRegistro: um comando de desenho resolvido com tipo, número de página, limites, texto e fonte, cor e alfa, alinhamento, espessura, nome de arquivo ou URI, origem, índice do elemento semântico, id de marked-content e índice de anotação
TPdfLayoutRectRegistro: Left, Top, Width, Height em unidades de layout
TPdfLayoutSemanticElementRegistro: a Semantics de um elemento de estrutura e seu ParentElementIndex
EPdfLayoutErrorExceção gerada para entrada de layout inválida

Tipos PAdES

TipoValores
TPadesSeedValueConstraintpsvcFilter, psvcSubFilter, psvcVersion, psvcReasons, psvcLegalAttestation, psvcAddRevocationInfo, psvcDigestMethod
TPadesSeedValueConstraintsConjunto de entradas obrigatórias de seed value de assinatura representadas por TPadesSeedValueConstraint
TPadesSignatureFieldOptionsRegistro: nome do campo, seed values obrigatórias, motivos e atestados legais permitidos, certificados aceitáveis, requisito de certificado, ação de bloqueio FieldMDP e nomes de campos, e permissão de certificação DocMDP
TPadesLevelplUnknown, plNone, plB_B, plB_T, plB_LT, plB_LTA — níveis de conformidade EN 319 142-1
TPadesCryptoStatuspcsNotChecked, pcsValid, pcsInvalid, pcsUnsupported, pcsIndeterminate
TPadesValidationSourceStatuspvssUnavailable, pvssOriginalBytes, pvssIncomplete
TPadesTrustNetworkPolicyptnpOffline, ptnpOnline
TPadesTrustValidationAsyncStatusptvasSuccess, ptvasCancelled, ptvasFailure — resultado relatado por ValidatePadesTrustAsync
TPadesRevisionDecisionprdAllowed, prdDisallowed, prdSuspicious, prdIndeterminate
TPadesFieldMdpActionpfmaNone, pfmaAll, pfmaInclude, pfmaExclude, pfmaUnknown
TWinCmsVerifyStatuswcvsUnavailable, wcvsValid, wcvsInvalid, wcvsUnsupported, wcvsIndeterminate — resultado da verificação CMS do Windows
TPdfMacValidationStatuspmvsValid, pmvsNotPresent, pmvsInvalid, pmvsUnsupported
TPadesSignatureValidationRegistro: status por assinatura para intervalo de bytes, assinatura CMS, política de algoritmo, certificado de assinatura, confiança da cadeia, revogação e os equivalentes de carimbo de data/hora, mais códigos de erro nativos e informações de algoritmo
TPadesValidationIssueConstatações levantadas contra a EN 319 142-1 e a ISO 32000-1 12.8, incluindo chaves obrigatórias duplicadas, valores inválidos de Filter ou Type, exclusão exata de Contents, requisitos de certificado, revogação e carimbo de data/hora
TPadesTrustValidationStageptvsStarting, ptvsReadingSource, ptvsParsingSignatures, ptvsCryptographicIntegrity, ptvsCertificateChain, ptvsAiaRetrieval, ptvsOcspRetrieval, ptvsCrlRetrieval, ptvsTimestampToken, ptvsCompleted
TPadesTrustValidationProgressRegistro: Stage atual, índice e contagem de assinaturas e percentual de conclusão
TPadesRevisionRiskRiscos relatados por revisão, como prrMalformedRevisionChain, prrSignatureObjectRedefined, prrPageContentChanged, prrActiveContentAdded e prrResourceLimitExceeded
TPadesDssMaterialRegistro: DerBytes de um certificado, CRL ou resposta OCSP adicionados ao repositório de segurança do documento
TWinCmsVerifyOptionsRegistro: OnlineRetrieval, CheckRevocation, UrlRetrievalTimeoutMs e um callback OnCheckpoint, com um construtor Default
TWinCmsVerifyStagewcvstCryptographicSignature, wcvstChainBuild, wcvstOnlineRetrieval, wcvstRevocationCheck

Tipos de lote, validação e formulário

TipoValores
TPdfBatchMergeErrorPolicybmepStop, bmepSkip
TPdfBatchMergeFormPolicybmfpPreserveNative, bmfpFlatten, bmfpReject
TPdfBatchMergeOutlinePolicybmopDiscard, bmopReject
TPdfBatchMergeResourcePolicybmrpSourceScoped, bmrpChunked
TPdfBatchMergeStatusbmrsCompleted, bmrsCompletedWithErrors, bmrsCancelled, bmrsFailed
TPdfPagePlanOperationppoDelete, ppoMove, ppoInsert
TPdfPagePlanDecisionppdAllow, ppdReview, ppdReject
TPdfValidationPredicateKindpvpkIssueAbsent, pvpkStandardPass, pvpkCustom
TPdfValidationRunRegistro: resultados de regras com contagens de aprovadas / reprovadas / ignoradas / erro, objetos visitados, bytes de evidência, pico de memória reservada, milissegundos decorridos e IsComplete / IsCompliant
TPdfBatchValidationStatuspbvsComplete, pbvsPartial, pbvsCancelled, pbvsFailed
TPdfInkGestureRegistro: array Points que descreve um traço de tinta
TPdfFormFillInfoRegistro empacotado que pareia o bloco de callbacks FPDF_FORMFILLINFO do PDFium com seu TPdf proprietário; usado internamente pela ponte de preenchimento de formulários
TPdfBatchMergeIssueRegistro: SourceIndex, FileName, MessageText para uma origem que falhou ou foi ignorada
TPdfBatchMergeProgressRegistro: Stage, índice e contagem de origens, nome do arquivo e contagens de origens / páginas / chamadas nativas importadas
TPdfBatchMergeProgressStagebmpsStarted, bmpsOpeningSource, bmpsImportingPages, bmpsSourceCompleted, bmpsSourceFailed, bmpsRollingBack, bmpsCompleted, bmpsCancelled, bmpsFailed
TPdfBatchValidationItemRegistro: nome do arquivo, Status, relatório de preflight, execução de validação, mensagem de erro e milissegundos decorridos
TPdfBatchValidationItemStatuspbvisPending, pbvisPass, pbvisFail, pbvisCancelled, pbvisError
TPdfValidationRuleResultRegistro: id da regra, perfil, cláusula, categoria, severidade, Status, evidência, dica de correção e milissegundos decorridos
TPdfValidationRuleStatuspvrrsPass, pvrrsFail, pvrrsSkipped, pvrrsError
TPdfValidationRunStatuspvrsComplete, pvrsFastFailed, pvrsBudgetExceeded, pvrsCancelled, pvrsError
TPdfARepairStepRegistro: ação de reparo ordenada com categoria, código de problema, evidência, dependência, Safety e sinalizadores para reescrita completa, invalidação de assinatura e estado bloqueado
TPdfARepairCategoryparcSecurity, parcFonts, parcColour, parcAttachments, parcStructure, parcMetadata, parcOther
TPdfARepairSafetyparsAutomatic, parsReviewRequired, parsManual
TPdfXProductionIssueRegistro: Kind do problema, severidade, número da página, índice do objeto e evidências das verificações de produção PDF/X
TPdfXProductionIssueKindpxpikOutputIntent, pxpikPageBox, pxpikFont, pxpikColourant, pxpikTransparency, pxpikOverprint, pxpikSeparation, pxpikImageResolution
TPdfXProductionPageRegistro: presença de boxes por página, contagens de objetos, sinalizador de transparência e DPI efetivo mínimo
TPdfRPageFactsRegistro: fatos de página PDF/R — geometria de media e de imagem, contagens de objetos, tamanho em pixels, resolução, profundidade de bits, espaço de cor e filtros
TPdfPagePlanImpactppiBookmarks, ppiNamedDestinations, ppiPageLabels, ppiFormFields, ppiStructureTree, ppiSignatures, ppiImportedFeaturesUnknown

Tipos de renderização paralela e saída de impressão

TipoValores
TPdfParallelRenderOptionsRegistro: DPI, worker, orçamentos de pixels por página e de saída total, rotação, opções nativas de renderização e cor de fundo
TPdfBandedImageFormatpbifCustom, pbifPng, pbifTiff
TPdfBandedImageStreamOptionsRegistro: formato, altura da faixa, nível de compressão PNG e bytes máximos de saída codificada; inicialize com Default
TPdfBandedImageReportRegistro: formato, dimensões, contagens de faixas renderizadas e codificadas, linhas codificadas, pico de bytes de faixa, bytes de saída e estado de conclusão
TPdfBandedImageEncoderContrato de codec abstrato do chamador com BeginImage, WriteBand sequencial, EndImage e telemetria opcional de bytes
TPdfParallelModuleIdentityRecord com o FileName privado do módulo, o InitializationAddress nativo e o resultado Unloaded de liberação de handle; a plataforma pode reter seu mapeamento
TPdfParallelModuleIdentitiesArray de records TPdfParallelModuleIdentity retido para os workers isolados da operação de renderização
TPdfParallelRenderReportRegistro: resultados ordenados, contagens de workers e de status, bytes de saída retidos, tempo decorrido, tamanho da origem, pico de memória da origem, backend de armazenamento, tipo de suporte compartilhado e diagnóstico de identidade Modules
TPdfParallelPageResultRegistro: número da página, tamanho em pixels e Stride, PixelFormat, Pixels de cima para baixo, Status, mensagem de erro e milissegundos decorridos
TPdfParallelPixelFormatpppfBgra, pppfRgba
TPdfParallelRenderStatuspprsPending, pprsSucceeded, pprsCancelled, pprsFailed
TPdfParallelSourceBackingKindppsbNone, ppsbSharedMemory, ppsbMemoryMappedFile, ppsbRandomAccessStore
TPdfSpotPlateInfoRegistro: Index baseado em 0 e Name da separação, relatados por SpotPlates

Unidade auxiliar FPdfAsync

TipoDescrição
IPdfCancellationTokenToken de cancelamento somente leitura com IsCancelled, ThrowIfCancelled e RegisterCallback
IPdfCancellationTokenSourceFonte de cancelamento do lado do proprietário que expõe Token e Cancel
TPdfCancellationTokenSourceImplementação padrão; use TPdfCancellationTokenSource.New
EPdfOperationCancelledExceção gerada por ThrowIfCancelled após o cancelamento
TPdfFutureStatuspfsSuccess, pfsCancelled, pfsFailure
TPdfFutureResult<T>Envelope de resultado com Value, Status, ErrorMessage e os auxiliares IsSuccess / IsCancelled / IsFailure
TPdfFuture<T>.RunAuxiliar de worker em segundo plano fire-and-forget que enfileira a resposta de volta à thread principal
PdfNoCancellationTokenToken compartilhado que nunca é cancelado

Unidade auxiliar FPdfMeasure

MembroDescrição
TPdf.MeasureTextRetorna a largura e a altura do texto em unidades de usuário do PDF para a fonte e o tamanho selecionados
TPdf.MeasureTextWidthRetorna apenas a largura do texto em unidades de usuário do PDF
TPdf.WrapTextPreserva quebras de linha explícitas e, opcionalmente, divide tokens superdimensionados nos limites de escalares Unicode

Unidade auxiliar FPdfMatrix

MembroDescrição
TPdfMatrix.CreateCria uma matriz identidade, uma matriz explícita de seis valores ou uma cópia de FS_MATRIX
NewTranslation / NewScale / NewRotation / NewSkewCria transformações comuns sem uma etapa separada de mutação
NewRectMapping / TryCreateRectMappingCria mapeamentos stretch, contain ou cover entre retângulos normalizados
ResetRedefine para a identidade
SetElements / Assign / CloneSubstitui, copia ou duplica de forma independente o estado da matriz
Determinant / IsFinite / IsIdentity / IsInvertibleInspeciona a validade numérica e a invertibilidade sem alterar a matriz
IsTranslationOnly / IsAxisAligned / NearlyEqualsClassifica a forma da transformação e compara valores usando uma tolerância
GetTranslation / SetTranslation / ClearTranslationLê ou atualiza a translação de forma independente do componente linear
TryDecomposeExtrai translação, escala com sinal, rotação horária, cisalhamento, determinante e estado de reflexão
MultiplyMultiplica à direita por outro TPdfMatrix ou por seis valores FS_MATRIX
PreMultiply / PreTranslate / PreScale / PreRotate / PreSkewAntepõe operações no espaço local de entrada antes da transformação atual
Translate / Scale / Rotate / SkewCompõe transformações comuns no espaço do PDF
HorizontalFlip / VerticalFlip / CentralFlipCompõe inversões de eixo
RotateAt / ScaleAt / SkewAt / *FlipAtAcrescenta operações em torno de um pivô que permanece fixo
MapRectToRectAcrescenta um mapeamento de retângulos stretch, contain ou cover
Invert / TryInvert / TryGetInverse / InverseCopyInverte de forma mutável ou obtém uma inversa sem mutação com tratamento explícito de matriz singular
TransformPoint / TransformVector / InverseTransformPointMapeia posições, vetores de direção ou posições inversas sem objetos de matriz temporários
TransformQuad / TransformRectMapeia quadriláteros do PDF ou limites de retângulos normalizados por meio da transformação
TransformPoints / TransformRectsMapeia arrays dinâmicos com uma única alocação de resultado ou usa variantes in-place sem alocação de saída
TryTransformBounds / TransformBoundsAcumula os limites transformados dos pontos em uma passada sem um array intermediário
a, b, c, d, e, fPropriedades somente leitura dos elementos da matriz
HandleValor FS_MATRIX bruto para APIs do PDFium

Classes auxiliares do PDFium

ClasseDescrição
TPdfCacheGovernor / TPdfCacheParticipantCoordena a memória retida por meio de um único orçamento global de bytes LRU seguro para threads
TPdfStreamAdapterEncapsula um TStream Pascal posicionável como FPDF_FILEACCESS para carregamento personalizado de documentos
TPdfXObjectTorna-se proprietário de um FPDF_XOBJECT reutilizável criado a partir de outra página PDF
TTileKey / TPdfTileCacheIndexa tiles renderizados por revisão e mantém um cache de bitmaps LRU limitado
Supporting declarationsAliases públicos, registros de callback, limites de segurança, constantes de realce e declarações opcionais de ABI de saída de impressão

Funções globais

FunçãoDescrição
BuildToUnicodeCMap(const Glyphs: array of Word; const Text: WString): AnsiStringConstrói um CMap ToUnicode reutilizável para texto CID Type 2
NormalizePageViewRect(...): BooleanOrdena e recorta dois cantos no espaço da página para os limites visíveis da página
AttachmentDescriptionFeaturesAvailable: BooleanInforma se as exportações de descrição de anexo estão disponíveis
AttachmentRelationshipFeaturesAvailable: BooleanInforma se a DLL carregada exporta o leitor de /AFRelationship
BezierControlPointFeaturesAvailable: BooleanInforma se a DLL carregada expõe a leitura nativa exata de pontos de controle de curvas cúbicas de Bézier
BookmarkStyleFeaturesAvailable: BooleanInforma se a DLL carregada exporta o leitor de estilo de texto de bookmark
StrokePatternRenderingFeaturesAvailable: BooleanInforma se a DLL carregada consegue rasterizar o tiling pattern de traço de um objeto de caminho
ReadPdfVersionInfo(Source: TStream; out Info: TPdfVersionInfo; out ErrorText: string): BooleanLê o cabeçalho, a substituição do catálogo, a versão efetiva do núcleo e o nível da extensão de desenvolvedor da Adobe sem reduzi-los a um único valor
AppendPdfSparseUpdate(Source, Dest: TStream; const Revision: TPdfSparseRevisionInfo; const Objects: TPdfSparseUpdateObjects; const TrailerExtra: AnsiString; const BeforeStartXref: AnsiString = ''): BooleanTransmite uma revisão esparsa sobre um PDF salvo: bytes de origem verbatim, corpos de objeto fornecidos pelo chamador e um único bloco incremental de xref/trailer encadeado por meio de /Prev
Loaded: BooleanRetorna True se a biblioteca PDFium selecionada está carregada
LoadLibraryCarrega manualmente a biblioteca PDFium
UnloadLibraryDescarrega a biblioteca PDFium
ConfigureSystemFontCacheGovernor(Governor: TPdfCacheGovernor)Coloca os resultados retidos de fontes do sistema de todo o processo sob um orçamento compartilhado de bytes de propriedade do chamador
ConfigureSystemFontProvider(const Provider: IPdfSystemFontProvider; const Policy: TPdfSystemFontPolicy)Instala um mapeador nativo de fontes do sistema controlado pelo aplicativo antes de o PDFium ser carregado
ClearSystemFontProviderRemove o mapeador configurado depois que o PDFium é descarregado
GetSystemFontProviderStatistics: TPdfSystemFontStatisticsRetorna contadores de mapeamento, cache, fallback, callback e handles ativos
DecodeDate(const Value: string; out DateTime: TDateTime; out DateTimeOffset: Integer): BooleanAnalisa uma string de data PDF em TDateTime e deslocamento UTC
SetPdfPrintMode(PrintMode: TPdfPrintMode): BooleanSeleciona o modo de saída de impressão do Windows do PDFium para as renderizações de impressão seguintes
SetPdfPrintPaperHandlingDevMode(var DevMode: TDeviceMode; PrintPaperHandling: TPrintPaperHandling): BooleanMapeia uma dica de duplex das preferências do visualizador PDF para o DEVMODE.dmDuplex do Windows
V8FeaturesAvailable: BooleanRetorna True quando a DLL carregada expõe as exportações auxiliares de V8 do PDFium
XfaBStrHelpersAvailable: BooleanRetorna True quando a DLL carregada expõe as exportações auxiliares FPDF_BSTR de XFA
XfaFeaturesAvailable: BooleanRetorna True quando o build do PDFium carregado expõe as exportações do recurso XFA
GetRecommendedV8Flags: stringRetorna as flags de linha de comando de V8 recomendadas pelo PDFium, ou uma string vazia quando a DLL carregada não as expõe
PdfBufferLooksXfa(Data: PByte; Size: Integer): BooleanExamina um buffer de bytes PDF bruto em busca de marcadores XFA sem carregar pdfium.dll
PdfFileLooksXfa(const FileName: string): BooleanExamina um arquivo PDF em disco em busca de marcadores XFA sem carregar pdfium.dll
ValidatePdfUaStructureElements(const Elements: TPdfStructureElements; Conformance: TPdfUaConformance = puc1): TPdfUaValidationIssuesValida dados de estrutura achatados com a semântica de títulos do PDF/UA-1 ou PDF/UA-2 sem carregar pdfium.dll
IsPdfUaLanguageTagValid, ResolvePdfUaEffectiveLanguageValida uma etiqueta de idioma e resolve a precedência de idioma por marked-content, ancestral de estrutura mais próximo e, por fim, catálogo
ClassifyPdfUaNamespace(const NamespaceUri: WString): TPdfUaNamespaceKindClassifica namespaces de estrutura ausentes, PDF 1.7, PDF 2.0, MathML e personalizados
ValidatePdfUa2StructureElements(const Elements: TPdfStructureElements): TPdfUaValidationIssuesExecuta todas as regras semânticas de estrutura do PDF/UA-2 com reconhecimento de namespace
PdfUa2StructureHasIssue(const Elements: TPdfStructureElements; Issue: TPdfUaValidationIssue): BooleanConsulta de problema único segura para o C++Builder que evita retornar um set Pascal por valor
ValidatePdfUa2NamespaceSemantics, ValidatePdfUa2Containment, ValidatePdfUa2TableGridExecutam validação focada de namespace, de relação pai-filho e de grade de tabela com limites
ValidatePdfUa2AnnotationSemantics, ValidatePdfUa2FormulaSemantics, ValidatePdfUa2AssociatedFileSemantics, ValidatePdfUa2DocumentSemanticsExecutam validação focada de anotação/formulário, Formula/MathML, propriedade e ordem de leitura de arquivos associados e documento/lista/TOC/caption
ValidatePdfUaPageContentTagging(const Objects: TPdfPageContentMarkInfos; const Elements: TPdfStructureElements): TPdfUaValidationIssuesValida a marcação de conteúdo real e impede que objetos Artifact sejam reivindicados pela árvore de estrutura
ValidatePdfUaRoleMapUsage(const Elements: TPdfStructureElements; const RoleMapKeys, RoleMapVals: TPdfUaNameArray): TPdfUaValidationIssuesValida a resolução dos pares chave/valor de RoleMap para os tipos padrão da ISO 32000-1
ClassifyStructType(const TypeName: WString; out HeadingLevel: Integer): TPdfContentFragmentKindClassifica um nome de tipo de elemento de estrutura em um TPdfContentFragmentKind e um nível de título opcional
FormFieldTabOrderForPage(FormHandle: FPDF_FORMHANDLE; Page: FPDF_PAGE): TPdfIntegerArrayRetorna os índices das anotações de widget da página na ordem de tabulação do formulário
FocusedFormFieldTextForPage(FormHandle: FPDF_FORMHANDLE; Page: FPDF_PAGE): WStringRetorna o texto do widget com foco para um handle de formulário e página
NormalizePageViewRect(X1, Y1, X2, Y2, PageWidth, PageHeight: Double; out Left, Top, Right, Bottom: Double): BooleanNormaliza dois cantos mapeados no espaço da página para o retângulo visível limitado à página; False quando nada da página está visível
NextFormFieldIndexForPage(FormHandle: FPDF_FORMHANDLE; Page: FPDF_PAGE; CurrentIndex: Integer; GoForward: Boolean): IntegerEncontra o índice da anotação de widget seguinte ou anterior na ordem de tabulação da página
ClearFocusedFormField(FormHandle: FPDF_FORMHANDLE): BooleanLimpa o widget de formulário com foco atual para um handle de formulário do PDFium
ComputeSpreadPages(DisplayMode: TPdfDisplayMode; PageNumber, PageCount: Integer; out LeftPageNo, RightPageNo: Integer)Calcula os números de página esquerda e direita para os modos de exibição de duas páginas
BuildReadingUnits(const Fragments: TPdfContentFragments): TPdfReadingUnitsConverte fragmentos de conteúdo legível em unidades de leitura por sentença
NextReadingUnitOfKind(const Units: TPdfReadingUnits; CurrentIndex: Integer; Kind: TPdfContentFragmentKind; GoForward: Boolean): IntegerEncontra a unidade de leitura seguinte ou anterior do tipo semântico solicitado
BuildWordBoxes(const PageText: WString): TPdfWordBoxesDivide o texto da página em registros TPdfWordBox
WordBoxIndexAtCharIndex(const Words: TPdfWordBoxes; CharIndex: Integer): IntegerMapeia um índice de caractere da página para um índice de caixa de palavra
SpokenTextAppend(var Spoken: TPdfSpokenText; const SpokenPart: WString; Page, StartIndex: Integer; SourceCount: Integer = -1)Anexa uma sequência mapeada de texto falado a um bloco de fala
BuildSpokenTextFromWords(const Words: TPdfWordBoxes; FirstWord, LastWord: Integer): TPdfSpokenTextConstrói um bloco de texto falado a partir de um intervalo de caixas de palavra
SpokenToPageChar(const Spoken: TPdfSpokenText; SpokenOffset: Integer; out Page, CharIndex: Integer): BooleanTraduz um deslocamento de texto falado de volta a um índice de caractere da página
EstimateSpokenWordIndex(const Words: TPdfWordBoxes; ElapsedMs: Cardinal; WordsPerMinute: Integer): IntegerEstima o índice da palavra falada quando o motor de fala não informa a posição da palavra
FPDF_RenderPageSkiaBinding de baixo nível do PDFium para renderizar conteúdo de página em um SkCanvas externo
FPDF_FFLDrawSkiaBinding de baixo nível do PDFium para desenhar campos de formulário e anotações popup em um SkCanvas externo
PointsToInches(Points: Double): DoubleConverte pontos PDF em polegadas
PointsToPixels(Points, PixelsPerInch: Double): DoubleConverte pontos PDF em pixels
PixelsToInches(Pixels, PixelsPerInch: Double): DoubleConverte pixels em polegadas
PixelsToPoints(Pixels, PixelsPerInch: Double): DoubleConverte pixels em pontos PDF
GetApplicationPath: stringRetorna o diretório do executável usado como primeira raiz de busca da DLL do PDFium
IsWin64: BooleanRetorna True quando o processo atual tem como alvo o Win64
BuildDllName(UseV8: Boolean): stringRetorna pdfium.dll ou pdfium.v8.dll para o modo V8 solicitado
FindDllInPath(const DllName, SearchPath: string): stringLocaliza uma DLL nomeada do PDFium em um diretório
FindDllInDllsTree(const DllName, StartPath, SubDir: string): stringPesquisa as pastas DLLs\Win32 ou DLLs\Win64 abaixo de um caminho inicial
LoadPDFiumDll: stringRespeita um caminho explícito de LibraryName em qualquer modo de engine; caso contrário, resolve o runtime usando a política de busca do componente
ConfigurePdfLibrary(const Configuration: TPdfLibraryConfiguration)Aplica a seleção de DLL, a configuração de V8 e de sandbox antes do primeiro carregamento da biblioteca
GetPdfLibraryConfiguration: TPdfLibraryConfigurationRetorna uma cópia da configuração efetiva atual da biblioteca
PdfLibraryConfigurationSealed: BooleanRetorna True depois que a biblioteca foi carregada e a configuração não pode mais mudar
PdfNativeRendererType(Preference: TPdfRendererPreference; SkiaBuild: Boolean): FPDF_RENDERER_TYPERetorna o renderer nativo que uma preferência seleciona para um build do PDFium apenas AGG ou com Skia habilitado, mantendo o padrão do build para prpDefault
PdfLibraryConfigurationSupportError(const Configuration: TPdfLibraryConfiguration; SkiaBuild, FontationsBuild: Boolean): stringRetorna por que um renderer ou backend de fontes não pode ser usado com um build do PDFium; LoadLibrary aplica a mesma checagem e levanta EPdfError em vez de deixar a inicialização nativa parar o processo
PdfDefaultTtfMapCount: NativeUIntRetorna o número de entradas no mapa nativo de substituição de fontes TrueType padrão
TryGetPdfDefaultTtfMapEntry(Index: NativeUInt; out Entry: TPdfDefaultTtfMapEntry): BooleanCopia uma entrada do mapa de substituição de fontes padrão pelo índice
IsXfaFormField(FieldType: Integer): Boolean (FPdfXfa)Testa se um código de tipo de campo de formulário pertence à faixa de campos XFA

Variáveis globais

VariávelTipoPadrãoDescrição
LibraryNamestring'pdfium.dll'Um caminho explícito seleciona o runtime em qualquer modo de engine; um nome simples seleciona o runtime padrão quando EnableV8Engine é False
EnableV8EngineBooleanFalseDefina como True antes de carregar para selecionar pdfium.v8.dll na pasta DLLs Win32 ou Win64 correspondente

Padrões de uso comuns

Implementação de visualizador de 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;

Criar PDF com compressão

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;

Extração de texto

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;

Processamento de campos de formulário

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;

Achatar um formulário preenchido

// Fixa os valores do formulário em conteúdo de página permanente (não editável)
Pdf.FileName := 'form.pdf';
Pdf.Active := True;
Pdf.FormField[0] := 'John Smith';
Pdf.FormField[1] := 'Yes';
Pdf.GenerateFormAppearances;          // etapa 1: atualiza /AP a partir de /V
Pdf.FlattenAllPages(FLAT_NORMALDISPLAY); // etapa 2: achata todas as páginas
Pdf.SaveAs('flattened.pdf');           // etapa 3: salva
Pdf.Active := False;