Trabalhe com imagens em PDF via C#

Manipule imagens em documentos PDF. Use o Aspose.PDF for .NET para modificar documentos PDF de forma programática

Adicionar imagem ao documento PDF usando a biblioteca C#

Para adicionar imagem em PDF, usaremos a API Aspose.PDF for .NET, que é uma API de manipulação de documentos rica em recursos, poderosa e fácil de usar para a plataforma net. Abra o gerenciador de pacotes NuGet, procure por Aspose.pdf e instale. Você também pode usar o seguinte comando no Console do Gerenciador de Pacotes.

Package Manager Console

PM > Install-Package Aspose.PDF

Adicionar imagem ao PDF via C#


Você precisa Aspose.PDF for .NET testar o código em seu ambiente.

  1. Crie um objeto Document e abra o documento PDF de entrada.
  2. Obtenha a página que você deseja adicionar uma imagem.
  3. Adicione a imagem à coleção Resources da página.
  4. Use o operador GSave para salvar o estado gráfico atual.
  5. Use o operador ConcatenateMatrix para especificar onde a imagem deve ser colocada.
  6. Use o operador Fazer para desenhar a imagem na página.
  7. Use o operador GRestore para salvar o estado gráfico atualizado.
  8. Salve o arquivo PDF.

Adicionar imagem em um arquivo PDF existente - C#

Example: C#

var inputFile = Path.Combine(dataDir, "add-image.pdf");
var outputFile = Path.Combine(dataDir, "add-image_out.pdf");
var imageFile = Path.Combine(dataDir, "aspose-logo.jpg");
var pdfDocument = new Aspose.Pdf.Document(inputFile);
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

var page = pdfDocument.Pages[1];
var imageStream = new FileStream(imageFile, FileMode.Open);
page.Resources.Images.Add(imageStream);
page.Contents.Add(new Aspose.Pdf.Operators.GSave());
var rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
var matrix = new Aspose.Pdf.Matrix([rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY]);
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
var ximage = page.Resources.Images[page.Resources.Images.Count];
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());

pdfDocument.Save(outputFile);