O Que Há de Novo

v26.9

  • Classe FormFlattener removida
  • Classe GetFieldNamesOptions foi remodelada
  • Outras correções

v26.8

  • Classe SignOptions foi redesenhada
  • Classe Signature removida
  • Classe FormExporter removida
  • Classe FileData aprimorada
  • Outras correções

v26.7

  • Classe ImageExtractor Removida
  • Classe Timestamp Removida
  • Outras correções

v26.6

  • PdfSecurity: Adicionar capacidade de assinar PDF com um Timestamp sem PFX
  • Classe TextExtractor removida
  • Mais informações e dicas para novas entidades
  • Informações sobre Sanitização adicionadas à Docs e Products.
  • Exceção corrigida na conversão de HTML para PDF
  • Outras correções

v26.5

  • Novo Recurso Sanitizar para Segurança de PDF
  • Nova Classe OptionsWithInputAndOutput
  • Desempenho Melhorado na Conversão de PDF para JPEG
  • Página de produto atualizada "FAQs" para este site
  • Outras correções

v26.4

  • Exceção corrigida em PdfExtractor.Extract
  • Desempenho aprimorado na renderização de PDF para TIFF
  • Página de produto criada para "PDF Converter" neste site
  • Outras correções

v26.3

  • Renomeado IDataSource para IData
  • Renomeado FileDataSource para FileData
  • Renomeado StreamDataSource para StreamData
  • Renomeado DirectoryDataSource para DirectoryData
  • Renomeada propriedade Delimiter para Feature ExtractFormDataToDsvOptions
  • Página de produto criada para "PDF Manager" neste site
  • Página de produto criada para "PDF Form" neste site
  • Problemas corrigidos

v26.2

  • Recurso Aprimorado: Extrair Propriedades para o PDF Extractor
  • Recurso Aprimorado: Extrair Texto para o PDF Extractor
  • Bugs Corrigidos

v26.1

  • Novo Recurso Extrair Propriedades para o Extrator de PDF
  • Melhorias
  • Bugs Corrigidos

v25.12

  • Novo plugin PDF Form
  • Alterações no PDF Extractor
  • Melhorias
  • Bugs Corrigidos

v25.11

  • Novo plugin PDF Converter
  • Novo plugin PDF Security
  • Plugin PdfChatGpt integrado ao PdfManager
  • Novas opções disponíveis para trabalhar com ChatGpt
  • Melhorias
  • Bugs Corrigidos

v25.10

  • Novo plugin PDF Extractor
  • Novo plugin PDF Manager
  • Usabilidade aprimorada do TableGenerator
  • Usabilidade aprimorada do PdfChatGpt
  • Bugs Corrigidos

v25.9

  • Usabilidade aprimorada do DocConverter e modo extra adicionado
  • Usabilidade aprimorada do PdfAConverter
  • Usabilidade aprimorada do Timestamp
  • Documentação atualizada
  • Bugs corrigidos

v25.8

  • Usabilidade aprimorada do JpegConverter
  • Usabilidade aprimorada do PngConverter
  • Usabilidade aprimorada do XlsConverter
  • Usabilidade aprimorada do Signature
  • Construtores modificados de PdfToHtmlOptions
  • Marca de avaliação modificada do TextExtractor
  • Documentação atualizada
  • Bugs corrigidos

v25.7

  • Usabilidade aprimorada do Text Extractor
  • Usabilidade aprimorada do Html Converter
  • Usabilidade aprimorada do Image Extractor

v25.6

  • Usabilidade aprimorada do Tiff Converter

v25.5

  • Adicionado novo Plugin: Form Exporter
  • Usabilidade aprimorada do Security
  • Correções Menores

v25.4

  • Usabilidade aprimorada do Optimizer
  • Usabilidade aprimorada do Plugin Splitter
  • Usabilidade aprimorada do Plugin Merger

v25.3

  • Adicionado novo Plugin: Form Flattener

v25.2

  • Plugin adicionado: Gerador de Sumário (TOC)

v25.1

  • Plug-in Melhorado: ImageExtractor

v24.12

  • Plugin Adicionado: Conversor de PDF para PNG
  • Plugin Adicionado: Conversor de PDF para TIFF
  • Plugin Adicionado: Gerador de Tabelas PDF
  • Classe PdfDoc Renomeada para DocConverter

v24.11

  • Novo Plugin Adicionado: Conversor de PDF para JPEG
  • Classe `DirectoryDataSource` Adicionada
  • Classe `PdfToJpegOptions` Adicionada

v24.10

  • Novo Plugin Adicionado: Conversor PDF/A

v24.9

  • Lançado
28 de dez. de 2024

Subsecções de O Que Há de Novo

v26.9

Classe FormFlattener removida

  • A implementação anterior de plugins está sendo gradualmente descontinuada. A funcionalidade desta classe foi substituída pela classe PdfForm.
  • Classe FormFlattener: removida, use PdfForm.

Exemplo de Uso:

O exemplo demonstra como achatar campos em um arquivo PDF.

// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Flatten(options);

Exemplo de Uso:

O exemplo demonstra como achatar campos em um arquivo PDF e pular o primeiro campo.

// Get Fields Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));
// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Skip 1 field.
options.SkipFields.Add(fieldNames[0]);
// Perform the process
PdfForm.Flatten(options);

Classe GetFieldNamesOptions foi remodelada

  • Herança da classe OptionsWithInput.
  • Propriedade Input adicionada.

Exemplo de Uso:

O exemplo demonstra como obter nomes de campos a partir de um arquivo PDF.

// Get Field Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));

Exemplo de Uso:

O exemplo demonstra como obter nomes de campos a partir de um fluxo PDF.

// Prepare input stream
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
// Get Field Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions(inputStream));

Outras correções

📄 PDF para DOC

  • Corrigida a conversão de PDF para DOC que lançava OutOfMemoryException.
  • Corrigida a conversão de PDF para HTML que apresentava um logotipo de rodapé quebrado.

🖼️ PDF para JPEG

  • Corrigida a conversão de PDF para JPEG que lançava OutOfMemoryException.
  • Corrigida a conversão de PDF para PNG que lançava InvalidOperationException.
  • Corrigida a saída de PDF para TIFF que apresentava informações ausentes.

📑 PDF para PDF/A

  • Corrigida a saída de PDF para PDF/A que não era válida para PDF/A‑1b ou PDF/A‑3b.
  • Corrigida a conversão para PDF/A‑2b que lançava InvalidCastException.
7 de set. de 2026

v26.8

Classe SignOptions foi redesenhada

  • Agora está mais fácil de usar.
  • Herda da classe OptionsWithInputAndOutput.
  • As propriedades Inputs e Outputs foram alteradas para Input e Output. Agora há apenas 1 entrada e 1 saída.
  • Se a saída for um arquivo, seu stream será fechado automaticamente; se for um Stream, permanecerá aberto para uso posterior.
  • Métodos AddInput e AddOutput removidos.
  • Adicionados vários construtores mais convenientes:
    • SignOptions(IData inputData, IData outputData, IData pfxData, string password)
    • SignOptions(string inputFile, string outputFile, string pfxFile, string pfxPassword)
    • SignOptions(Stream inputStream, Stream outputStream, Stream pfxStream, string pfxPassword)
  • Propriedades modificáveis adicionadas:
    • Stream Pfx
    • string PfxPassword
    • IData Input
    • IData Output

Exemplo de uso:

Exemplo de trabalho com SignOptions.

using var pfxStream = File.OpenRead(@"path_to_your_pfx_file.pfx");
var options = new SignOptions(pfxStream, "password_of_your_pfx_file");
// Defina os caminhos de arquivo de entrada e saída
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");

Exemplo de uso:

O exemplo demonstra como assinar um arquivo PDF da forma mais curta possível.

