Dividir arquivos PDF usando C++

PDF é um formato padrão para compartilhamento de documentos pela Internet. Seu suporte global e layout consistente o tornam a escolha ideal para esses cenários. Mas pode haver situações em que compartilhar o arquivo PDF completo não seja uma opção ideal ou apropriada. Para esses casos, você pode dividir o arquivo PDF de acordo com suas necessidades. Você pode fazer isso manualmente, mas isso pode ser menos eficiente e demorado. Como alternativa, você pode dividir o documento PDF programaticamente. Neste artigo, você aprenderá como dividir arquivos PDF usando C++.

API C++ para dividir arquivos PDF

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

PM> Install-Package Aspose.PDF.Cpp

Dividir um arquivo PDF usando C++

O Aspose.PDF para C++ permite que você salve cada página do arquivo PDF como um documento PDF separado. A seguir estão as etapas para conseguir isso usando C++.

Veja a seguir o código de exemplo para dividir um arquivo PDF usando C++.

// Carregar arquivo PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// Contador de páginas
int pageCount = 1;

// Percorra todas as páginas
for (auto page : pdfDocument->get_Pages())
{
	// Criar novo documento
	auto newDoc = MakeObject<Document>();

	// Adicionar página ao documento
	newDoc->get_Pages()->Add(page);

	// Salvar como PDF
	newDoc->Save(u"OutputDirectory\\Sample_Page_" + System::Convert::ToString(pageCount) + u"_out.pdf");
	pageCount++;
}

Dividir páginas PDF selecionadas usando C++

Em vez de salvar cada página separadamente, você pode especificar diferentes condições para dividir o arquivo PDF. A seguir estão as etapas para dividir páginas PDF selecionadas usando C++.

Veja a seguir o código de exemplo para dividir páginas PDF específicas usando C++.

// Carregar arquivo PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// Criar novo documento
auto newDoc = MakeObject<Document>();

// Contador de páginas
int pageCount = 1;

// Percorra todas as páginas
for (auto page : pdfDocument->get_Pages())
{
	// Obtenha apenas páginas pares
	if (pageCount % 2 == 0)
	{
		// Adicionar página ao documento
		newDoc->get_Pages()->Add(page);
	}
	pageCount++;
}

// Salvar como PDF
newDoc->Save(u"OutputDirectory\\Sample_Even_Pages_out.pdf");

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 dividir arquivos PDF em páginas individuais usando C++. Além disso, você aprendeu a usar critérios personalizados para personalizar a divisão de arquivos PDF. Aspose.PDF for C++ é uma vasta biblioteca com muitos recursos adicionais para trabalhar com arquivos PDF. Você pode explorar a API em detalhes usando a documentação oficial. Em caso de dúvidas, sinta-se à vontade para entrar em contato conosco em nosso fórum de suporte gratuito.

Veja também