Class PdfManager

Informação

Representa o componente Documentize.PdfManager. Usado para Mesclar, Dividir, Otimizar, Rotacionar, Redimensionar, Compactar documentos PDF e Adicionar Tabela, Adicionar Sumário a documentos PDF. Pode Mesclar vários documentos PDF em um único PDF. Pode Dividir documentos PDF em páginas separadas. Pode Otimizar, Rotacionar, Redimensionar, Compactar documentos PDF. Pode Rotacionar, Redimensionar Páginas de documento PDF. Pode Adicionar uma Tabela a um documento PDF. Pode Adicionar um Sumário a um documento PDF.

Representa o componente Documentize.PdfManager. Usado para Mesclar, Dividir, Otimizar, Rotacionar, Redimensionar, Compactar documentos PDF e Adicionar Tabela, Adicionar Sumário a documentos PDF.
Pode Mesclar vários documentos PDF em um único PDF.
Pode Dividir documentos PDF em páginas separadas.
Pode Otimizar, Rotacionar, Redimensionar, Compactar documentos PDF.
Pode Rotacionar, Redimensionar Páginas de documento PDF.
Pode Adicionar uma Tabela a um documento PDF.
Pode Adicionar um Sumário a um documento PDF.

public static class PdfManager

Herança

object
PdfManager

Membros herdados

Métodos

AddTable(TableOptions)

Adicionar Tabela ao documento PDF.

public static ResultContainer AddTable(TableOptions options)

Parâmetros

  • options TableOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Adicionar Tabela a um arquivo PDF.

// Configurar opções da tabela
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");
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileData("path_to_input.pdf"));
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_output.pdf"));
// Executar o processo
PdfManager.AddTable(options);

O exemplo demonstra como Adicionar Tabela a um PDF antes da página 2.

// Configurar opções da tabela
var options = new TableOptions();
options.InsertPageBefore(2) // Adicionar tabela antes da página 2
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age");
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileData("path_to_input.pdf"));
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_output.pdf"));
// Executar o processo
PdfManager.AddTable(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

AddTableOfContents(TocOptions)

Adicionar Sumário (TOC) ao documento PDF.

public static ResultContainer AddTableOfContents(TocOptions options)

Parâmetros

  • options TocOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como adicionar Sumário a um arquivo PDF.

// Criar objeto TocOptions para definir instruções
var options = new TocOptions();
// Definir o Título
options.Title = "My Table of Contents";
// Definir cabeçalhos
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));
// 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_pdf_file.pdf"));
// Executar o processo
PdfManager.AddTableOfContents(options);

O exemplo demonstra como adicionar Sumário a um PDF gerando marcadores.

// Criar objeto TocOptions para definir instruções
var options = new TocOptions();
// Definir o Título
options.Title = "My Table of Contents";
// Gerar links em marcadores
options.GenerateBookmarks = true;
// Definir cabeçalhos
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));
// 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_pdf_file.pdf"));
// Executar o processo
PdfManager.AddTableOfContents(options);

O exemplo demonstra como adicionar Sumário a um PDF e salvar como stream.

// Criar objeto TocOptions para definir instruções
var options = new TocOptions();
// Definir o Título
options.Title = "My Table of Contents";
// Definir cabeçalhos
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Definir stream de saída 
var outputStream = new MemoryStream();
options.AddOutput(new StreamData(outputStream));
options.CloseOutputStreams = false;
// Executar o processo
PdfManager.AddTableOfContents(options);

O exemplo demonstra como adicionar Sumário a um PDF personalizando o cabeçalho do TOC.

// Criar objeto TocOptions para definir instruções
var heading = new TocHeading();
heading.Text = "Intro";
heading.PageNumber = 5;
heading.GenerateNumbering = true;
heading.Level = 2;
var tocOptions = new TocOptions();
tocOptions.Headings.Add(heading);
// Adicionar arquivos de entrada e saída
tocOptions.AddInput(new FileData("path_to_your_pdf_file.pdf"));
tocOptions.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Gerar o TOC com opções personalizadas
PdfManager.AddTableOfContents(tocOptions);

Exceções

ArgumentException

Se as opções não estiverem definidas.

Compress(CompressOptions)

Compactar documento PDF. Tenta reduzir o tamanho do documento.

public static ResultContainer Compress(CompressOptions options)

Parâmetros

  • options CompressOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Compactar um documento PDF.

// Criar objeto CompressOptions para definir instruções
var options = new CompressOptions();
// 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_pdf_file.pdf"));
// Executar o processo
PdfManager.Compress(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

CreatePdfByChatGptRequestAsync(ChatGptRequestOptions)

Criar documento PDF a partir da resposta do ChatGpt.
Usado para enviar requisições ao ChatGPT diretamente ou adicionando fontes de arquivos PDF e salvar a resposta no destino de saída.

public static Task<resultcontainer> CreatePdfByChatGptRequestAsync(ChatGptRequestOptions options)

Parâmetros

Retorna

Task<ResultContainer>

Um objeto contendo o resultado da operação.

Exemplos

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

var options = new ChatGptRequestOptions();
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_result_pdf_file.pdf")); 
options.ApiKey = "Your API key."; // Você precisa fornecer a chave para acessar a API.
options.MaxTokens = 1000; // Máximo de tokens a gerar na conclusão da conversa.

// Adicionar as mensagens da requisiçã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
});