PdfSecurity.Sign(new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file"));

Exemplo de uso:

O exemplo demonstra como assinar um documento PDF usando streams.

// Preparar streams
using var pdfStreamInput = File.OpenRead(@"path_to_your_pdf_file.pdf");
using var pfxStreamInput = File.OpenRead(@"path_to_your_pfx_file.pfx");
using var pdfStreamOutput = new MemoryStream();
// Criar objeto SignOptions para definir as instruções
var options = new SignOptions(pdfStreamInput, pdfStreamOutput, pfxStreamInput, "password_of_your_pfx_file");
// Executar o processo
PdfSecurity.Sign(options);

Classe Signature removida

  • A implementação anterior de plugins está sendo gradualmente descontinuada. A funcionalidade desta classe foi substituída pela classe PdfSecurity.
  • Class Signature: removida, use PdfSecurity.

Exemplo de uso:

O exemplo demonstra como assinar um documento PDF.

// Criar objeto SignOptions para definir as instruções
var options = new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Executar o processo
PdfSecurity.Sign(options);

Classe FormExporter removida

  • A implementação anterior de plugins está sendo gradualmente descontinuada. A funcionalidade desta classe foi substituída pelas classes PdfExtractor e PdfForm.
  • Class FormExporter: removida, use PdfExtractor ou PdfForm.

Exemplo de uso:

O exemplo demonstra como Exportar valores de formulário para um arquivo CSV com PdfExtractor.

// Criar objeto ExtractFormDataToDsvOptions para definir as instruções
var options = new ExtractFormDataToDsvOptions(',', true);
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_result_csv_file.csv"));
// Executar o processo
PdfExtractor.Extract(options);

Exemplo de uso:

O exemplo demonstra como Exportar valores de formulário para um arquivo TSV e definir propriedades com PdfForm.

// Criar objeto ExtractFormDataToDsvOptions para definir as instruções
var options = new ExtractFormDataToDsvOptions();
//Definir delimitador
options.Delimiter = '\t';
//Adicionar nomes de campo ao resultado
options.AddFieldName = true;
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));
// Executar o processo
PdfForm.Extract(options);

Classe FileData aprimorada

  • Método ToString() sobrescrito.

Outras correções

📄 PDF para DOC

  • Corrigida conversão de PDF para DOC que consumia tempo excessivo

🌐 PDF para HTML/HTML para PDF

  • Corrigida conversão de PDF para HTML que produzia imagens transparentes
  • Corrigida conversão de HTML para PDF onde o conteúdo se sobrepunha
  • Corrigida conversão de HTML para PDF onde a largura da tabela era ignorada

🖼️ PDF para PNG/TIFF

  • Corrigida conversão de PDF para PNG que consumia memória excessiva
  • Corrigida conversão de PDF para PNG que não preservava fontes incorporadas
  • Corrigada conversão de PDF para TIFF que lançava exceção

📑 PDF para PDF/A

  • Corrigida conversão de PDF para PDF/A que perdia cores do documento
  • Corrigida conversão de PDF para PDF/A que sobrepunha texto na saída
  • Corrigido método Validate() de PDF/A que retornava resultados incorretos
  • Corrigida validação de PDF/A que produzia resultados incorretos

📂 Outras operações

  • Corrigido System.FormatException lançado ao verificar a assinatura de um PDF
  • Corrigida fusão de documentos que lançava exceção
13 de ago. de 2026

v26.7

Classe ImageExtractor Removida

  • A implementação anterior de plugins está sendo gradualmente descontinuada. A funcionalidade desta classe foi substituída pela Classe PdfExtractor.
  • Classe ImageExtractor: removida, use PdfExtractor.

Exemplo de Uso:

O exemplo demonstra como extrair imagens de um documento PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryData("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Classe Timestamp Removida

  • A funcionalidade desta classe foi substituída pela Classe PdfSecurity.
  • Classe Timestamp: removida, use PdfSecurity.
  • Classe AddTimestampOptions: removida, use SignOptions e TimestampOptions.

Exemplo de Uso:

O exemplo demonstra como assinar um documento PDF com Timestamp.

// Create SignOptions object to set Timestamp
var options = new SignOptions(new TimestampOptions("server_url"));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Outras correções

🖥️ HTML para PDF

  • Corrigida a conversão de HTML para PDF onde ocorria posicionamento de imagens e sobrescrita de texto
  • Corrigida a conversão de HTML para PDF onde o conteúdo da página não se ajustava corretamente
  • Corrigido problema de exibição de uma faixa preta no PDF gerado

📑 PDF para PDF/A

  • Corrigida exceção lançada pela API de PDF para PDF/A
  • Corrigida conversão de PDF para PDF/A que produzia saída com formatação incorreta
  • Corrigido problema de memória na conversão de PDF para PDF/A
  • Corrigido problema de conversão para PDF/A-3a

⚙️ Restante

  • Corrigida a falta de conteúdo de texto ao converter PDF para PNG e HTML
  • Corrigido problema onde alguns campos ficavam em branco após o flattening
  • Corrigido problema onde o documento PDF exibia erro após o flattening
  • Corrigido problema onde a otimização do PDF afetava a formatação do conteúdo
7 de set. de 2026

v26.6

PdfSecurity: Adicionar capacidade de assinar PDF com um Timestamp sem PFX

  • Agora você pode adicionar um timestamp a um documento PDF sem especificar um arquivo PFX e uma senha.
  • Class SignOptions: possui construtor com Class TimestampOptions.

Exemplo de Uso:

O exemplo demonstra como assinar um documento PDF com Timestamp.

// Create SignOptions object to set Timestamp
var options = new SignOptions(new TimestampOptions("server_url"));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Classe TextExtractor removida

  • A implementação anterior de plugins está sendo gradualmente descontinuada. A funcionalidade desta classe foi substituída pela Class PdfExtractor.
  • Class TextExtractor: removida, use PdfExtractor.

Mais informações e dicas para novas entidades

  • Comentários XML adicionados para OptionsWithInputAndOutput e SanitizeOptions.
  • Informações sobre valores padrão adicionadas em SanitizeOptions.

Informações sobre Sanitização adicionadas à Docs e Products.

Exceção corrigida na conversão de HTML para PDF

Outras correções

📄 Geral / Sistema

  • Correção de mesclagem de documentos PDF corrompidos
  • Correção de processamento de arquivos corrompidos
  • Correção de System.StackOverflowException ao abrir arquivo PDF
  • Correção de travamento na extração de texto em arquivos PDF específicos

🌐 HTML → PDF

  • Correção de renderização incorreta de caracteres chineses ao converter HTML para PDF

📑 PDF → DOC

  • Correção de destaque de anotação que ainda obscurecia o texto na conversão PDF para DOC
  • Correção de renderização incorreta de imagens na conversão PDF para DOC
  • Correção de problema de desempenho na conversão PDF para DOC

📊 PDF → Excel

  • Correção de imagem de tabela ignorada na conversão PDF para Excel

🖼️ PDF → PNG

  • Correção de tempo excessivo de conversão de PDF para PNG

🛡️ PDF → PDF/A

  • Correção de perda de conformidade PDF A-1A e corrupção de formulário após salvar
  • Correção de problema de tempo de conversão para PDF/A
  • Correção de perda de semitransparência durante a conversão para PDF/A
  • Correção de sobreposição de texto na conversão para PDF/A
  • Correção de problema de renderização de texto na conversão para PDF/A
  • Correção de corrupção de documento na conversão para PDF/A3b
7 de set. de 2026

v26.5

Novo Recurso Sanitizar para Segurança de PDF

  • Sanitiza dados ocultos de um documento PDF, garantindo que informações sensíveis ou desnecessárias, como metadados, anexos, anotações, JavaScripts, formulários, camadas, índice de busca ou conteúdo privado, sejam removidos ou transformados.
  • Class PdfSecurity: adicionou o método Sanitize para sanitização de documentos PDF.
  • Class SanitizeOptions: representa as opções de configuração para sanitizar dados ocultos dentro de um documento para a classe PdfSecurity.
  • Property Input: obtém ou define os Dados de Entrada.
  • Property Output: obtém ou define os Dados de Saída.
  • Property ConvertPagesToImages: obtém ou define a opção de converter páginas em imagens.
  • Property ImageDpi: obtém ou define a opção de resolução das imagens das páginas durante a conversão de páginas para imagem.
  • Property RemoveAnnotations: obtém ou define um valor que indica se as anotações devem ser removidas do documento.
  • Property RemoveSearchIndexAndPrivateInfo: obtém ou define um valor que indica se o índice de busca e as informações privadas devem ser removidos do documento.
  • Property FlattenForms: obtém ou define um valor que indica se os formulários no documento devem ser achatados durante o processo de sanitização.
  • Property FlattenLayers: obtém ou define a opção de achatar as camadas no documento PDF.
  • Property RemoveJavaScriptsAndActions: obtém ou define um valor que indica se JavaScript e ações associadas devem ser removidos do documento.
  • Property RemoveMetadata: obtém ou define uma opção para remover metadados do documento.
  • Property RemoveAttachments: obtém ou define a opção de remover todos os arquivos anexados do documento.

Exemplo de Uso:

O exemplo demonstra como Sanitizar um documento PDF.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF de stream para stream.

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream = new MemoryStream();
// Create SanitizeOptions object to set input and output streams
var options = new SanitizeOptions(inputStream, outputStream);
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF de arquivo para stream.

// Prepare output stream
using var outputStream = new MemoryStream();
// Create SanitizeOptions object to set input file and output stream
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", outputStream);
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF de arquivo para stream configurando manualmente as propriedades de entrada e saída.

// Create SanitizeOptions object
var options = new SanitizeOptions();
//Set Input file
options.Input = new FileData("path_to_your_pdf_file.pdf");
//Set Output file
options.Output = new FileData("path_to_result_pdf_file.pdf");
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF sem remover Metadados.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveMetadata = false;
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF sem remover Anexos.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveAttachments = false;
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF com conversão de todas as páginas para imagens e definição do DPI resultante.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// Turn on conversion and set dpi
options.ConvertPagesToImages = true;
options.ImageDpi = 200;
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar PDF sem remover JavaScripts e Ações.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveJavaScriptsAndActions = false;
// Perform the process
PdfSecurity.Sanitize(options);

Exemplo de Uso:

O exemplo demonstra como Sanitizar um arquivo PDF da forma mais curta possível.

PdfSecurity.Sanitize(new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf"));

Nova Classe OptionsWithInputAndOutput

  • Representa opções base para operações com 1 Dado de Entrada e 1 Dado de Saída.
  • Based on OptionsWithInput.
  • Property Input: obtém ou define os Dados de Entrada.
  • Property Output: obtém ou define os Dados de Saída.

Desempenho Melhorado na Conversão de PDF para JPEG

Página de produto atualizada “FAQs” para este site

https://docs.documentize.com/faqs/

Outras correções

  • Corrigido problema de velocidade na conversão de HTML grande para PDF
  • Corrigido PDF para HTML: ocorre OutOfMemoryException
  • Corrigido PDF para PDFA: conteúdo da página é cortado
  • Corrigido PDF para PDFA: problema de renderização de imagens transparentes
  • Corrigido PDF para PDFA2b: anotações são perdidas na saída
  • Corrigido PDF para PDF/A - Imagem aparece invertida no arquivo de saída
  • Corrigido PDF para PDF/A - Arquivo resultante falha na conformidade PDF/A_2a
  • Corrigido PDF para PDF/A - Arquivo resultante falha na conformidade
  • Corrigido PDF para PDF/A - Assinatura fica preta após a conversão
  • Corrigido PDF para PDF/A - Justificação do texto muda inesperadamente
  • Corrigido PDF para PNG - Conversão leva tempo excessivo
  • Corrigido PDF para PNG - Imagem de saída está incorreta
  • Corrigido PDF para PNG - Imagem de saída apresenta faixas escuras
  • Corrigido Incapacidade de validar a conformidade PDF/A_1b do documento
7 de set. de 2026

v26.4

Exceção corrigida em PdfExtractor.Extract

  • Method PdfExtractor.Extract: não lança uma exceção se as datas de Criação e Modificação não forem encontradas no documento de entrada.
  • Property PdfProperties.Created: retorna null se o valor não for encontrado no documento de entrada. Tipo de dado alterado de “DateTime” para “DateTime?”.
  • Property PdfProperties.Modified: retorna null se o valor não for encontrado no documento de entrada. Tipo de dado alterado de “DateTime” para “DateTime?”.

Exemplo de uso:

O exemplo demonstra como extrair as propriedades Created e Modified

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);

var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

Desempenho aprimorado na renderização de PDF para TIFF

Página de produto criada para “PDF Converter” neste site

https://products.documentize.com/pdf-converter/

Outras correções

  • Corrigido HTML para PDF – O desempenho estava muito lento com textos HTML grandes
  • Corrigido HTML para PDF – Cabeçalho e rodapé não aparecem nas páginas subsequentes
  • Corrigido HTML para PDF – Tooltip falha ao ser renderizado corretamente
  • Corrigido PDF para DOC – A conversão disparava exceção OutOfMemory
  • Corrigido PDF para XLS – Colunas mescladas eram combinadas em uma única coluna
  • Corrigido PDF para HTML – Imagens de fundo estavam ausentes
  • Corrigido PDF para HTML – Hiperlinks locais não eram exibidos
  • Corrigido PDF para JPEG – A imagem de saída aparecia preta
  • Corrigido PDF para PDF/A – Problemas de formatação no arquivo resultante
  • Corrigido PDF para PDF/A_1b – O arquivo resultante não estava em conformidade
  • Corrigido PDF para PDF/A_3b – Problemas de formatação de texto no arquivo de saída
  • Corrigido PDF para PDF/A-2B – A conversão remove caracteres matemáticos ao usar fontes OpenType MATH
7 de set. de 2026

v26.3

Renomeado IDataSource para IData

  • Interface IDataSource: renomeada para IData.
  • As classes de opções agora são mais fáceis de usar.

Renomeado FileDataSource para FileData

  • Class FileDataSource: renomeada para FileData.
  • As classes de opções agora são mais fáceis de usar.
  • Comentários XML atualizados e corrigidos.
  • Todos os exemplos com Entrada e Saída atualizados.

Exemplo de Uso

O exemplo demonstra como usar FileData em Entrada e Saída.

// Create EncryptOptions object to set instructions
var options = new EncryptOptions("123456", "qwerty");
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Encrypt(options);

Renomeado StreamDataSource para StreamData

  • Class StreamDataSource: renomeada para StreamData.
  • As classes de opções agora são mais fáceis de usar.
  • Comentários XML atualizados e corrigidos.
  • Todos os exemplos com Entrada e Saída atualizados.

Exemplo de Uso

O exemplo demonstra como usar StreamData na Saída.

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output stream 
var outputStream = new MemoryStream();
options.AddOutput(new StreamData(outputStream));
options.CloseOutputStreams = false;
// Perform the process
PdfManager.AddTableOfContents(options);

Renomeado DirectoryDataSource para DirectoryData

  • Class DirectoryDataSource: renomeada para DirectoryData.
  • As classes de opções agora são mais fáceis de usar.
  • Todos os exemplos com Entrada e Saída atualizados.

Exemplo de Uso

O exemplo demonstra como Exportar valores de Formulário para arquivo TSV e definir Propriedades.

// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryData("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Renomeada propriedade Delimiter para Feature ExtractFormDataToDsvOptions

Um erro de digitação nas palavras foi corrigido.

Exemplo de Uso

O exemplo demonstra como Exportar valores de Formulário para arquivo TSV e definir Propriedades.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions();
// Set Delimiter
options.Delimiter = '\t';
// Add Field Names to result
options.AddFieldName = true;
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));
// Perform the process
PdfExtractor.Extract(options);

