Instalação
Instalação do SDK do Documentize
O Documentize pode ser instalado por meio de vários métodos, cada um adaptado a diferentes ambientes de desenvolvimento e preferências. Abaixo estão as maneiras recomendadas de instalar o Documentize:
1. NuGet (Método Preferido)
O NuGet é o método mais direto e preferido para instalar o Documentize, garantindo que você sempre tenha a versão mais recente e atualizações diretamente em seu ambiente de desenvolvimento. Confira mais detalhes sobre este método de instalação em Como instalar SDKs do Documentize usando NuGet.
2. Instalador MSI
O instalador MSI é uma opção conveniente se você preferir ter as DLLs do Documentize instaladas diretamente em seu sistema. Este método é ideal para desenvolvedores que desejam usar o Documentize em vários projetos sem precisar gerenciar manualmente os arquivos DLL. Confira mais detalhes sobre este método de instalação em Como instalar SDKs do Documentize usando MSI.
3. Arquivo ZIP
Para desenvolvedores que preferem uma abordagem manual, o arquivo ZIP contém as DLLs do Documentize, que podem ser extraídas e adicionadas ao seu projeto diretamente. Confira mais detalhes sobre este método de instalação em Como instalar SDKs do Documentize usando ZIP.
Subsecções de O Que Há de Novo
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 pesquisa ou conteúdo privado, sejam removidos ou transformados.
- Class PdfSecurity: adicionou o método Sanitize para sanitizar documentos PDF.
- Class SanitizeOptions: representa as opções de configuração para a sanitização de dados ocultos em 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 imagens.
- 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 pesquisa e as informações privadas devem ser removidos do documento.
- Property FlattenForms: obtém ou define um valor que indica se os formulários do 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 os JavaScripts 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 definindo 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 convertendo todas as páginas em imagens e definindo o DPI de resultado.
// 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"));
- 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 Aprimorado de Conversão de PDF para JPEG
Página do produto “FAQs” atualizada 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 de 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 bandas escuras
- Corrigido Incapacidade de validar a conformidade PDF/A_1b do documento
v26.4
- Method PdfExtractor.Extract: não lança uma exceção se as datas Created e Modified 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 era muito lento com textos HTML extensos
- Corrigido HTML para PDF – Cabeçalho e rodapé não apareciam nas páginas subsequentes
- Corrigido HTML para PDF – Tooltip não era 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 removia caracteres matemáticos ao usar fontes OpenType MATH
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 foram 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 foram 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 foram atualizados.
Exemplo de Uso:
O exemplo demonstra como Exportar valores de Formulário para um 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);
Um erro de digitação nas palavras foi corrigido.
Exemplo de Uso:
O exemplo demonstra como Exportar valores de Formulário para um 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/
https://products.documentize.com/pdf-form/
Problemas Resolvidos
- Problema corrigido onde Imagem para PDF causava uma exceção de Falta de Memória
- Problema corrigido onde a geração de Sumário resultava em resultados incorretos
- Problema corrigido onde a propriedade UnembedFonts de OptimizeResources disparava uma exceção
- Problema corrigido onde PDF para HTML não aplicava fontes corretamente ao ser visualizado no Internet Explorer
- Problema corrigido onde PDF para HTML produzia elementos deslocados e símbolos de formatação
- Problema corrigido onde o processo de conversão de PDF para PDF/A travava
- Problema corrigido onde PDF para PDF/A removia campos de formulário e seus valores
- Problema corrigido onde a saída de PDF para PDF/A não estava em conformidade com PDF/A_1a
- Problema corrigido onde a saída de PDF para PDF/A não estava em conformidade com PDF/A_2b
- Problema corrigido onde a saída de PDF para PDF/A-3A falhava na verificação de conformidade Preflight
- Problema corrigido onde a saída de PDF para PDF/A-3B falhava na verificação de conformidade Preflight
v26.2
- Class Extractor: pode extrair novos metadados de documentos PDF.
- Class PdfProperties: propriedades adicionadas: 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;
- Trabalhar com extração de texto e parâmetros de extração agora está mais fácil: você pode especificar os dados de entrada e obter o resultado de forma mais simples.
- Class ExtractTextOptions: implementa IHaveInput. Use apenas 1 dado de entrada. Tipos de dados permitidos: File e Stream.
- Method Extract(ExtractTextOptions options): devolve uma 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 usando 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 concisa 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 PDF gera saída em branco
- PDF para HTML: cor de destaque visível, mas o texto está ausente
- PDF para HTML: HTML gerado incorreto
- PDF para HTML: texto vertical do lado esquerdo está ausente
- PDF para HTML: texto no cabeçalho desaparece
- PDF para HTML: texto anotado transparente não é exibido
- PDF para PNG: alguns caracteres chineses não são renderizados
v26.1
- Extrair Propriedades do PDF: Título, Autor, Assunto, Palavras‑chave, Número de Páginas.
- Class PdfExtractor: método Extract adicionado para extrair as Propriedades do PDF.
- Class ExtractPropertiesOptions: Representa as Opções de Extração de Propriedades do PDF para o plugin PdfExtractor.
- Class PdfProperties: Representa as Propriedades e informações de metadados do documento PDF.
- Interface IHaveInput: Usada para Opções com um único dado de entrada.
- Class OptionsWithInput: Usada para Opções com um único dado de entrada.
- Funcionalidade completa e gratuita.
Exemplo de Uso:
O exemplo demonstra como Extrair Propriedades (Título, Autor, Assunto, Palavras‑chave, Número de Páginas) 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 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.
// 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 numberOfPages = pdfProperties.NumberOfPages;
Exemplo de Uso:
O exemplo demonstra como Extrair Propriedades de um arquivo PDF no estilo mais compacto possível.
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(new ExtractPropertiesOptions("path_to_your_pdf_file.pdf"));
Melhorias
- Melhoria de HTML para PDF suporta texto alternativo para imagens
- Conformidade de PDF para PDFA1b
Correção de Bugs
- Erro ocorre ao tentar otimizar o arquivo PDF
- Problema de alinhamento vertical de Campo de Formulário
- Problema corrigido ao exibir texto japonês em FormField
- HTML para PDF – Problema de formatação de tabela
- Otimizar o tamanho do PDF antes da conversão de PDF para PDF/A resulta em saída corrompida
- PDF para DOC – Tabela renderizada incorretamente
- PDF para Excel – Problemas de formatação do 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
v25.12
- 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.
- See 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);
- 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
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: renomeada para Class PdfToPdfAOptions.
- Veja The New Plugin Architecture.
Exemplo de Uso:
O exemplo demonstra como converter um documento PDF para o formato Doc.
// Cria o objeto PdfToDocOptions para definir instruções
var options = new PdfToDocOptions();
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter um PDF para um documento XLSX.
// Cria o objeto PdfToXlsOptions para definir instruções
var options = new PdfToXlsOptions();
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter um PDF para um documento HTML.
// Cria o objeto PdfToHtmlOptions para definir o tipo de dados de saída como arquivo com recursos incorporados
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_output.html"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter HTML para um documento PDF.
// Cria HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.html"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter um documento PDF para o formato JPEG.
// Cria o objeto PdfToJpegOptions para definir instruções
var options = new PdfToJpegOptions();
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Define o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter um documento PDF para o formato PNG.
// Cria o objeto PdfToPngOptions para definir instruções
var options = new PdfToPngOptions();
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Define o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter um documento PDF para o formato TIFF.
// Cria o objeto PdfToTiffOptions para definir instruções
var options = new PdfToTiffOptions();
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do diretório de saída
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Realiza o processo
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como converter o documento PDF para um formato PDF/A (PDF/A-3b neste caso):
// Cria a classe de opções para configurar o processo de conversão
var options = new PdfToPdfAOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_3B
};
// Adiciona o arquivo de origem
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // substitua pelo caminho real do seu arquivo
// Adiciona o caminho para salvar o arquivo convertido
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// Executa a conversão
PdfConverter.Convert(options);
Exemplo de Uso:
O exemplo demonstra como validar a conformidade do documento PDF com o formato PDF/A (PDF/A-1a neste caso):
// Cria a classe de opções para configurar o processo de validação
var options = new PdfAValidateOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_1A
};
// Adiciona um ou mais arquivos a serem validados
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // substitua pelo caminho real do seu arquivo
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// adicione mais arquivos conforme necessário
// Executa a validação e obtém resultados
var resultContainer = PdfConverter.Validate(options);
// Verifique a propriedade resultContainer.ResultCollection para os resultados de validação para cada arquivo:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
var result = resultContainer.ResultCollection[i];
var validationResult = (PdfAValidationResult) result.Data;
var isValid = validationResult.IsValid; // Resultado da validação para o documento i-ésimo
}
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: renomeada para Class DecryptOptions.
- Class EncryptionOptions: renomeada para Class EncryptOptions.
- Class SignOptions: agora tem propriedades para Class Timestamp.
- Veja The New Plugin Architecture.
Exemplo de Uso:
O exemplo demonstra como criptografar um documento PDF.
// Cria o objeto EncryptOptions para definir instruções
var options = new EncryptOptions("123456", "qwerty");
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realiza o processo
PdfSecurity.Encrypt(options);
Exemplo de Uso:
O exemplo demonstra como descriptografar um documento PDF.
// Cria o objeto DecryptOptions para definir instruções
var options = new DecryptOptions("123456");
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realiza o processo
PdfSecurity.Decrypt(options);
Exemplo de Uso:
O exemplo demonstra como assinar um documento PDF.
// Cria o objeto SignOptions para definir instruções
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realiza o processo
PdfSecurity.Sign(options);
Exemplo de Uso:
O exemplo demonstra como assinar um documento PDF com Timestamp.
// Cria o objeto SignOptions para definir instruções
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// Adiciona o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realiza o processo
PdfSecurity.Sign(options);
Plugin PdfChatGpt integrado ao PdfManager
- Class PdfChatGpt: será excluída em breve, use PdfManager.
- Class PdfChatGptRequestOptions: renomeada para Class ChatGptRequestOptions.
- Class ChatCompletion: permite verificar os resultados da solicitação.
- Class Choice: permite verificar os resultados da solicitação.
- Class Usage: permite verificar os resultados da solicitação.
- Class ChatGptConsts: permite usar configurações extras como ModelName, URL da API e outras.
Exemplo de Uso:
O exemplo demonstra como usar o ChatGpt adicionando mensagens à solicitação.
var options = new ChatGptRequestOptions();
// Define o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
options.ApiKey = "Your API key."; // Você precisa fornecer a chave para acessar a API.
options.MaxTokens = 1000; // O número máximo de tokens a serem gerados na conclusão do chat.
// Adiciona as mensagens de solicitação.
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
});
// Processa a solicitação.
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);
var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // O objeto de conclusão do chat da API ChatGPT.
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
Correção de Bugs
- 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 - Arquivo CSS como Recurso Externo não aplicando ao arquivo PDF gerado
v25.10
- Class PdfExtractor: contém todas as funções dos plugins: TextExtractor, ImageExtractor, FormExporter.
- Class TextExtractor: será removida em breve, use PdfExtractor.
- Class ImageExtractor: será removida em breve, use PdfExtractor.
- Class FormExporter: será removida em breve, use PdfExtractor.
- Class TextExtractorOptions: renomeada para Class ExtractTextOptions.
- Class ImageExtractorOptions: renomeada para Class ExtractImagesOptions.
- Class FormExportToDsvOptions: renomeada para Class ExtractFormDataToDsvOptions.
- Veja A Nova Arquitetura de Plugin.
Exemplo de Uso:
O exemplo demonstra como extrair o conteúdo de texto de um documento PDF.
// Crie um objeto ExtractTextOptions para definir as instruções
var options = new ExtractTextOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Realize o processo
var results = PdfExtractor.ExtractText(options);
// Obtenha o texto extraído do objeto ResultContainer
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.
// Crie um objeto ExtractTextOptions para definir o TextFormattingMode
var options = new ExtractTextOptions(TextFormattingMode.Pure);
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Realize o processo
var results = PdfExtractor.ExtractText(options);
// Obtenha o texto extraído do objeto ResultContainer
var textExtracted = results.ResultCollection[0].ToString();
Exemplo de Uso:
O exemplo demonstra como extrair imagens de um documento PDF.
// Crie ExtractImagesOptions para definir as instruções
var options = new ExtractImagesOptions();
// 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_results_directory"));
// Realize o processo
var results = PdfExtractor.ExtractImages(options);
// Obtenha o caminho da imagem resultante
var imageExtracted = results.ResultCollection[0].ToFile();
Exemplo de Uso:
O exemplo demonstra como exportar valores de formulário para um arquivo CSV.
// Crie um objeto ExtractFormDataToDsvOptions para definir as instruções
var options = new ExtractFormDataToDsvOptions(',', true);
// 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_csv_file.csv"));
// Realize o processo
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á removida em breve.
- Class Optimizer: será removida em breve, use PdfManager.
- Class Splitter: será removida em breve, use PdfManager.
- Class TableGenerator: será removida em breve, use PdfManager.
- Class TocGenerator: será removida em breve, use PdfManager.
- Veja A Nova Arquitetura de Plugin.
Exemplo de Uso:
O exemplo demonstra como mesclar dois documentos PDF.
// Crie um objeto MergeOptions para definir as instruções
var options = new MergeOptions();
// Adicione os caminhos dos arquivos de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Realize o processo
PdfManager.Merge(options);
Exemplo de Uso:
O exemplo demonstra como dividir um documento PDF.
// Crie um objeto SplitOptions para definir as instruções
var options = new SplitOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina os caminhos dos arquivos de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Realize o processo
PdfManager.Split(options);
Exemplo de Uso:
O exemplo demonstra como otimizar um documento PDF.
// Crie um objeto OptimizeOptions para definir as instruções
var options = new OptimizeOptions();
// 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"));
// Realize o processo
PdfManager.Optimize(options);
Exemplo de Uso:
O exemplo demonstra como girar um documento PDF.
// Crie um objeto RotateOptions para definir as instruções
var options = new RotateOptions();
// Defina a nova rotação
options.Rotation = Rotation.On90;
// 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"));
// Realize o processo
PdfManager.Rotate(options);
Exemplo de Uso:
O exemplo demonstra como redimensionar um documento PDF.
// Crie um objeto ResizeOptions para definir as instruções
var options = new ResizeOptions();
// Defina o novo PageSize
options.PageSize = PageSize.A3;
// 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"));
// Realize o processo
PdfManager.Resize(options);
Exemplo de Uso:
O exemplo demonstra como comprimir um documento PDF.
// Crie um objeto CompressOptions para definir as instruções
var options = new CompressOptions();
// 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"));
// Realize o processo
PdfManager.Compress(options);
Exemplo de Uso:
O exemplo demonstra como adicionar uma tabela a um arquivo PDF.
// Configurar opções de tabela
var options = new TableOptions();
options.InsertPageBefore(1)
.AddTable()
.AddRow()
.AddCell().AddParagraph("Nome")
.AddCell().AddParagraph("Idade")
.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");
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Realize o processo
PdfManager.AddTable(options);
Exemplo de Uso:
O exemplo demonstra como adicionar uma tabela de conteúdos a um arquivo PDF.
// Crie um objeto TocOptions para definir as instruções
var options = new TocOptions();
// Defina o título
options.Title = "Minha Tabela de Conteúdos";
// Projetar Títulos
options.Headings.Add(new TocHeading("Introdução", 2));
options.Headings.Add(new TocHeading("Capítulo I", 3));
options.Headings.Add(new TocHeading("Capítulo II", 4));
options.Headings.Add(new TocHeading("Capítulo III", 5));
// 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"));
// Realize o processo
PdfManager.AddTableOfContents(options);
Exemplo de Uso:
O exemplo demonstra como adicionar uma tabela de conteúdos a um arquivo PDF gerando marcadores.
// Crie um objeto TocOptions para definir as instruções
var options = new TocOptions();
// Defina o título
options.Title = "Minha Tabela de Conteúdos";
// Gerar links em marcadores
options.GenerateBookmarks = true;
// Projetar Títulos
options.Headings.Add(new TocHeading("Introdução", 2, false, 1));
options.Headings.Add(new TocHeading("Capítulo I", 3, true, 1));
options.Headings.Add(new TocHeading("Capítulo II", 4, true, 1));
options.Headings.Add(new TocHeading("Exemplo A", 4, true, 2));
options.Headings.Add(new TocHeading("Exemplo B", 4, true, 2));
options.Headings.Add(new TocHeading("Exemplo C", 4, true, 2));
options.Headings.Add(new TocHeading("Exemplo D", 4, true, 2));
options.Headings.Add(new TocHeading("Capítulo III", 5, true, 1));
// 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"));
// Realize o processo
PdfManager.AddTableOfContents(options);
Exemplo de Uso:
O exemplo demonstra como adicionar uma tabela de conteúdos a um arquivo PDF e salvar como fluxo.
// Crie um objeto TocOptions para definir as instruções
var options = new TocOptions();
// Defina o título
options.Title = "Minha Tabela de Conteúdos";
// Projetar Títulos
options.Headings.Add(new TocHeading("Introdução", 2, false, 1));
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina o fluxo de saída
var outputStream = new MemoryStream();
options.AddOutput(new StreamDataSource(outputStream));
options.CloseOutputStreams = false;
// Realize o processo
PdfManager.AddTableOfContents(options);
Usabilidade melhorada do TableGenerator
- Class TableGenerator: é estática e não requer o uso de um construtor.
- Class TableGenerator: marcada como Obsoleta. Use PdfManager em vez disso.
Usabilidade melhorada do PdfChatGpt
- Class PdfChatGpt: é estática e não requer o uso de um construtor.
- Class PdfChatGptRequestOptions: propriedade CancellationToken adicionada (Movida de PdfChatGpt).
Exemplo de Uso:
O exemplo demonstra como usar o plugin PdfChatGpt adicionando mensagens à solicitação.
var options = new PdfChatGptRequestOptions();
options.AddOutput(new FileDataSource("PdfChatGPT_output.pdf")); // Adicione o caminho do arquivo de saída.
options.ApiKey = "Sua chave de API."; // Você precisa fornecer a chave para acessar a API.
options.MaxTokens = 1000; // O número máximo de tokens a serem gerados na conclusão do chat.
// para cancelar
// var cancelTokenSource = new CancellationTokenSource();
// var cToken = cancelTokenSource.Token;
// options.CancellationToken = cToken;
// Adicione as mensagens da solicitação.
options.Messages.Add(new Message
{
Content = "Você é um assistente útil.",
Role = Role.System
});
options.Messages.Add(new Message
{
Content = "Qual é o maior diâmetro de pizza já feito?",
Role = Role.User
});
// Processar a solicitação.
await PdfChatGpt.ProcessAsync(options);
Erros Corrigidos
- Corrigida conversão de html para pdf metadados
- Corrigidos problemas de formatação de texto e imagens escaladas no PDF para PDFA_3b
- Corrigido erro na impressão do PDFA resultante
- Corrigido imagem resultante no PDF para HTML contém fundo
- Corrigidos caracteres chineses que aparecem como caixas no HTML para PDF
- Corrigido fonte personalizada em Base64 não é respeitada no HTML para PDF
- Corrigido CSS de campo de formulário não sendo aplicado no HTML para PDF
- Corrigido gráfico não está sendo renderizado corretamente no HTML para PDF
- Corrigidos caracteres especiais não sendo renderizados no HTML para PDF
v25.9
- Classe DocConverter: é estática e não requer o uso de um construtor.
- Classe PdfToDocOptions: adicionada propriedade “Modo” que permite personalizar o processo de conversão.
- Enum DocConversionMode: permite personalizar o processo de conversão de 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 arquivo PDF original é convertido em uma caixa de texto no documento resultante.
- Flow: Modo de reconhecimento completo, o mecanismo realiza agrupamento e análise de múltiplos níveis para restaurar a intenção original do autor do documento e produzir um documento maximamente editável.
Exemplo de Uso:
// O exemplo demonstra como converter um documento PDF para o formato Doc.
// Crie um objeto PdfToDocOptions para definir as instruções
var options = new PdfToDocOptions();
// 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_file.doc"));
// Realize o processo
DocConverter.Process(options);
Exemplo de Uso:
// O exemplo demonstra como converter um documento PDF para o formato Doc configurando o Modo.
// Crie um objeto PdfToDocOptions para definir as instruções
var options = new PdfToDocOptions();
// 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_file.doc"));
// Defina o Modo
options.Mode = DocConversionMode.Flow;
// Realize o processo
DocConverter.Process(options);
Melhor usabilidade do PdfAConverter
Classe PdfAConverter: é estática e não requer o uso de um construtor.
Exemplo de Uso:
// O exemplo demonstra como converter o documento PDF em um formato PDF/A (PDF/A-3b neste caso):
// Crie a classe de opções para configurar o processo de conversão
var options = new PdfAConvertOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_3B
};
// Adicione o arquivo fonte
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // substitua pelo caminho do seu arquivo
// Adicione o caminho para salvar o arquivo convertido
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// Execute a conversão
PdfAConverter.Process(options);
Exemplo de Uso:
// O exemplo demonstra como validar a conformidade do documento PDF com o formato PDF/A (PDF/A-1a neste caso):
// Crie a classe de opções para configurar o processo de validação
var options = new PdfAValidateOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_1A
};
// Adicione um ou mais arquivos para serem validados
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // substitua pelo caminho do seu arquivo
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// adicione mais arquivos conforme necessário
// Execute a validação e obtenha os resultados
var resultContainer = PdfAConverter.Process(options);
// Verifique a propriedade resultContainer.ResultCollection para os resultados da validação de cada arquivo:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
var result = resultContainer.ResultCollection[i];
var validationResult = (PdfAValidationResult) result.Data;
var isValid = validationResult.IsValid; // Resultado da validação para o i-ésimo documento
}
Melhor usabilidade do Timestamp
Classe Timestamp: é estática e não requer o uso de um construtor.
Exemplo de Uso:
// O exemplo demonstra como adicionar um Timestamp ao documento.
// Crie um objeto AddTimestampOptions para definir as instruções
var options = new AddTimestampOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file", "timestamp_server_url");
// 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"));
// Realize o processo
Timestamp.Process(options);
Documentação atualizada
Exemplos atualizados, adicionados exemplos extras:
- Informações sobre licença e Avaliação
- Páginas do produto
- Gerador de Tabelas PDF
- Gerador de TOC PDF
- Adicionador de Timestamp PDF
- Conversor PDF/A
- Extrator de Imagem PDF
- Extrator de Texto PDF
- Conversor PDF para XLS
- Conversor PDF para HTML
Bugs corrigidos
- Corrigidos problemas com HTML para PDF
- Corrigidos problemas com PDF para PDF/A-2B
- Melhorado PDF para JPEG: alguns caracteres de texto gerados como quadrados
- Corrigido renderização de PDF para TIFF
- Corrigidos exceções inesperadas de PDF para JPEG
v25.8
Melhoria na usabilidade do JpegConverter
Class JpegConverter: é estático e não requer o uso de um construtor.
Exemplo de uso:
// O exemplo demonstra como converter um documento PDF em formato JPEG.
// Crie um 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);
Melhoria na usabilidade do PngConverter
Class PngConverter: é estático e não requer o uso de um construtor.
Exemplo de uso:
// O exemplo demonstra como converter um documento PDF em formato PNG.
// Crie um 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);
Melhoria na usabilidade do XlsConverter
- Class XlsConverter: é estático e não requer o uso de um construtor.
- Class XlsConverter: descrição corrigida.
Exemplo de uso:
// O exemplo demonstra como converter PDF em documento XLSX.
// Crie um 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);
Melhoria na usabilidade da Assinatura
- Class Signature: é estático 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 um 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.
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 HTML
- Segurança de PDF
- Otimizador de PDF
- Mesclador de PDF
- Divisor de PDF
Bugs corrigidos
- Corrigir problemas com Anotações
- Corrigir problemas após redimensionamento
- Corrigir a transformação de Nomes de Fonte de PDF para PDF/A
- Corrigir PDF para DOCX - Espaço adicionado no cabeçalho e outros problemas
- Corrigir HTML para PDF - Fundo PNG Transparente
- Corrigir PDF Comprimido - Melhorar o trabalho com Adobe Acrobat
v25.7
- Class TextExtractor: é estática e não requer o uso de um construtor.
- Class TextExtractor: comportamento melhorado ao rodar em modo de avaliação. Sem exceção com documentos de 4+ páginas.
- Class TextExtractor: problemas corrigidos no método Process.
- Class PdfExtractorOptions: removido.
- Class TextExtractorOptions: refatorado.
- Enum TextFormattingMode: renomeado e melhorado.
Exemplo de Uso:
// O exemplo demonstra como extrair o conteúdo de texto de um documento PDF.
// Crie um objeto TextExtractorOptions para definir instruções
var options = new TextExtractorOptions(TextFormattingMode.Pure);
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Realize o processo
var results = TextExtractor.Process(options);
// Obtenha o texto extraído do objeto ResultContainer
var textExtracted = results.ResultCollection[0].ToString();
Melhor usabilidade do Conversor Html
- Class HtmlConverter: é estática e não requer o uso de um construtor.
- Class HtmlConverter: problemas corrigidos no método Process.
- Class HtmlConverter: lógica IDisposable removida.
- Class PdfConverterOptions: removido.
Exemplos de Uso:
// O exemplo demonstra como converter PDF para documento HTML.
// Crie um objeto PdfToHtmlOptions para definir o tipo de dados de saída como arquivo com recursos incorporados
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_output.html"));
// Realize o processo
HtmlConverter.Process(options);
// O exemplo demonstra como converter HTML para documento PDF.
// Crie HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_input.html"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Realize o processo
HtmlConverter.Process(options);
- Class ImageExtractor: é estática e não requer o uso de um construtor.
Exemplo de Uso:
// O exemplo demonstra como extrair imagens de um documento PDF.
// Crie ImageExtractorOptions para definir instruções
var options = new ImageExtractorOptions();
// 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_results_directory"));
// Realize o processo
var results = ImageExtractor.Process(options);
// Obtenha o caminho da imagem resultante
var imageExtracted = results.ResultCollection[0].ToFile();
Correções Menores
- Correções internas.
- Exemplos e dicas do Conversor Tiff corrigidos.
- Duração de otimização de página minimizada.
- Corrigido: imagem de saída incorreta na conversão de PDF para PNG.
- Corrigido: caracteres chineses não exibidos corretamente durante a conversão de PDF para PNG.
- Melhorado: Performance durante a conversão de PDF para HTML.
v25.6
Melhorias na usabilidade do Conversor Tiff
- Classe PdfToTiffOptions: Adicionado parâmetro adicional para conversão - Compressão.
- Classe PdfToTiffOptions: Adicionado parâmetro adicional para conversão - Profundidade de Cor.
- Classe TiffConverter é estática e não requer o uso de um construtor.
- Exemplos principais melhorados.
Exemplos de Uso:
// O exemplo demonstra como converter um documento PDF em formato TIFF.
// Crie um 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"));
// Realize o processo
TiffConverter.Process(options);
// O exemplo demonstra como converter um documento PDF em formato TIFF com parâmetros adicionais.
// Crie um 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;
// Realize o processo
TiffConverter.Process(options);
Correções Menores
v25.5
- Class FormExporter: Representa o plugin Documentize.FormExporter que é utilizado para Exportar os valores de Formulários de documentos PDF para arquivos DSV ou CSV
- Class FormExportToDsvOptions: Representa as opções para Exportar os valores de documentos PDF para arquivos DSV ou CSV pelo plugin Documentize.FormExporter.
Exemplo de Uso:
// O exemplo demonstra como Exportar valores de Formulário para um arquivo CSV.
// Crie um objeto FormExportToDsvOptions para definir as instruções
var options = new FormExportToDsvOptions(',', true);
// 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_csv_file.csv"));
// Execute o processo
FormExporter.Process(options);
Melhorias na Usabilidade da Segurança
- A classe é estática e não requer o uso de um construtor.
- Exemplos principais aprimorados.
Exemplos de Uso:
// O exemplo demonstra como criptografar um documento PDF.
// Crie um objeto EncryptionOptions para definir as instruções
var options = new EncryptionOptions("123456", "qwerty");
// 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
Security.Process(options);
// O exemplo demonstra como descriptografar um documento PDF.
// Crie um objeto DecryptionOptions para definir as instruções
var options = new DecryptionOptions("123456");
// 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
Security.Process(options);
Correções Menores
- Dicas e licenças de classe aprimoradas.
v25.4
Usabilidade melhorada do Otimizador
- A classe é estática e não requer o uso de um construtor.
- Exemplo principal melhorado.
- Exemplos adicionais adicionados.
Exemplos de Uso:
// O exemplo demonstra como Otimizar o documento PDF.
// Crie um objeto OptimizeOptions para definir instruções
var options = new OptimizeOptions();
// 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
Optimizer.Process(options);
// O exemplo demonstra como Rotacionar o documento PDF.
// Crie um objeto RotateOptions para definir instruções
var options = new RotateOptions();
// Defina a nova Rotação
options.Rotation = Rotation.On90;
// 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
Optimizer.Process(options);
// O exemplo demonstra como Redimensionar o documento PDF.
// Crie um objeto ResizeOptions para definir instruções
var options = new ResizeOptions();
// Defina o novo Tamanho da Página
options.PageSize = PageSize.A3;
// 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
Optimizer.Process(options);
// O exemplo demonstra como Comprimir o documento PDF.
// Crie um objeto CompressOptions para definir instruções
var options = new CompressOptions();
// 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
Optimizer.Process(options);
Usabilidade melhorada do Plugin Splitter
- A classe é estática e não requer o uso de um construtor.
- Exemplo principal melhorado.
Exemplos de Uso:
// O exemplo demonstra como Dividir o documento PDF.
// Crie um objeto SplitOptions para definir instruções
var options = new SplitOptions();
// Adicione o caminho do arquivo de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Defina os caminhos dos arquivos de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Execute o processo
Splitter.Process(options);
Usabilidade melhorada do Plugin Merger
- A classe é estática e não requer o uso de um construtor.
- Exemplo principal melhorado.
Exemplos de Uso:
// O exemplo demonstra como Mesclar dois documentos PDF.
// Crie um objeto MergeOptions para definir instruções
var options = new MergeOptions();
// Adicione os caminhos dos arquivos de entrada
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Defina o caminho do arquivo de saída
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Execute o processo
Merger.Process(options);
Correções Menores
- Dicas de classe melhoradas.
v25.3
- Classe FormFlattener: Representa o plugin Documentize.FormFlattener que é usado para achatar campos em documentos PDF.
- Classe FormFlattenerOptions: Representa opções para Achatar Campos em documentos pelo plugin Documentize.FormFlattener.
Exemplo de Uso:
//O exemplo demonstra como achatar campos em um arquivo PDF.
// Crie um objeto FormFlattenerOptions para definir instruções
var options = new FormFlattenerOptions();
// 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"));
//Parâmetro opcional para pular o campo com o nome "Surname".
options.SkipFields.Add("Surname");
// Execute o processo
FormFlattener.Process(options);
//O exemplo demonstra como obter nomes de campos de um arquivo PDF.
var fieldNames = FormFlattener.GetFieldNames("path_to_your_pdf_file.pdf");
Correções Menores
- Melhorou dicas de classe e exemplos.
v25.2
Adicionado novo Plugin: Gerador de TOC
- Classe TocGenerator: Representa o plugin Documentize.TocGenerator. Usado para adicionar um Índice a documentos PDF.
- Classe TocOptions: Representa opções para adicionar Índice ao documento pelo plugin Documentize.TocGenerator.
- Classe TocHeading: Representa opções para Títulos ou Títulos do Índice no documento pelo plugin Documentize.TocGenerator.
Exemplo de Uso:
// O exemplo demonstra como adicionar um Índice ao arquivo PDF.
var options = new TocOptions();
// Defina o Título
options.Title = "Meu Índice";
// Gerar links em marcadores
options.GenerateBookmarks = true;
// Projetar Títulos
options.Headings.Add(new TocHeading("Introdução", 2, false, 1));
options.Headings.Add(new TocHeading("Capítulo I", 3, true, 1));
options.Headings.Add(new TocHeading("Capítulo II", 4, true, 1));
options.Headings.Add(new TocHeading("Exemplo A", 4, true, 2));
options.Headings.Add(new TocHeading("Exemplo B", 4, true, 2));
options.Headings.Add(new TocHeading("Exemplo C", 4, true, 2));
options.Headings.Add(new TocHeading("Exemplo D", 4, true, 2));
options.Headings.Add(new TocHeading("Capítulo III", 5, true, 1));
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileDataSource("caminho_para_seu_arquivo_pdf.pdf"));
// Definir caminho do arquivo de saída
options.AddOutput(new FileDataSource("caminho_para_arquivo_pdf_resultante.pdf"));
// Realizar o processo
TocGenerator.Process(options);
Correções Menores
- Melhoria nas dicas de classe e exemplos.
- Atualização de marcas d’água.
- Melhoria na conversão de PDF para XSLX.
- Melhoria na conversão de PDF para PDF/A-1a.
v25.1
- Adicionada Coleta de Saída para ImageExtractorOptions.
- Adicionada suporte para múltiplas Entradas em ImageExtractorOptions.
- Corrigidos fluxos de saída fechados.
Exemplo de Uso:
// criar objeto ImageExtractor para extrair imagens
var plugin = new ImageExtractor();
// criar ImageExtractorOptions
var opt = new ImageExtractorOptions();
// adicionar caminho do arquivo de entrada
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// definir diretório de saída
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// realizar processo de extração
var resultContainer = plugin.Process(opt);
// obter a imagem do objeto ResultContainer
var imageExtracted = resultContainer.ResultCollection[0].ToFile();
Correções Menores
- Melhoradas dicas de classe e exemplos.
- Validação de assinatura PDF.
- Melhorado suporte a caracteres chineses.
v24.12
Adicionado novo Plugin: Converta PDF para PNG
- Classe PngConverter: Representa o plugin Documentize.PngConverter. Usado para converter documentos PDF para o formato PNG.
- Classe PdfToPngOptions: Representa as opções do conversor de PDF para PNG para o plugin Documentize.PngConverter.
Exemplo de Uso:
// criar PngConverter
var plugin = new PngConverter();
// criar objeto PdfToPngOptions para definir instruções
var opt = new PdfToPngOptions();
// adicionar caminho do arquivo de entrada
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// definir caminho do arquivo de saída
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// executar o processo
plugin.Process(opt);
Adicionado novo Plugin: Converta PDF para TIFF
- Classe TiffConverter: Representa o plugin Documentize.TiffConverter. Usado para converter documentos PDF para o formato TIFF.
- Classe PdfToTiffOptions: Representa as opções do conversor de PDF para TIFF para o plugin Documentize.TiffConverter.
Exemplo de Uso:
// criar TiffConverter
var plugin = new TiffConverter();
// criar objeto PdfToTiffOptions para definir instruções
var opt = new PdfToTiffOptions();
// adicionar caminho do arquivo de entrada
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// definir caminho do arquivo de saída
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// executar o processo
plugin.Process(opt);
Adicionado novo Plugin: Gerador de Tabelas PDF
- Classe TableGenerator: Representa o plugin Documentize.TableGenerator. Usado para adicionar uma tabela a um documento PDF.
- Classe TableBuilder: Classe representa o construtor para a tabela na página PDF.
- Classe TableRowBuilder: Classe representa o construtor para a linha da tabela.
- Classe TableCellBuilder: Classe representa o construtor para a célula da tabela.
Exemplo de Uso:
// criar TableGenerator
var plugin = new TableGenerator();
// criar objeto TableOptions para definir instruções
TableOptions opt = new TableOptions().InsertPageBefore(1)
.AddTable()
.AddRow()
.AddCell().AddParagraph("Nome")
.AddCell().AddParagraph("Idade")
.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");
// adicionar caminho do arquivo de entrada
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// definir caminho do arquivo de saída
opt.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// executar o processo
plugin.Process(opt);
Renomeada Classe PdfDoc para DocConverter
- Classe DocConverter: Representa o plugin Documentize.DocConverter. Usado para converter documentos PDF para o formato DOC/DOCX.
Exemplo de Uso:
// criar DocConverter
var plugin = new DocConverter();
// criar objeto PdfToDocOptions para definir instruções
var opt = new PdfToDocOptions();
// adicionar caminho do arquivo de entrada
opt.AddInput(new FileDataSource(inputPath));
// definir caminho do arquivo de saída
opt.AddOutput(new FileDataSource(outputPath));
// executar o processo
plugin.Process(opt);
v24.11
Novo Plugin Adicionado: Conversor de PDF para JPEG
- Propósito: A classe
JpegConverter é projetada para converter documentos PDF em formato JPEG, facilitando para os usuários manusear e compartilhar 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("caminho_do_seu_arquivo_pdf.pdf"));
opt.AddOutput(new DirectoryDataSource("caminho_do_diretório_de_resultados"));
plugin.Process(opt);
- Método:
Process(PdfToJpegOptions options): Inicia o processo de conversão JPEG usando as opções especificadas.
Classe DirectoryDataSource Adicionada
- Propósito: 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("caminho_do_seu_diretório");
- Propriedades:
DataType: Recupera o tipo de fonte de dados.Path: Obtém o caminho do diretório de dados atual.
Classe PdfToJpegOptions Adicionada
- Propósito: Esta classe contém opções para configurar o processo de conversão JPEG, permitindo que os usuários especifiquem resolução, listas 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.
v24.10
Novo Plugin Adicionado: Conversor PDF/A
- Uma nova funcionalidade de conversão para PDF/A foi introduzida, 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("caminho_para_seu_arquivo_pdf.pdf"));
options.AddOutput(new FileDataSource("caminho_para_o_arquivo_convertido.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 pequenos bugs que afetavam o
HtmlConverter ao lidar com arquivos grandes.
Melhorias
- Desempenho aprimorado do
PdfExtractor e ImageExtractor para tempos de processamento mais rápidos. - Atualizada a classe
RotateOptions para suportar ângulos de rotação adicionais.
v24.9
Lançado