PDF é um formato popular para compartilhamento e impressão de documentos devido ao seu layout consistente. No entanto, você pode se encontrar em situações em que deseja gerar uma imagem de capa do arquivo PDF ou incorporar suas páginas em uma página da web. Nesses casos, converter o arquivo PDF para o formato de imagem será útil. Para isso, este artigo ensinará como converter páginas PDF em imagens PNG usando C++.
- API C++ para converter páginas PDF em imagens PNG
- Converter páginas PDF em imagens PNG usando C++
- Converter uma única página PDF em uma imagem PNG usando C++
API C++ para converter páginas PDF em imagens PNG
Aspose.PDF for C++ é uma biblioteca C++ que permite criar, ler e atualizar documentos PDF. Além disso, a API suporta a conversão de páginas PDF em imagens PNG. Você pode instalar a API por meio do NuGet ou baixá-la diretamente da seção downloads.
PM> Install-Package Aspose.PDF.Cpp
Converter páginas PDF em imagens PNG usando C++
A seguir estão as etapas para converter páginas PDF em imagens PNG.
- Carregue o arquivo PDF usando a classe Document.
- Iterar pelas páginas do arquivo PDF.
- Dentro do loop, crie uma instância da classe FileStream para a imagem de saída.
- Crie uma instância da classe Resolution.
- Crie uma instância da classe PngDevice.
- Usando o Processo (System::SharedPtr página, System::SharedPtrSystem::IO::Stream output) da classe PngDevice, salve a imagem da página PDF.
O código de exemplo a seguir demonstra como salvar as páginas de um arquivo PDF como imagens PNG usando C++.
// Carregue o arquivo PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\Sample 1.pdf");
// Iterar pelas páginas do PDF
for (auto page : pdfDocument->get_Pages())
{
// Crie uma instância da classe FileStream
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));
// Crie uma instância da classe Resolution
auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);
// Crie uma instância da classe PngDevice
auto pngDevice = MakeObject<Aspose::Pdf::Devices::PngDevice>(500, 700, resolution);
// Salve a página como imagem
pngDevice->Process(page, imageStream);
// Fechar o fluxo
imageStream->Close();
}
Converter uma única página PDF em uma imagem PNG usando C++
A seguir estão as etapas para converter uma única página de um arquivo PDF em uma imagem PNG.
- Carregue o arquivo PDF usando a classe Document.
- Recupere a página que você deseja converter usando o método Document->getPages()->idxget(int32t index).
- Crie uma instância da classe FileStream para a imagem de saída.
- Instancie um objeto da classe Resolution.
- Crie uma instância da classe PngDevice.
- Usando o Processo (System::SharedPtr página, System::SharedPtrSystem::IO::Stream output) da classe PngDevice, salve a imagem da página PDF.
O código de exemplo a seguir mostra como converter uma única página PDF em uma imagem PNG usando C++.
// Carregue o arquivo PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\PDF\\Sample 1.pdf");
// Recuperar a primeira página
auto page = pdfDocument->get_Pages()->idx_get(1);
// Crie uma instância da classe FileStream
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));
// Crie uma instância da classe Resolution
auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);
// Crie uma instância da classe PngDevice
auto pngDevice = MakeObject<Aspose::Pdf::Devices::PngDevice>(500, 700, resolution);
// Salve a página como imagem
pngDevice->Process(page, imageStream);
// Fechar o fluxo
imageStream->Close();
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 as páginas de um arquivo PDF em imagens PNG usando C++. Você pode converter todas as páginas ou páginas selecionadas de arquivos PDF em imagens PNG. Aspose.PDF para C++ é uma API robusta com muitos recursos adicionais para automatizar seus fluxos de trabalho relacionados a PDF. Você pode explorar a API em detalhes visitando a documentação oficial. Em caso de dúvidas, sinta-se à vontade para entrar em contato conosco em nosso fórum de suporte gratuito.