Em certos casos, pode ser necessário converter PNG, JPG ou outros arquivos de imagem em um documento PDF. Isso pode ser útil em cenários como a conversão de páginas digitalizadas de faturas em PDF. Neste artigo, você aprenderá como converter uma imagem para o formato PDF em C#. Vamos demonstrar a conversão de uma imagem para um PDF e várias imagens para um PDF programaticamente.
- API do Conversor de Imagem C# para PDF
- Converter uma imagem em PDF em C#
- Converter várias imagens em um PDF em C #
C# Image to PDF Converter API - Download grátis
Para conversão de imagem para PDF, usaremos Aspsoe.PDF for .NET. É uma poderosa API de PDF que permite criar e manipular arquivos PDF a partir de seus aplicativos .NET. Além disso, fornece conversão de ida e volta de alta fidelidade de arquivos PDF. Você pode baixar a API ou instalá-la usando NuGet.
PM> Install-Package Aspose.Pdf
Converter uma imagem em PDF em C#
Vamos primeiro dar uma olhada em como converter uma única imagem em um arquivo PDF em C#. A seguir estão as etapas para realizar esta operação.
- Crie uma instância da classe Document.
- Adicione uma nova Page ao documento PDF usando o método Document.Pages.Add() e defina as propriedades da página.
- Carregue o arquivo de imagem em um objeto FileStream.
- Adicione uma nova Image à página usando o método Page.Paragraphs.Add(Image).
- Defina o fluxo da imagem usando a propriedade Image.ImageStream.
- Finalmente, salve o documento PDF usando o método Document.Save(String).
O exemplo de código a seguir mostra como converter uma imagem PNG em PDF em C#.
// Criar um novo documento
Document doc = new Document();
// Caminho do arquivo de imagem
string imageFile = @"aspose.png";
// Adicionar uma página à coleção de páginas do documento
var page = doc.Pages.Add();
// Carregar imagem no fluxo
FileStream imageStream = new FileStream(imageFile, FileMode.Open);
// Defina as margens para que a imagem caiba, etc.
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Aspose.Pdf.Rectangle(0, 0, 400, 400);
// Criar um objeto de imagem
Image image1 = new Image();
// Adicione a imagem na coleção de parágrafos da seção
page.Paragraphs.Add(image1);
// Definir o fluxo do arquivo de imagem
image1.ImageStream = imageStream;
// Salve o arquivo PDF resultante
doc.Save("image-to-pdf.pdf");
Converter várias imagens em um PDF em C
A seguir estão as etapas para converter várias imagens em um único arquivo PDF em C#.
- Crie uma instância da classe Document.
- Obtenha a lista dos nomes dos arquivos de imagem em uma matriz usando o método Directory.GetFiles(string).
- Para cada arquivo de imagem na lista, faça o seguinte:
- Adicione uma nova Page ao documento PDF usando o método Document.Pages.Add() e defina as propriedades da página.
- Carregue o arquivo de imagem em um objeto FileStream.
- Adicione uma nova Image à página usando o método Page.Paragraphs.Add(Image).
- Defina o fluxo da imagem usando a propriedade Image.ImageStream.
- Finalmente, salve o documento PDF usando o método Document.Save(String).
O exemplo de código a seguir mostra a conversão de várias imagens em um único PDF em C#.
// Criar um novo documento
Document doc = new Document();
// Acesse os arquivos de imagem na pasta
string[] fileList = Directory.GetFiles(@"D:/images/");
foreach (String file in fileList)
{
// Adicionar uma página à coleção de páginas do documento
var page = doc.Pages.Add();
// Carregar imagem no fluxo
FileStream imageStream = new FileStream(file, FileMode.Open);
// Defina as margens para que a imagem caiba, etc.
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Pdf.Rectangle(0, 0, 400, 400);
// Criar um objeto de imagem
Image image1 = new Image();
// Adicione a imagem na coleção de parágrafos da seção
page.Paragraphs.Add(image1);
// Definir o fluxo do arquivo de imagem
image1.ImageStream = imageStream;
}
// Salve o arquivo PDF resultante
doc.Save("multiple-images-to-pdf.pdf");
Image to PDF C# Converter - Obtenha uma licença gratuita
Você pode converter imagens em PDF sem limitações de avaliação obtendo uma licença temporária gratuita.
API de PDF C# .NET - Leia mais
Você pode explorar mais sobre o Aspose.PDF para .NET usando documentação. Caso você tenha alguma dúvida, sinta-se à vontade para nos informar através do nosso fórum.
Conclusão
Neste artigo, você aprendeu como converter uma imagem para o formato PDF em C#. Além disso, você viu como converter várias imagens em um único PDF programaticamente. Assim, você pode facilmente realizar qualquer tipo de conversão de imagem para PDF em seu aplicativo.