Felhasználási esetek
Ez az útmutató valós példákat mutat be a Aspose.PDF FOSS for C++ használati eseteire, beleértve a dokumentumgenerálást, PDF-kép átalakítást, szövegkinyerést, biztonságos terjesztést és a AcroForm adatgyűjtést. A könyvtár csak a C++ szabványos könyvtárra hivatkozik, és C++20 fordítót igényel.
Dokumentumgenerálás
Készíts egy PDF-et a semmiből, oldalak hozzáadásával egy új Document objektumhoz, majd mentve az eredményt. Ez a minta a számlagenerálás, tanúsítványnyomtatás és kimutatásgyártási folyamatok alapja:
#include <aspose/pdf/document.hpp>
int main() {
Aspose::Pdf::Document doc;
doc.Pages().Add();
doc.SetTitle("Monthly Report");
doc.Save("report.pdf");
}PDF-kép átalakítás
Renderelj egy oldalt raszteres képpé bélyegképekhez, nyomtatásra kész kimenethez vagy vizuális regressziós alapvonalakhoz. PngDevice, JpegDevice, BmpDevice és TiffDevice egy időben egy oldalt dolgoznak fel adott felbontásban:
#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);
}Szövegkinyerés és indexelés
A dokumentum teljes szövegének kinyerése a TextAbsorber segítségével keresőindexeléshez, adatbányászati folyamatokhoz vagy automatizált tartalom-ellenőrzéshez tesztkészletekben:
#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";
}Biztonságos dokumentumterjesztés
Titkosíts egy dokumentumot külön felhasználói és tulajdonosi jelszavakkal a terjesztés előtt. A felhasználói jelszó szükséges a fájl megnyitásához; a tulajdonosi jelszó a jogosultságokat szabályozza, például a nyomtatást és a tartalomkivonást:
#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 adatgyűjtés
Olvasd vissza a benyújtott értékeket egy kitöltött PDF űrlapról a Form.Fields() iterálásával, és írd ki minden mező nevét és aktuális értékét — hasznos a kitöltött jelentkezési űrlapok feldolgozásához külön űrlapbeküldő szerver nélkül:
#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";
}
}