// Processar a requisiçã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 da chat da API ChatGPT.

O exemplo demonstra como usar o ChatGpt adicionando uma única mensagem à requisição.

var options = new ChatGptRequestOptions();
options.AddOutput(new FileData("path_to_result_pdf_file.pdf")); // Adicionar caminho do arquivo de saída.
options.ApiKey = "Your API key."; // Você precisa fornecer a chave para acessar a API.
options.MaxTokens = 1000; // Máximo de tokens a gerar na conclusão da conversa.

// Adicionar a mensagem da requisição.
// Neste caso, a mensagem do sistema com Content = "You are a helpful assistant." é adicionada por padrão.
// O papel da mensagem de consulta é "user" por padrão.
options.Query = "What is the lowest temperature recorded on the Earth?";

// Processar a requisiçã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 da chat da API ChatGPT.

O exemplo demonstra como usar o Chat adicionando arquivo(s) como fonte(s) da mensagem.

var options = new ChatGptRequestOptions();
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));

// Adicionar a fonte de texto PDF.
// Em caso de múltiplas fontes, o texto de cada documento será adicionado à coleção de mensagens da requisição
// como uma mensagem separada com o papel "user".
options.AddInput(new FileData("TextSource.pdf"));

options.ApiKey = "Your API key."; // Você precisa fornecer a chave para acessar a API.
options.MaxTokens = 1000; // Máximo de tokens a gerar na conclusão da conversa.

// Adicionar a mensagem da requisição.
// Neste caso, a mensagem do sistema com Content = "You are a helpful assistant." é adicionada por padrão.
// O papel da mensagem de consulta é "user" por padrão.
options.Query = "How many letters in the provided text?";

// Processar a requisiçã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 da chat da API ChatGPT.

Exceções

ArgumentException : Se as opções não estiverem definidas.

Merge(MergeOptions)

Mesclar documentos PDF.

public static ResultContainer Merge(MergeOptions options)

Parâmetros

  • options MergeOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Mesclar dois documentos PDF.

// Criar objeto MergeOptions para definir instruções
var options = new MergeOptions();
// Adicionar caminhos dos arquivos de entrada
options.AddInput(new FileData("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileData("path_to_your_pdf_file_2.pdf"));
// Definir caminho do arquivo de saída
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Executar o processo
PdfManager.Merge(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

Optimize(OptimizeOptions)

Otimizar documento PDF.
Linearizar o documento para

  • abrir a primeira página o mais rápido possível;
  • exibir a próxima página ou seguir um link para a próxima página o mais rápido possível;
  • exibir a página incrementalmente à medida que os dados chegam em um canal lento (exibir primeiro os dados mais úteis);
  • permitir que a interação do usuário, como seguir um link, seja realizada mesmo antes que a página inteira tenha sido recebida e exibida.
public static ResultContainer Optimize(OptimizeOptions options)

Parâmetros

  • options OptimizeOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Otimizar um documento PDF.

// Criar objeto OptimizeOptions para definir instruções
var options = new OptimizeOptions();
// 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_pdf_file.pdf"));
// Executar o processo
PdfManager.Optimize(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

Resize(ResizeOptions)

Redimensionar páginas de documento PDF.

public static ResultContainer Resize(ResizeOptions options)

Parâmetros

  • options ResizeOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Redimensionar um documento PDF.

// Criar objeto ResizeOptions para definir instruções
var options = new ResizeOptions();
// Definir novo PageSize
options.PageSize = PageSize.A3;
// 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_pdf_file.pdf"));
// Executar o processo
PdfManager.Resize(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

Rotate(RotateOptions)

Rotacionar páginas de documento PDF.

public static ResultContainer Rotate(RotateOptions options)

Parâmetros

  • options RotateOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Rotacionar um documento PDF.

// Criar objeto RotateOptions para definir instruções
var options = new RotateOptions();
// Definir nova rotação
options.Rotation = Rotation.On90;
// 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_pdf_file.pdf"));
// Executar o processo
PdfManager.Rotate(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

Split(SplitOptions)

Dividir documento PDF por páginas.

public static ResultContainer Split(SplitOptions options)

Parâmetros

  • options SplitOptions: Um objeto de opções contendo instruções para a operação.

Retorna

ResultContainer : Um objeto contendo o resultado da operação.

Exemplos

O exemplo demonstra como Dividir um documento PDF.

// Criar objeto SplitOptions para definir instruções
var options = new SplitOptions();
// Adicionar caminho do arquivo de entrada
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Definir caminhos dos arquivos de saída
options.AddOutput(new FileData("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file_2.pdf"));
// Executar o processo
PdfManager.Split(options);

Exceções

ArgumentException

Se as opções não estiverem definidas.

Namespace: Documentize
Assembly: Documentize.dll

 Português