Página de produto criada para “PDF Manager” neste site

https://products.documentize.com/pdf-manager/

Página de produto criada para “PDF Form” neste site

https://products.documentize.com/pdf-form/

Problemas corrigidos

  • Corrigido problema em que Image to PDF causava exceção de Falta de Memória
  • Corrigido problema em que a geração de Sumário produzia resultados incorretos
  • Corrigido problema em que a propriedade OptimizeResources UnembedFonts disparava uma exceção
  • Corrigido problema em que PDF para HTML não aplicava fontes corretamente ao ser visualizado no Internet Explorer
  • Corrigido problema em que PDF para HTML produzia elementos deslocados e símbolos de formatação
  • Corrigido problema em que o processo de conversão de PDF para PDF/A travava
  • Corrigido problema em que PDF para PDF/A removia campos de formulário e seus valores
  • Corrigido problema em que a saída de PDF para PDF/A não estava em conformidade com PDF/A_1a
  • Corrigido problema em que a saída de PDF para PDF/A não estava em conformidade com PDF/A_2b
  • Corrigido problema em que a saída de PDF para PDF/A-3A falhava na verificação de conformidade Preflight
  • Corrigido problema em que a saída de PDF para PDF/A-3B falhava na verificação de conformidade Preflight
7 de set. de 2026

v26.2

Recurso Aprimorado: Extrair Propriedades para o PDF Extractor

  • Class Extractor: pode extrair novos metadados de documentos PDF.
  • Class PdfProperties: adicionadas propriedades: FileName, Created, Modified, Application, PdfProducer.

Exemplo de Uso:

O exemplo demonstra como extrair propriedades (FileName, Title, Author, Subject, Keywords, Created, Modified, Application, PDF Producer, Number of Pages) de um arquivo PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var filename = pdfProperties.FileName;
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;
var application = pdfProperties.Application;
var pdfProducer = pdfProperties.PdfProducer;
var numberOfPages = pdfProperties.NumberOfPages;

Exemplo de Uso:

O exemplo demonstra como extrair propriedades (Title, Author, Subject, Keywords, Created, Modified, Application, PDF Producer, Number of Pages) de um fluxo PDF.

// Create ExtractPropertiesOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;
var application = pdfProperties.Application;
var pdfProducer = pdfProperties.PdfProducer;
var numberOfPages = pdfProperties.NumberOfPages;

Recurso Aprimorado: Extrair Texto para o PDF Extractor

  • Trabalhar com extração de texto e parâmetros de extração agora é mais fácil: você pode especificar os dados de entrada e obter o resultado de forma mais simples que antes.
  • Class ExtractTextOptions: implementa IHaveInput. Use apenas 1 dado de entrada. Tipos de dados permitidos: File e Stream.
  • Method Extract(ExtractTextOptions options): retorna string com os resultados.
  • Object ResultContainer: removido de ExtractTextOptions.

Exemplo de Uso:

O exemplo demonstra como extrair o conteúdo de texto de um arquivo PDF.

// Create ExtractTextOptions object to set input file path
var options = new ExtractTextOptions("path_to_your_pdf_file.pdf");
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Exemplo de Uso:

O exemplo demonstra como extrair o conteúdo de texto de um fluxo PDF.

// Create ExtractTextOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractTextOptions(stream);
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Exemplo de Uso:

O exemplo demonstra como extrair o conteúdo de texto de um documento PDF com TextFormattingMode.

// Create ExtractTextOptions object to set input file path and TextFormattingMode
var options = new ExtractTextOptions("path_to_your_pdf_file.pdf", TextFormattingMode.Pure);
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Exemplo de Uso:

O exemplo demonstra como extrair texto de um arquivo PDF da forma mais curta possível.

// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(new ExtractTextOptions("path_to_your_pdf_file.pdf", TextFormattingMode.Pure));

Bugs Corrigidos

  • Falha na conversão de arquivo Jpeg2000 para PDF
  • Problema de concatenação de PDFs
  • Redimensionamento de página de PDF produz saída em branco
  • PDF para HTML: a cor de destaque está visível, mas o texto está ausente
  • PDF para HTML: saída HTML incorreta gerada
  • PDF para HTML: texto vertical do lado esquerdo está faltando
  • PDF para HTML: texto no cabeçalho desaparece
  • PDF para HTML: texto anotado transparente não é visível
  • PDF para PNG: alguns caracteres chineses não são renderizados
7 de set. de 2026

v26.1

Novo Recurso Extrair Propriedades para o Extrator de PDF

  • Extrair Propriedades do PDF: Título, Autor, Assunto, Palavras‑chave, Número de Páginas.
  • Classe PdfExtractor: método adicionado Extract para extrair as propriedades do PDF.
  • Classe ExtractPropertiesOptions: representa as opções de extração de propriedades do PDF para o plugin PdfExtractor.
  • Classe PdfProperties: representa as propriedades e informações de meta do documento PDF.
  • Interface IHaveInput: usada para opções com um único dado de entrada.
  • Classe OptionsWithInput: usada para opções com um único dado de entrada.
  • Totalmente gratuito e funcional.

Exemplo de Uso:

O exemplo demonstra como extrair propriedades (Título, Autor, Assunto, Palavras‑chave, Número de Páginas) de um arquivo PDF.

// Cria o objeto ExtractPropertiesOptions para definir o arquivo de entrada
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Executa o processo e obtém as propriedades
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;

Exemplo de Uso:

O exemplo demonstra como extrair propriedades (Título, Autor, Assunto, Palavras‑chave, Número de Páginas) de um fluxo PDF.

// Cria o objeto ExtractPropertiesOptions para definir o fluxo de entrada
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Executa o processo e obtém as propriedades
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;

Exemplo de Uso:

O exemplo demonstra como extrair propriedades de um arquivo PDF da forma mais concisa possível.

// Executa o processo e obtém as propriedades
var pdfProperties = PdfExtractor.Extract(new ExtractPropertiesOptions("path_to_your_pdf_file.pdf"));

Melhorias

  • A melhoria de HTML para PDF suporta texto alternativo para imagens
  • Conformidade PDF para PDFA1b

Bugs Corrigidos

  • Erro ao tentar otimizar o arquivo PDF
  • Problema de alinhamento vertical em campos de formulário
  • Problema corrigido com a exibição de texto em japonês em FormField
  • HTML para PDF – problema de formatação de tabelas
  • Otimizar o tamanho do PDF antes da conversão para PDF/A resulta em saída corrompida
  • PDF para DOC – tabela renderizada incorretamente
  • PDF para Excel – problemas de formatação no arquivo de saída
  • PDF para HTML – ArgumentException durante a conversão
  • Conversão de PDF para HTML omitindo alguns links
  • Texto ausente ao converter PDF para HTML
7 de set. de 2026

v25.12

Novo plugin PDF Form

  • Class PdfForm: contém todas as funções dos plugins: FormFlattener, FormExporter. Também permite excluir e obter campos.
  • Class FormFlattener: será excluída em breve, use PdfForm.
  • Class FormFlattenerOptions: renomeada para Class FlattenFieldsOptions.
  • Class GetFieldNamesOptions: permite definir opções para obter nomes de campos.
  • Class RemoveFieldsOptions: permite definir opções para remover campos.
  • Veja The New Plugin Architecture.

Exemplo de Uso:

O exemplo demonstra como achatar campos em um arquivo PDF.

// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Flatten(options);

Exemplo de Uso:

O exemplo demonstra como obter nomes de campos de um arquivo PDF.

var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));

Exemplo de Uso:

O exemplo demonstra como exportar valores de formulário para um arquivo CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfForm.Extract(options);

Exemplo de Uso:

O exemplo demonstra como remover campos de um arquivo PDF.

