
Pode ser necessário compartilhar as páginas de documentos PDF como arquivos de imagem com outras pessoas. Como desenvolvedor C#, você pode converter facilmente arquivos PDF para PNG, JPG, TIFF ou BMP programaticamente em seus aplicativos .NET. Neste artigo, você aprenderá como converter PDF em imagens usando C#.
Os seguintes tópicos são discutidos/abordados neste artigo:
- API C# de conversão de PDF para imagem
- Converter PDF para imagens PNG usando C#
- Converter PDF para imagens JPG usando C#
- Conversão de PDF para BMP em C#
- Conversão de PDF para TIFF em C#
- Extraia imagens de documentos PDF usando C#
API C# de conversão de PDF para imagem
Para converter PDF em imagens, estarei usando Aspose.PDF for .NET API. É uma poderosa API de gerenciamento de arquivos PDF que permite manipular documentos PDF a partir de seus aplicativos .NET. Ele permite criar, modificar, converter, renderizar, proteger e imprimir documentos sem usar o Adobe Acrobat.
Você pode baixar a DLL da API ou instalá-la usando o NuGet.
Install-Package Aspose.Pdf
Converter PDF para imagens PNG usando C#
Você pode converter arquivos PDF em imagens PNG programaticamente seguindo as etapas abaixo:
- Crie uma instância da classe Document com o caminho do arquivo PDF de entrada.
- Percorra todas as páginas do PDF usando a coleção Document.Pages e faça o seguinte:
- Crie uma instância da classe Resolution e defina seu valor.
- Crie uma instância da classe PngDevice e passe o objeto Width, Height e Resolution.
- Chame o método Process(Page, String) com o número da página e o caminho da imagem PNG de saída para converter a página em um PNG.
O exemplo de código a seguir mostra como converter páginas PDF em imagens PNG usando C#.
// Abrir documento
Document pdfDocument = new Document("C:\\Files\\sample.pdf");
foreach (var page in pdfDocument.Pages)
{
// Definir resolução
Resolution resolution = new Resolution(300);
// Criar dispositivo PNG com atributos especificados
// Largura, Altura, Resolução
PngDevice PngDevice = new PngDevice(500, 700, resolution);
// Converta uma página específica e salve a imagem para transmitir
PngDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".Png");
}

Converter PDF para imagens PNG usando C#
A classe Document representa o documento PDF. Ele fornece várias propriedades e métodos para executar várias funcionalidades. A coleção Document.Pages é uma coleção de páginas de documentos e a numeração de página começa em 1 na coleção. A classe Resolution define a resolução da imagem. A classe PngDevice permite salvar páginas do documento PDF em imagens PNG. Esta classe fornece os seguintes métodos para salvar páginas em imagens PNG:
- Processo(Página, String) — Performs some operation on the given page and saves results into the file at given path.
- Processo (Página, Fluxo) — Converts the page into PNG and saves it in the output stream.
Converter PDF para imagens JPG usando C#
Você pode converter arquivos PDF em imagens JPG programaticamente seguindo as etapas abaixo:
- Crie uma instância da classe Document com o caminho do arquivo de entrada.
- Percorra todas as páginas do PDF usando a coleção Document.Pages e faça o seguinte:
- Crie uma instância da classe Resolution e defina seu valor.
- Crie uma instância da classe JpegDevice e passe o objeto Width, Height e Resolution.
- Chame o método Process(Page, String) com o número da página e o caminho da imagem JPG de saída para converter a página em um JPG.
O exemplo de código a seguir mostra como converter páginas PDF em imagens JPG usando C#.
// Abrir documento
Document pdfDocument = new Document("C:\\Files\\sample.pdf");
foreach (var page in pdfDocument.Pages)
{
// Definir resolução
Resolution resolution = new Resolution(300);
// Criar dispositivo JPEG com atributos especificados
// Largura, Altura, Resolução
JpegDevice JpegDevice = new JpegDevice(500, 700, resolution);
// Converta uma página específica e salve a imagem para transmitir
JpegDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".Jpg");
}

Converter PDF para imagens JPG usando C#
Conversão de PDF para BMP usando C#
Você pode converter arquivos PDF em imagens BMP programaticamente seguindo as etapas abaixo:
- Crie uma instância da classe Document com o caminho do arquivo de entrada.
- Percorra todas as páginas do PDF usando a coleção Document.Pages e faça o seguinte:
- Crie uma instância da classe Resolution e defina seu valor.
- Crie uma instância da classe BmpDevice e passe o objeto Width, Height e Resolution.
- Chame o método Process(Page, String) com o número da página e o caminho da imagem BMP de saída para converter a página em um BMP.
O exemplo de código a seguir mostra como converter páginas PDF em imagens BMP usando C#.
// Abrir documento
Document pdfDocument = new Document("C:\\Files\\sample.pdf");
foreach (var page in pdfDocument.Pages)
{
// Definir resolução
Resolution resolution = new Resolution(300);
// Criar dispositivo PNG com atributos especificados
// Largura, Altura, Resolução
BmpDevice BmpDevice = new BmpDevice(500, 700, resolution);
// Converta uma página específica e salve a imagem para transmitir
BmpDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".bmp");
}

