Dividir archivos PDF usando C++

PDF es un formato estándar para compartir documentos a través de Internet. Su soporte global y diseño consistente lo convierten en una opción ideal para tales escenarios. Pero puede haber situaciones en las que compartir el archivo PDF completo no sea una opción ideal o adecuada. Para tales casos, puede dividir el archivo PDF según sus requisitos. Puede hacerlo manualmente, pero eso podría resultar menos eficiente y llevar más tiempo. Alternativamente, puede dividir el documento PDF mediante programación. En este artículo, aprenderá cómo dividir archivos PDF usando C++.

API de C++ para dividir archivos PDF

Aspose.PDF for C++ es una biblioteca de C++ que le permite crear, leer y actualizar documentos PDF. Además, la API admite la división de archivos PDF en varios documentos. Puede instalar la API a través de NuGet o descargarla directamente desde la sección descargas.

PM> Install-Package Aspose.PDF.Cpp

Dividir un archivo PDF usando C++

Aspose.PDF for C++ le permite guardar cada página del archivo PDF como un documento PDF separado. Los siguientes son los pasos para lograr esto usando C++.

El siguiente es el código de muestra para dividir un archivo PDF usando C++.

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

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

// Pasar por todas las páginas
for (auto page : pdfDocument->get_Pages())
{
	// Crear nuevo documento
	auto newDoc = MakeObject<Document>();

	// Agregar página al documento
	newDoc->get_Pages()->Add(page);

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

Dividir páginas PDF seleccionadas usando C++

En lugar de guardar cada página por separado, puede especificar diferentes condiciones para dividir el archivo PDF. Los siguientes son los pasos para dividir páginas PDF seleccionadas usando C++.

El siguiente es el código de muestra para dividir páginas PDF específicas usando C++.

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

// Crear nuevo documento
auto newDoc = MakeObject<Document>();

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

// Pasar por todas las páginas
for (auto page : pdfDocument->get_Pages())
{
	// Obtener solo páginas pares
	if (pageCount % 2 == 0)
	{
		// Agregar página al documento
		newDoc->get_Pages()->Add(page);
	}
	pageCount++;
}

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

Obtenga una licencia gratis

Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.

Conclusión

En este artículo, ha aprendido a dividir archivos PDF en páginas individuales usando C++. Además, ha aprendido a utilizar criterios personalizados para personalizar la división de archivos PDF. Aspose.PDF for C++ es una amplia biblioteca con muchas funciones adicionales para trabajar con archivos PDF. Puede explorar la API en detalle utilizando la documentación oficial. Si tiene alguna pregunta, no dude en comunicarse con nosotros en nuestro foro de soporte gratuito.

Ver también