// Create RemoveFieldsOptions object to set instructions
var options = new RemoveFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Remove(options);

Alterações no PDF Extractor

  • Method ExtractText: renomeado para Method Extract.
  • Method ExtractImages: renomeado para Method Extract.
  • Method ExtractFormData: renomeado para Method Extract.

Exemplo de Uso:

O exemplo demonstra como extrair o conteúdo de texto de um documento PDF.

// Create ExtractTextOptions object to set instructions
var options = new ExtractTextOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Exemplo de Uso:

O exemplo demonstra como extrair imagens de um documento PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Exemplo de Uso:

O exemplo demonstra como exportar valores de formulário para um arquivo CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfExtractor.Extract(options);

Melhorias

  • Class PdfConverterOptions, PdfToXlsOptions – use Class PluginBaseOptions
  • Conversão PDF/A-1b
  • Conversão PDF/A-2b

Bugs Corrigidos

  • Corrigidos problemas de formatação na conversão de HTML para PDF
  • Conversão de PDF para HTML perdeu alguns links
7 de set. de 2026

v25.11

Novo plugin PDF Converter

  • Class PdfConverter: contém todas as funções dos plugins: DocConverter, XlsConverter, HtmlConverter, JpegConverter, PdfAConverter, PngConverter, TiffConverter.
  • Class DocConverter: será excluída em breve, use PdfConverter.
  • Class XlsConverter: será excluída em breve, use PdfConverter.
  • Class HtmlConverter: será excluída em breve, use PdfConverter.
  • Class JpegConverter: será excluída em breve, use PdfConverter.
  • Class PdfAConverter: será excluída em breve, use PdfConverter.
  • Class PngConverter: será excluída em breve, use PdfConverter.
  • Class TiffConverter: será excluída em breve, use PdfConverter.
  • Class PdfAConvertOptions: renomeado para Class PdfToPdfAOptions.
  • Veja The New Plugin Architecture.

Exemplo de Uso:

O exemplo demonstra como converter um documento PDF para formato Doc.

// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter PDF para documento XLSX.

// Create PdfToXlsOptions object to set instructions
var options = new PdfToXlsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter PDF para documento HTML.

// Create PdfToHtmlOptions object to set output data type as file with embedded resources
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.html"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter HTML para documento PDF.

// Create HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_input.html"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter um documento PDF para formato JPEG.

// Create PdfToJpegOptions object to set instructions
var options = new PdfToJpegOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter um documento PDF para formato PNG.

// Create PdfToPngOptions object to set instructions
var options = new PdfToPngOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter um documento PDF para formato TIFF.

// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como converter o documento PDF para o formato PDF/A (PDF/A-3b neste caso):

// Create the options class to set up the conversion process
var options = new PdfToPdfAOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

// Add the source file
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // replace with your actual file path

// Add the path to save the converted file
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

// Run the conversion
PdfConverter.Convert(options);

Exemplo de Uso:

O exemplo demonstra como validar a conformidade do documento PDF ao formato PDF/A (PDF/A-1a neste caso):

// Create the options class to set up the validation process
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};

// Add one or more files to be validated
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // replace with your actual file path
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// add more files as needed

// Run the validation and get results
var resultContainer = PdfConverter.Validate(options);

// Check the resultContainer.ResultCollection property for validation results for each file:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
    var result = resultContainer.ResultCollection[i];
    var validationResult = (PdfAValidationResult)result.Data;
    var isValid = validationResult.IsValid; // Validation result for the i‑th document
}

Novo plugin PDF Security

  • Class PdfSecurity: contém todas as funções dos plugins: Security, Signature, Timestamp.
  • Class Security: será excluída em breve, use PdfSecurity.
  • Class Signature: será excluída em breve, use PdfSecurity.
  • Class Timestamp: será excluída em breve, use PdfSecurity.
  • Class DecryptionOptions: renomeado para Class DecryptOptions.
  • Class EncryptionOptions: renomeado para Class EncryptOptions.
  • Class SignOptions: agora possui propriedades para Class Timestamp.
  • Veja The New Plugin Architecture.

Exemplo de Uso:

O exemplo demonstra como criptografar um documento PDF.

// Create EncryptOptions object to set instructions
var options = new EncryptOptions("123456", "qwerty");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Encrypt(options);

Exemplo de Uso:

O exemplo demonstra como descriptografar um documento PDF.

// Create DecryptOptions object to set instructions
var options = new DecryptOptions("123456");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Decrypt(options);

Exemplo de Uso:

O exemplo demonstra como assinar um documento PDF.

// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Exemplo de Uso:

O exemplo demonstra como assinar um documento PDF com Timestamp.

// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Plugin PdfChatGpt integrado ao PdfManager

  • Class PdfChatGpt: será excluída em breve, use PdfManager.
  • Class PdfChatGptRequestOptions: renomeado para Class ChatGptRequestOptions.

Novas opções disponíveis para trabalhar com ChatGpt

  • Class ChatCompletion: permite verificar os resultados da requisição.
  • Class Choice: permite verificar os resultados da requisição.
  • Class Usage: permite verificar os resultados da requisição.
  • Class ChatGptConsts: permite usar configurações extras como ModelName, API URL e outras.

Exemplo de Uso:

O exemplo demonstra como usar o ChatGpt adicionando mensagens à requisição.

var options = new ChatGptRequestOptions();
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf")); 
options.ApiKey = "Your API key."; // You need to provide the key to access the API.
options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.

// Add the request messages.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Process the request.
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // The ChatGPT API chat completion object.

Melhorias

  • PDF para Imagem – melhorar o desempenho da conversão
  • PDF para TIFF – melhorar a velocidade de conversão
  • PDF para Doc – melhorar o desempenho

Bugs Corrigidos

  • Corrigido HTML para PDF – problemas de formatação no arquivo resultante
  • Corrigido problema de desempenho na conversão de PDF para TIFF
  • Corrigido HTML para PDF – recurso de CSS externo não era aplicado ao PDF gerado
7 de set. de 2026

v25.10

Novo plugin PDF Extractor

  • Class PdfExtractor: contém todas as funções dos plugins: TextExtractor, ImageExtractor, FormExporter.
  • Class TextExtractor: será excluída em breve, use PdfExtractor.
  • Class ImageExtractor: será excluída em breve, use PdfExtractor.
  • Class FormExporter: será excluída em breve, use PdfExtractor.
  • Class TextExtractorOptions: renomeada para Class ExtractTextOptions.
  • Class ImageExtractorOptions: renomeada para Class ExtractImagesOptions.
  • Class FormExportToDsvOptions: renomeada para Class ExtractFormDataToDsvOptions.
  • Veja The New Plugin Architecture.

Exemplo de Uso:

O exemplo demonstra como extrair o conteúdo de texto de um documento PDF.