Conversão de PDF para BMP usando C#
Conversão de PDF para TIFF usando C#
Você pode converter arquivos PDF para TIFF programaticamente seguindo as etapas abaixo:
- Crie uma instância da classe Document com o caminho do arquivo de entrada.
- Inicialize uma instância da classe Resolution e defina seu valor.
- Crie uma instância da classe TiffSettings.
- Defina várias propriedades, como Compressão, Profundidade, Forma e SkipBlankPages, etc.
- Crie uma instância da classe TiffDevice com os objetos Resolution e TiffSettings.
- Chame o método Process(Document, String) com o objeto Document e o caminho do arquivo TIFF de saída para converter o documento em um TIFF.
O exemplo de código a seguir mostra como converter um arquivo PDF em um TIFF usando C#.
// Abrir documento
Document pdfDocument = new Document("C:\\Files\\sample.pdf");
// Definir resolução
Resolution resolution = new Resolution(300);
// Criar objeto TiffSettings
TiffSettings tiffSettings = new TiffSettings
{
Compression = CompressionType.None,
Depth = ColorDepth.Default,
Shape = ShapeType.Portrait,
SkipBlankPages = false
};
// Criar dispositivo TIFF
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);
// Converta uma página específica e salve a imagem para transmitir
tiffDevice.Process(pdfDocument, "C:\\Files\\AllPagesToTIFF_out.tif");

Conversão de PDF para TIFF usando C#
A classe TiffSettings fornece várias configurações para converter um PDF em TIFF. Você pode definir Brightness, Compression, CoordinateType, Depth, Margins, Shape e SkipBlankPages enquanto converte PDF para TIFF.
Extraia imagens de documentos PDF usando C#
Você pode extrair todas as imagens de qualquer arquivo PDF programaticamente seguindo as etapas abaixo:
- Crie uma instância da classe Document com o caminho do arquivo de entrada.
- Para cada página, crie uma instância XImage para cada imagem na coleção Page.Resources.Images.
- Crie uma instância da classe FileStream com o caminho do arquivo de imagem de saída.
- Chame o método Save() com o objeto FileStream para salvar a imagem
- Finalmente, feche o FileStream usando o método Close().
O exemplo de código a seguir mostra como extrair imagens de um documento PDF usando C#.
// Abrir documento
Document pdfDocument = new Document("C:\\Files\\sample.pdf");
// Percorrer as páginas
foreach (var page in pdfDocument.Pages)
{
int imageCounter = 1;
// Percorrer todas as imagens
foreach (XImage image in page.Resources.Images)
{
// Criar fluxo de arquivo para imagem
FileStream outputImage = new FileStream(String.Format("C:\\Files\\Page{0}_Image{1}.jpg", page.Number, imageCounter), FileMode.Create);
// Salvar imagem de saída
image.Save(outputImage);
// Fechar fluxo
outputImage.Close();
imageCounter++;
}
}

Extraia imagens de documentos PDF usando C#
A classe XImage representa a imagem X-Object. Ele fornece várias propriedades e métodos para trabalhar com imagens. A classe XImage fornece os seguintes métodos para salvar o objeto de imagem:
- Salvar (Stream) — Saves image data into stream as JPEG image.
- Salvar (Stream, ImageFormat) — Saves image into stream with requested format.
- O método Save(Stream, Int32) — Salva dados de imagem em stream como imagem JPEG com resolução especificada.
- O método Save(Stream, ImageFormat, Int32) — Salva a imagem no fluxo com o formato solicitado e a resolução especificada.
A coleção Page.Resources.Images representa a coleção de imagens para a página específica.
Obtenha uma licença gratuita
Você pode experimentar a API sem limitações de avaliação solicitando uma licença temporária gratuita.
Conclusão
Neste artigo, você aprendeu como converter páginas de arquivos PDF em imagens usando C#. Você também aprendeu como converter PDF para PNG, PDF para JPG, PDF para BMP e PDF para TIFF programaticamente. Além disso, você aprendeu como extrair imagens de um arquivo PDF usando C#. A API também oferece opções de compactação, criação e manipulação de tabelas, funções de gráficos e imagens, ampla funcionalidade de hiperlink, tarefas de carimbo e marca d’água, controles de segurança estendidos e manipulação de fontes personalizadas. Você pode aprender mais sobre Aspose.PDF para .NET API usando a documentação. Em caso de qualquer ambiguidade, não hesite em contactar-nos no fórum.