PDF é um formato popular para compartilhar informações pela Internet. Na maioria das vezes, os arquivos PDF contêm imagens junto com texto e outros elementos. Pode haver cenários em que você precise extrair essas imagens de arquivos PDF para processá-las ainda mais. Para isso, este artigo ensinará como extrair imagens de arquivos PDF usando C++.

API C++ para extrair imagens de arquivos PDF

Aspose.PDF for C++ é uma biblioteca C++ que permite criar, ler e modificar documentos PDF. Além disso, a API suporta a extração de imagens de arquivos PDF. Você pode instalar a API por meio do NuGet ou baixá-la diretamente da seção downloads.

PM> Install-Package Aspose.PDF.Cpp

Extraia imagens de arquivos PDF usando C++

A seguir estão as etapas para extrair imagens de um arquivo PDF.

  • Carregue o documento PDF usando a classe Document.
  • Obtenha as páginas do documento usando o método Document->getPages() e itere sobre elas.
  • Obtenha imagens para cada página usando o método page->getResources()->getImages() e itere sobre elas.
  • Crie um objeto FileStream para cada imagem e salve-o como JPEG, PNG, etc.

O código de exemplo a seguir demonstra como extrair imagens de um arquivo PDF usando C++.

// Carregar o documento PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\SampleImages2.pdf");

// Inicialize o contador de imagens
int imageCounter = 1;

// Iterar pelas páginas do documento
for (auto page : pdfDocument->get_Pages())
{
	// Iterar pelas imagens da página
	for (auto image : page->get_Resources()->get_Images())
	{
		// Crie uma instância do FileStream
		System::SharedPtr<System::IO::FileStream> outputImage = System::IO::File::Create(String::Format(u"OutputDirectory\\Image{0}.jpg", imageCounter));

		// Salve a imagem
		image->Save(outputImage, System::Drawing::Imaging::ImageFormat::get_Jpeg());

		// Feche o FileStream
		outputImage->Close();

		// Incrementar o contador de imagens
		imageCounter++;
	}
}

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 extrair imagens de arquivos PDF usando C++. Usamos a API Aspose.PDF para C++ robusta e fácil de usar para conseguir isso. A API fornece vários recursos adicionais para trabalhar com arquivos PDF que você pode explorar em detalhes visitando a documentação oficial. Se você tiver alguma dúvida sobre qualquer aspecto da API, sinta-se à vontade para entrar em contato conosco em nosso fórum de suporte gratuito.

Veja também