// Create ExtractTextOptions object to set instructions
var options = new ExtractTextOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.ExtractText(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Exemplo de Uso:

O exemplo demonstra como extrair o conteúdo de texto de um documento PDF com TextFormattingMode.

// Create ExtractTextOptions object to set TextFormattingMode
var options = new ExtractTextOptions(TextFormattingMode.Pure);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.ExtractText(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Exemplo de Uso:

O exemplo demonstra como extrair imagens de um documento PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.ExtractImages(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Exemplo de Uso:

O exemplo demonstra como exportar valores de formulário para um arquivo CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfExtractor.ExtractFormData(options);

Novo plugin PDF Manager

  • Class PdfManager: contém todas as funções dos plugins: Merger, Optimizer, Splitter, TableGenerator, TocGenerator.
  • Class Merger: será excluída em breve.
  • Class Optimizer: será excluída em breve, use PdfManager.
  • Class Splitter: será excluída em breve, use PdfManager.
  • Class TableGenerator: será excluída em breve, use PdfManager.
  • Class TocGenerator: será excluída em breve, use PdfManager.
  • Veja The New Plugin Architecture.

Exemplo de Uso:

O exemplo demonstra como mesclar dois documentos PDF.

// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Merge(options);

Exemplo de Uso:

O exemplo demonstra como dividir um documento PDF.

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Perform the process
PdfManager.Split(options);

Exemplo de Uso:

O exemplo demonstra como otimizar um documento PDF.

// Create OptimizeOptions object to set instructions
var options = new OptimizeOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Optimize(options);

Exemplo de Uso:

O exemplo demonstra como girar um documento PDF.

// Create RotateOptions object to set instructions
var options = new RotateOptions();
// Set new Rotation
options.Rotation = Rotation.On90;
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Rotate(options);

Exemplo de Uso:

O exemplo demonstra como redimensionar um documento PDF.

// Create ResizeOptions object to set instructions
var options = new ResizeOptions();
// Set new PageSize
options.PageSize = PageSize.A3;
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Resize(options);

Exemplo de Uso:

O exemplo demonstra como compactar um documento PDF.

// Create CompressOptions object to set instructions
var options = new CompressOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Compress(options);

Exemplo de Uso:

O exemplo demonstra como adicionar uma tabela a um arquivo PDF.

// Configure table options
var options = new TableOptions();
options.InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age")
        .AddRow()
            .AddCell().AddParagraph("Bob")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Sam")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("Sandy")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("Tom")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Jim")
            .AddCell().AddParagraph("27");
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Perform the process
PdfManager.AddTable(options);

Exemplo de Uso:

O exemplo demonstra como adicionar um sumário (Table of Contents) a um arquivo PDF.

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2));
options.Headings.Add(new TocHeading("Chapter I", 3));
options.Headings.Add(new TocHeading("Chapter II", 4));
options.Headings.Add(new TocHeading("Chapter III", 5));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.AddTableOfContents(options);

Exemplo de Uso:

O exemplo demonstra como adicionar um sumário a um PDF gerando marcadores (bookmarks).

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Generate links in bookmarks
options.GenerateBookmarks = true;
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.AddTableOfContents(options);

Exemplo de Uso:

O exemplo demonstra como adicionar um sumário a um PDF e salvar como fluxo (stream).

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output stream 
var outputStream = new MemoryStream();
options.AddOutput(new StreamDataSource(outputStream));
options.CloseOutputStreams = false;
// Perform the process
PdfManager.AddTableOfContents(options);

Usabilidade aprimorada do TableGenerator

  • Class TableGenerator: é estático e não requer o uso de um construtor.
  • Class TableGenerator: marcado como Obsoleto. Use PdfManager em seu lugar.

Usabilidade aprimorada do PdfChatGpt

  • Class PdfChatGpt: é estático e não requer o uso de um construtor.
  • Class PdfChatGptRequestOptions: adicionada a propriedade CancellationToken (movida de PdfChatGpt).

Exemplo de Uso:

O exemplo demonstra como usar o plugin PdfChatGpt adicionando mensagens à requisição.

var options = new PdfChatGptRequestOptions();
options.AddOutput(new FileDataSource("PdfChatGPT_output.pdf")); // Add the output file path.
options.ApiKey = "Your API key."; // You need to provide the key to access the API.
options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.
// for cancel
// var cancelTokenSource = new CancellationTokenSource();
// var cToken = cancelTokenSource.Token;
// options.CancellationToken = cToken;

// Add the request messages.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Process the request.
await PdfChatGpt.ProcessAsync(options);

Bugs Corrigidos

  • Corrigido meta‑dados da conversão de HTML para PDF
  • Corrigido problemas de formatação de texto e escala de imagens na conversão PDF → PDF/A_3b
  • Corrigido erro ao imprimir PDFs resultantes da conversão PDF → PDFA
  • Corrigido imagem resultante com fundo na conversão PDF → HTML
  • Corrigido caracteres chineses que aparecem como blocos na conversão HTML → PDF
  • Corrigido fonte personalizada em Base64 que não era aplicada na conversão HTML → PDF
  • Corrigido CSS de campo de formulário que não era aplicado na conversão HTML → PDF
  • Corrigido problema de renderização de gráficos na conversão HTML → PDF
  • Corrigido caracteres especiais que não eram renderizados na conversão HTML → PDF
7 de set. de 2026

v25.9

Usabilidade aprimorada do DocConverter e modo extra adicionado

  • Class DocConverter: é estática e não requer o uso de um construtor.
  • Class PdfToDocOptions: adicionada a propriedade Mode que permite personalizar o processo de conversão.
  • Enum DocConversionMode: permite personalizar o processo de conversão pdf‑doc. Valores:
    • TextBox: Este modo é rápido e bom para preservar ao máximo a aparência original do arquivo PDF, mas a editabilidade do documento resultante pode ser limitada. Cada bloco de texto visualmente agrupado no PDF original é convertido em uma caixa de texto no documento resultante.
    • Flow: Modo de reconhecimento total, o mecanismo realiza agrupamento e análise em múltiplos níveis para restaurar a intenção original do autor do documento e produzir um documento altamente editável.

Exemplo de Uso:

// The example demonstrates how to convert PDF document to Doc format.
// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Perform the process
DocConverter.Process(options);

Exemplo de Uso (com Mode):

// The example demonstrates how to convert PDF document to Doc format with setting Mode.
// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Set Mode
options.Mode = DocConversionMode.Flow;
// Perform the process
DocConverter.Process(options);

Usabilidade aprimorada do PdfAConverter

Class PdfAConverter: é estática e não requer o uso de um construtor.

Exemplo de Uso:

// The example demonstrates how to convert the PDF document in a PDF/A format (PDF/A-3b in this case):
// Create the options class to set up the conversion process
var options = new PdfAConvertOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

// Add the source file
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // replace with your actual file path

// Add the path to save the converted file
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

// Run the conversion
PdfAConverter.Process(options);

Exemplo de Uso (validação):

// The example demonstrates how to validate the PDF document conformance to PDF/A format (PDF/A-1a in this case):
// Create the options class to set up the validation process
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};

// Add one or more files to be validated
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // replace with your actual file path
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// add more files as needed

// Run the validation and get results
var resultContainer = PdfAConverter.Process(options);

// Check the resultContainer.ResultCollection property for validation results for each file:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
    var result = resultContainer.ResultCollection[i];
    var validationResult = (PdfAValidationResult) result.Data;
    var isValid = validationResult.IsValid; // Validation result for the i-th document
}

Usabilidade aprimorada do Timestamp

Class Timestamp: é estática e não requer o uso de um construtor.

Exemplo de Uso:

// The example demonstrates how to add Timestamp to the document.
// Create AddTimestampOptions object to set instructions
var options = new AddTimestampOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file", "timestamp_server_url");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Timestamp.Process(options);

Documentação atualizada

Exemplos atualizados, extra exemplos adicionados:

  • Informações sobre licença e avaliação
  • Páginas de produto
  • Gerador de Tabelas PDF
  • Gerador de Sumário PDF
  • Adicionador de Timestamp PDF
  • Conversor PDF/A
  • Extrator de Imagens PDF
  • Extrator de Texto PDF
  • Conversor PDF para XLS
  • Conversor PDF para HTML

Bugs corrigidos

  • Correção de problemas com HTML para PDF
  • Correção de problemas com PDF para PDF/A-2B
  • PDF para JPEG aprimorado: alguns caracteres de texto eram gerados como quadrados
  • Correção de renderização PDF para TIFF
  • Correção de exceções inesperadas ao converter PDF para JPEG
7 de set. de 2026

v25.8

Usabilidade aprimorada do JpegConverter

Class JpegConverter: é estática e não requer o uso de um construtor.

Exemplo de uso:

// O exemplo demonstra como converter um documento PDF para o formato JPEG.
// Crie o objeto PdfToJpegOptions para definir as instruções
var options = new PdfToJpegOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Defina o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Execute o processo
JpegConverter.Process(options);

