उपयोग मामलों
यह गाइड Aspose.PDF FOSS for C++ के वास्तविक-विश्व उपयोग मामलों को दर्शाता है, जिसमें दस्तावेज़ निर्माण, PDF-से-इमेज रूपांतरण, टेक्स्ट एक्सट्रैक्शन, सुरक्षित वितरण, और AcroForm डेटा संग्रहण शामिल हैं। यह लाइब्रेरी केवल C++ मानक लाइब्रेरी के विरुद्ध लिंक करती है और इसे C++20 कंपाइलर की आवश्यकता होती है।
दस्तावेज़ निर्माण
एक नया Document बनाकर उसमें पृष्ठ जोड़कर और परिणाम सहेजकर शून्य से PDF बनाएं। यह पैटर्न इनवॉइस निर्माण, प्रमाणपत्र प्रिंटिंग, और स्टेटमेंट उत्पादन पाइपलाइन के आधार पर काम करता है:
#include <aspose/pdf/document.hpp>
int main() {
Aspose::Pdf::Document doc;
doc.Pages().Add();
doc.SetTitle("Monthly Report");
doc.Save("report.pdf");
}PDF-से-इमेज रूपांतरण
थंबनेल, प्रिंट-रेडी आउटपुट, या विज़ुअल रेग्रेशन बेसलाइन के लिए किसी पृष्ठ को रास्टर इमेज में रेंडर करें। PngDevice, JpegDevice, BmpDevice, और TiffDevice प्रत्येक निर्धारित रेजोल्यूशन पर एक समय में एक पृष्ठ को प्रोसेस करते हैं:
#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);
}टेक्स्ट एक्सट्रैक्शन और इंडेक्सिंग
एक दस्तावेज़ का पूर्ण पाठ TextAbsorber के साथ निकालें ताकि खोज अनुक्रमण, डेटा-खनन पाइपलाइन, या परीक्षण सूट में स्वचालित सामग्री सत्यापन किया जा सके:
#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";
}सुरक्षित दस्तावेज़ वितरण
वितरण से पहले दस्तावेज़ को अलग उपयोगकर्ता और स्वामी पासवर्ड के साथ एन्क्रिप्ट करें। फ़ाइल खोलने के लिए उपयोगकर्ता पासवर्ड आवश्यक है; स्वामी पासवर्ड प्रिंटिंग और सामग्री निष्कर्षण जैसी अनुमतियों को नियंत्रित करता है:
#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 डेटा संग्रह
भरे हुए PDF फ़ॉर्म से प्रस्तुत मानों को Form.Fields() के माध्यम से इटररेट करके पढ़ें और प्रत्येक फ़ील्ड का नाम तथा वर्तमान मान प्रिंट करें — अलग फ़ॉर्म-सबमिशन सर्वर के बिना भरे हुए आवेदन फ़ॉर्म को प्रोसेस करने में उपयोगी:
#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";
}
}