Casos de uso

Casos de uso

Esta guía muestra casos de uso reales del FOSS Aspose.PDF para C++, incluyendo generación de documentos, conversión de PDF a imagen, extracción de texto, distribución segura y recopilación de datos AcroForm. La biblioteca se enlaza únicamente con la biblioteca estándar de C++ y requiere un compilador C++20.

Generación de documentos

Cree un PDF desde cero añadiendo páginas a un nuevo Document y guardando el resultado. Este patrón sustenta la generación de facturas, la impresión de certificados y las canalizaciones de producción de estados de cuenta:

#include <aspose/pdf/document.hpp>

int main() {
    Aspose::Pdf::Document doc;
    doc.Pages().Add();
    doc.SetTitle("Monthly Report");
    doc.Save("report.pdf");
}

Conversión de PDF a Imagen

Renderice una página a una imagen raster para miniaturas, salida lista para imprimir o bases de referencia de regresión visual. PngDevice, JpegDevice, BmpDevice y TiffDevice procesan cada una una página a una resolución determinada:

#include <aspose/pdf/document.hpp>
#include <aspose/pdf/png_device.hpp>
#include <aspose/pdf/resolution.hpp>
#include <fstream>

int main() {
    Aspose::Pdf::Document doc("input.pdf");
    Aspose::Pdf::Devices::PngDevice png(Aspose::Pdf::Devices::Resolution(150));
    std::ofstream out("page1.png", std::ios::binary);
    png.Process(doc.Pages()[1], out);
}

Extracción de texto e indexación

Extrae el texto completo de un documento con TextAbsorber para la indexación de búsqueda, pipelines de minería de datos o verificación automatizada de contenido en suites de pruebas:

#include <aspose/pdf/document.hpp>
#include <aspose/pdf/text_absorber.hpp>
#include <iostream>

int main() {
    Aspose::Pdf::Document doc("input.pdf");
    Aspose::Pdf::Text::TextAbsorber absorber;
    absorber.Visit(doc);
    std::cout << absorber.Text() << "\n";
}

Distribución segura de documentos

Encripta un documento con contraseñas de usuario y propietario separadas antes de la distribución. La contraseña de usuario es necesaria para abrir el archivo; la contraseña de propietario controla permisos como imprimir y extraer contenido:

#include <aspose/pdf/document.hpp>

int main() {
    Aspose::Pdf::Document doc("report.pdf");
    doc.Encrypt("user-password", "owner-password",
                Aspose::Pdf::Permissions(),
                Aspose::Pdf::CryptoAlgorithm::AESx256);
    doc.Save("report-secured.pdf");
}

AcroForm Recopilación de datos

Lee los valores enviados de nuevo desde un formulario PDF rellenado iterando Form.Fields() y mostrando el nombre y el valor actual de cada campo — útil para procesar formularios de solicitud completados sin un servidor de envío de formularios separado:

#include <aspose/pdf/document.hpp>
#include <aspose/pdf/forms/form.hpp>
#include <iostream>

int main() {
    Aspose::Pdf::Document doc("submitted-form.pdf");
    auto& form = doc.Form();
    for (auto* field : form.Fields()) {
        std::cout << field->PartialName() << " = " << field->Value() << "\n";
    }
}

Ver también

 Español