Usabilidade aprimorada do PngConverter

Class PngConverter: é estática e não requer o uso de um construtor.

Exemplo de uso:

// O exemplo demonstra como converter um documento PDF para o formato PNG.
// Crie o objeto PdfToPngOptions para definir as instruções
var options = new PdfToPngOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Defina o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Execute o processo
PngConverter.Process(options);

Usabilidade aprimorada do XlsConverter

  • Class XlsConverter: é estática e não requer o uso de um construtor.
  • Class XlsConverter: descrição corrigida.

Exemplo de uso:

// O exemplo demonstra como converter PDF para documento XLSX.
// Crie o objeto PdfToXlsOptions para definir as instruções
var options = new PdfToXlsOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Execute o processo
XlsConverter.Process(options);

Usabilidade aprimorada do Signature

  • Class Signature: é estática e não requer o uso de um construtor.
  • Class Signature: descrição corrigida.
  • Class Signature: interface IPlugin removida.

Exemplo de uso:

// O exemplo demonstra como assinar um documento PDF.
// Crie o objeto SignOptions para definir as instruções
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Execute o processo
Signature.Process(options);

Construtores modificados de PdfToHtmlOptions

Construtores e argumentos otimizados.

Marca de avaliação modificada do TextExtractor

Texto da marca de avaliação alterado.

Documentação atualizada

Exemplos atualizados, adicionados exemplos extras:

  • Conversor de PDF para JPEG
  • Conversor de PDF para PNG
  • Conversor de PDF para TIFF
  • Aplainador de Formulários PDF
  • Conversor para HTML
  • Segurança de PDF
  • Otimizador de PDF
  • Mesclador de PDF
  • Divisor de PDF

Bugs corrigidos

  • Corrigidos problemas com Anotações
  • Corrigidos problemas após redimensionamento
  • Corrigida a transformação de nomes de fontes ao converter PDF para PDF/A
  • Corrigido PDF para DOCX – espaço adicionado no cabeçalho e outros problemas
  • Corrigido HTML para PDF – fundo PNG transparente
  • Corrigido PDF compactado – melhoria no trabalho com Adobe Acrobat
7 de set. de 2026

v25.7

Usabilidade aprimorada do Text Extractor

  • Class TextExtractor: é estática e não requer o uso de um construtor.
  • Class TextExtractor: comportamento aprimorado ao executar em modo de avaliação. Nenhuma exceção com documentos de mais de 4 páginas.
  • Class TextExtractor: correções de problemas no método Process.
  • Class PdfExtractorOptions: removido.
  • Class TextExtractorOptions: refatorado.
  • Enum TextFormattingMode: renomeado e aprimorado.

Exemplo de Uso:

