Przypadki użycia

Przypadki użycia

Ten przewodnik przedstawia rzeczywiste przypadki użycia Aspose.PDF FOSS dla C++, w tym generowanie dokumentów, konwersję PDF na obrazy, wydobywanie tekstu, bezpieczną dystrybucję oraz AcroForm zbieranie danych. Biblioteka linkuje wyłącznie z biblioteką standardową C++ i wymaga kompilatora C++20.

Generowanie dokumentów

Utwórz PDF od podstaw, dodając strony do nowego Document i zapisując wynik. Ten wzorzec leży u podstaw generowania faktur, drukowania certyfikatów oraz pipeline’ów produkcji wyciągów:

#include <aspose/pdf/document.hpp>

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

Konwersja PDF na obraz

Renderuj stronę do obrazu rastrowego w celu utworzenia miniaturek, wyjścia gotowego do druku lub bazowych linii regresji wizualnej. PngDevice, JpegDevice, BmpDevice i TiffDevice przetwarzają każdą stronę osobno przy zadanej rozdzielczości:

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

Wydobywanie tekstu i indeksowanie

Wyodrębnij pełny tekst dokumentu przy użyciu TextAbsorber w celu indeksowania wyszukiwania, potoków data-miningu lub automatycznej weryfikacji treści w zestawach testowych:

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

Bezpieczna dystrybucja dokumentów

Zaszyfruj dokument przy użyciu oddzielnych haseł użytkownika i właściciela przed dystrybucją. Hasło użytkownika jest wymagane do otwarcia pliku; hasło właściciela reguluje uprawnienia, takie jak drukowanie i wyodrębnianie treści:

#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 Zbieranie danych

Odczytaj przesłane wartości z wypełnionego formularza PDF, iterując Form.Fields() i wypisując nazwę każdego pola oraz jego bieżącą wartość — przydatne do przetwarzania wypełnionych formularzy aplikacyjnych bez osobnego serwera obsługującego przesyłanie formularzy:

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

Zobacz także

 Polski