Casi d'uso

Casi d'uso

Questa guida dimostra casi d’uso reali per Aspose.PDF FOSS per C++, includendo la generazione di documenti, la conversione PDF-to-image, l’estrazione di testo, la distribuzione sicura e la raccolta dati AcroForm. La libreria si collega solo alla libreria standard di C++ e richiede un compilatore C++20.

Generazione di documenti

Crea un PDF da zero aggiungendo pagine a un nuovo Document e salvando il risultato. Questo modello è alla base della generazione di fatture, della stampa di certificati e dei flussi di produzione di estratti conto:

#include <aspose/pdf/document.hpp>

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

Conversione PDF-to-Image

Renderizza una pagina in un’immagine raster per miniature, output pronto per la stampa o baseline di regressione visiva. PngDevice, JpegDevice, BmpDevice e TiffDevice elaborano ciascuna una pagina a una data risoluzione:

#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);
}

Estrazione di testo e indicizzazione

Estrai il testo completo di un documento con TextAbsorber per l’indicizzazione della ricerca, pipeline di data mining o verifica automatica del contenuto nei suite di test:

#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";
}

Distribuzione sicura dei documenti

Cifra un documento con password separate per utente e proprietario prima della distribuzione. La password utente è necessaria per aprire il file; la password proprietario controlla le autorizzazioni come la stampa e l’estrazione del contenuto:

#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 Raccolta dati

Leggi i valori inviati da un modulo PDF compilato iterando Form.Fields() e stampando il nome e il valore corrente di ogni campo — utile per elaborare moduli di domanda compilati senza un server di invio separato:

#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";
    }
}

Vedi anche

 Italiano