// The example demonstrates how to extract text content of PDF document.
// Create TextExtractorOptions object to set instructions
var options = new TextExtractorOptions(TextFormattingMode.Pure);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = TextExtractor.Process(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Usabilidade aprimorada do Html Converter

  • Class HtmlConverter: é estática e não requer o uso de um construtor.
  • Class HtmlConverter: correções de problemas no método Process.
  • Class HtmlConverter: lógica IDisposable removida.
  • Class PdfConverterOptions: removido.

Exemplos de Uso:

// The example demonstrates how to convert PDF to HTML document.
// Create PdfToHtmlOptions object to set output data type as file with embedded resources
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.html"));
// Perform the process
HtmlConverter.Process(options);
// The example demonstrates how to convert HTML to PDF document.
// Create HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_input.html"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Perform the process
HtmlConverter.Process(options);

Usabilidade aprimorada do Image Extractor

  • Class ImageExtractor: é estática e não requer o uso de um construtor.

Exemplo de Uso:

// The example demonstrates how to extract images from PDF document.
// Create ImageExtractorOptions to set instructions
var options = new ImageExtractorOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = ImageExtractor.Process(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Correções Menores

  • Correções internas.
  • Exemplos e dicas do Tiff Converter corrigidos.
  • Duração da otimização de página reduzida.
  • Corrigido: saída de imagem incorreta na conversão de PDF para PNG.
  • Corrigido: caracteres chineses não exibidos corretamente durante a conversão de PDF para PNG.
  • Aprimorado: desempenho durante a conversão de PDF para HTML.
7 de set. de 2026

v25.6

Usabilidade aprimorada do Tiff Converter

  • Class PdfToTiffOptions: Adicionado parâmetro adicional para conversão – Compression.
  • Class PdfToTiffOptions: Adicionado parâmetro adicional para conversão – ColorDepth.
  • Class TiffConverter é estática e não requer o uso de um construtor.
  • Exemplos principais aprimorados.

Exemplos de Uso:

// O exemplo demonstra como converter um documento PDF para o formato TIFF.
// Crie o objeto PdfToTiffOptions para definir as instruções
var options = new PdfToTiffOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Execute o processo
TiffConverter.Process(options);

// O exemplo demonstra como converter um documento PDF para o formato TIFF com parâmetros adicionais.
// Crie o objeto PdfToTiffOptions para definir as instruções
var options = new PdfToTiffOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Parâmetros opcionais
options.PageList = new List<int> { 1, 3 };
options.MultiPage = true;
options.OutputResolution = 400;
options.Compression = TiffCompression.RLE;
options.ColorDepth = TiffColorDepth.Format24bpp;
// Execute o processo
TiffConverter.Process(options);

Correções Menores

  • Correções internas.
7 de set. de 2026

v25.5

Adicionado novo Plugin: Form Exporter

  • Classe FormExporter: Representa o plugin Documentize.FormExporter que é usado para exportar valores de formulários de documentos PDF para arquivos DSV ou CSV.
  • Classe FormExportToDsvOptions: Representa opções para exportar valores de documentos PDF para arquivos DSV ou CSV pelo plugin Documentize.FormExporter.

Exemplo de Uso:

// The example demonstrates how to export form values to a CSV file.
// Create FormExportToDsvOptions object to set instructions
var options = new FormExportToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
FormExporter.Process(options);

Usabilidade aprimorada do Security

  • A classe é estática e não requer o uso de um construtor.
  • Exemplos principais aprimorados.

Exemplos de Uso:

// The example demonstrates how to encrypt a PDF document.
// Create EncryptionOptions object to set instructions
var options = new EncryptionOptions("123456", "qwerty");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Security.Process(options);

// The example demonstrates how to decrypt a PDF document.
// Create DecryptionOptions object to set instructions
var options = new DecryptionOptions("123456");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Security.Process(options);

Correções Menores

  • Dicas de classe e licenças aprimoradas.
7 de set. de 2026

v25.4

Usabilidade aprimorada do Optimizer

  • A classe é estática e não requer o uso de um construtor.
  • Exemplo principal aprimorado.
  • Exemplos adicionais adicionados.

Exemplos de Uso:

// The example demonstrates how to Optimize PDF document.
// Create OptimizeOptions object to set instructions
var options = new OptimizeOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Optimizer.Process(options);

// The example demonstrates how to Rotate PDF document.
// Create RotateOptions object to set instructions
var options = new RotateOptions();
// Set new Rotation
options.Rotation = Rotation.On90;
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Optimizer.Process(options);

// The example demonstrates how to Resize PDF document.
// Create ResizeOptions object to set instructions
var options = new ResizeOptions();
// Set new PageSize
options.PageSize = PageSize.A3;
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Optimizer.Process(options);

// The example demonstrates how to Compress PDF document.
// Create CompressOptions object to set instructions
var options = new CompressOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Optimizer.Process(options);

Usabilidade aprimorada do Plugin Splitter

  • A classe é estática e não requer o uso de um construtor.
  • Exemplo principal aprimorado.

Exemplos de Uso:

// The example demonstrates how to Split PDF document.
// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Perform the process
Splitter.Process(options);

Usabilidade aprimorada do Plugin Merger

  • A classe é estática e não requer o uso de um construtor.
  • Exemplo principal aprimorado.

Exemplos de Uso:

// The example demonstrates how to Merge two PDF documents.
// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Merger.Process(options);

Correções Menores

  • Dicas de classe aprimoradas.
7 de set. de 2026

v25.3

Adicionado novo Plugin: Form Flattener

  • Classe FormFlattener: Representa o plugin Documentize.FormFlattener que é usado para achatar campos em documentos PDF.
  • Classe FormFlattenerOptions: Representa as opções para achatar campos no documento pelo plugin Documentize.FormFlattener.

Exemplo de Uso:

// The example demonstrates how to Flatten fields in PDF file.
// Create FormFlattenerOptions object to set instructions
var options = new FormFlattenerOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Optional parameter for skip the field with name "Surname".
options.SkipFields.Add("Surname");
// Perform the process
FormFlattener.Process(options);

// The example demonstrates how to Get Field Names from PDF file.
var fieldNames = FormFlattener.GetFieldNames("path_to_your_pdf_file.pdf");

Correções Menores

  • Dicas de classe e exemplos aprimorados.
7 de set. de 2026

v25.2

Plugin adicionado: Gerador de Sumário (TOC)

  • Class TocGenerator: Representa o plugin Documentize.TocGenerator. Usado para adicionar um Sumário a documentos PDF.
  • Class TocOptions: Representa as opções para adicionar o Sumário ao documento pelo plugin Documentize.TocGenerator.
  • Class TocHeading: Representa as opções para cabeçalhos ou títulos do Sumário ao documento pelo plugin Documentize.TocGenerator.

Exemplo de Uso:

// The example demonstrates how to add Table of Contents to PDF file.
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Generate links in bookmarks
options.GenerateBookmarks = true;
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
TocGenerator.Process(options);

Correções menores

  • Dicas de classe e exemplos aprimorados.
  • Marcas d’água atualizadas.
  • Conversão de PDF para XSLX aprimorada.
  • Conversão de PDF para PDF/A-1a aprimorada.
7 de set. de 2026

v25.1

Plug-in Melhorado: ImageExtractor

  • Coleção de Saída adicionada ao ImageExtractorOptions.
  • Suporte a múltiplas Entradas adicionado ao ImageExtractorOptions.
  • Correção de fluxos de saída fechados.

Exemplo de Uso:

// create ImageExtractor object to extract images
var plugin = new ImageExtractor();
// create ImageExtractorOptions
var opt = new ImageExtractorOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output directory
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform extraction process
var resultContainer = plugin.Process(opt);
// get the image from the ResultContainer object
var imageExtracted = resultContainer.ResultCollection[0].ToFile();

Correções Menores

  • Dicas de classe e exemplos aprimorados.
  • Validação de assinatura PDF.
  • Suporte aprimorado a caracteres chineses.
7 de set. de 2026

v24.12

Plugin Adicionado: Conversor de PDF para PNG

  • Class PngConverter: Representa o plugin Documentize.PngConverter. Usado para converter documentos PDF para o formato PNG.
  • Class PdfToPngOptions: Representa as opções do conversor de PDF para PNG do plugin Documentize.PngConverter.

Exemplo de Uso:

// create PngConverter
var plugin = new PngConverter();
// create PdfToPngOptions object to set instructions
var opt = new PdfToPngOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform the process
plugin.Process(opt);

Plugin Adicionado: Conversor de PDF para TIFF

  • Class TiffConverter: Representa o plugin Documentize.TiffConverter. Usado para converter documentos PDF para o formato TIFF.
  • Class PdfToTiffOptions: Representa as opções do conversor de PDF para TIFF do plugin Documentize.TiffConverter.

Exemplo de Uso:

// create TiffConverter
var plugin = new TiffConverter();
// create PdfToTiffOptions object to set instructions
var opt = new PdfToTiffOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform the process
plugin.Process(opt);

Plugin Adicionado: Gerador de Tabelas PDF

  • Class TableGenerator: Representa o plugin Documentize.TableGenerator. Usado para adicionar uma tabela a um documento PDF.
  • Class TableBuilder: Classe que representa o construtor de tabelas em páginas PDF.
  • Class TableRowBuilder: Classe que representa o construtor de linhas de tabela.
  • Class TableCellBuilder: Classe que representa o construtor de células de tabela.

Exemplo de Uso:

// create TableGenerator
var plugin = new TableGenerator();
// create TableOptions object to set instructions
TableOptions opt = new TableOptions().InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age")
        .AddRow()
            .AddCell().AddParagraph("Bob")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Sam")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("Sandy")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("Tom")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Jim")
            .AddCell().AddParagraph("27");
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// perform the process
plugin.Process(opt);

Classe PdfDoc Renomeada para DocConverter

  • Class DocConverter: Representa o plugin Documentize.DocConverter. Usado para converter documentos PDF para os formatos DOC/DOCX.

Exemplo de Uso:

// create DocConverter
var plugin = new DocConverter();
// create PdfToDocOptions object to set instructions
var opt = new PdfToDocOptions();
// add input file path
opt.AddInput(new FileDataSource(inputPath));
// set output file path
opt.AddOutput(new FileDataSource(outputPath));
// perform the process
plugin.Process(opt);
7 de set. de 2026

v24.11

Novo Plugin Adicionado: Conversor de PDF para JPEG

  • Objetivo: A classe JpegConverter foi projetada para converter documentos PDF em formato JPEG, facilitando para os usuários o manuseio e compartilhamento de imagens derivadas de PDFs.
  • Construtor:
    • JpegConverter(): Inicializa uma nova instância do conversor JPEG.

Exemplo de Uso:

var plugin = new JpegConverter();
var opt = new PdfToJpegOptions();
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
plugin.Process(opt);
  • Método:
    • Process(PdfToJpegOptions options): Inicia o processo de conversão para JPEG usando as opções especificadas.

Classe DirectoryDataSource Adicionada

  • Objetivo: A classe DirectoryDataSource permite que os usuários gerenciem dados de diretório para operações de carregamento e salvamento dentro dos plugins.
  • Construtor:
    • DirectoryDataSource(string path): Inicializa um novo objeto de dados de diretório com o caminho especificado.

Exemplo de Uso:

var directorySource = new DirectoryDataSource("path_to_your_directory");
  • Propriedades:
    • DataType: Recupera o tipo da fonte de dados.
    • Path: Obtém o caminho do diretório de dados atual.

Classe PdfToJpegOptions Adicionada

  • Objetivo: Esta classe contém opções para configurar o processo de conversão JPEG, permitindo que os usuários especifiquem resolução, lista de páginas e qualidade da imagem.
  • Construtor:
    • PdfToJpegOptions(): Inicializa uma nova instância de opções para o conversor JPEG.

Propriedades:

  • OutputResolution: Especifica a resolução das imagens JPEG resultantes.
  • PageList: Uma lista de páginas a serem convertidas do PDF.
  • Quality: Define a qualidade da saída JPEG.
7 de set. de 2026

v24.10

Novo Plugin Adicionado: Conversor PDF/A

  • Foi introduzida uma nova funcionalidade de conversão para PDF/A, permitindo que os usuários convertam facilmente arquivos PDF padrão em documentos compatíveis com PDF/A.

Exemplo de Uso:

var options = new PdfAConvertOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

var plugin = new PdfAConverter();
plugin.Process(options);

Correções de Bugs

  • Corrigidos problemas relacionados à classe FileResult que resultavam em caminhos de saída incorretos.
  • Resolvidos bugs menores que afetavam o HtmlConverter ao lidar com arquivos grandes.

Melhorias

  • Desempenho aprimorado do PdfExtractor e do ImageExtractor para tempos de processamento mais rápidos.
  • Atualizada a classe RotateOptions para suportar ângulos de rotação adicionais.
7 de set. de 2026

v24.9

Lançado

 Português