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.

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

  • 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
 Português