Aspose.PDF for C++
Δημιουργία, επεξεργασία και μετατροπή αρχείων PDF μέσω C++ API
Το C++ API για εργασία με αρχεία PDF, επιτρέπει στο Software Professional να δημιουργεί, να τροποποιεί, να συγχωνεύει/διαχωρίζει, να εξάγει και να μετατρέπει αρχεία PDF.
Aspose.PDF για C++ είναι μια πολύ ισχυρή βιβλιοθήκη επεξεργασίας εγγράφων PDF C++ που επιτρέπει στους προγραμματιστές λογισμικού να δημιουργούν και να χειρίζονται Έγγραφα PDF χωρίς τη χρήση του Adobe Acrobat ή άλλων εφαρμογών τρίτων. Η βιβλιοθήκη είναι πολύ εύκολη στον χειρισμό και μπορεί εύκολα να εφαρμόσει πλούσιες δυνατότητες για τη δημιουργία αρχείων PDF από την αρχή. Η βιβλιοθήκη μπορεί να χρησιμοποιηθεί για τη δημιουργία οποιουδήποτε τύπου εφαρμογής C++ 32-bit και 64-bit και μπορεί να αποδώσει εξίσου καλά στον διακομιστή καθώς και στην πλευρά του πελάτη.
Το Aspose.PDF για C++ έχει ενσωματώσει ένα ευρύ φάσμα δυνατοτήτων για τη δημιουργία, επεξεργασία, ανάλυση, χειρισμό και μετατροπή εγγράφων PDF, όπως δημιουργία φορμών PDF και διαχείριση πεδίων φόρμας, εισαγωγή ή αντικατάσταση εικόνων σε PDFS, προσθήκη κειμένου σε PDF , Προσαρμοσμένη διαχείριση γραμματοσειρών, Ορισμός περιθωρίου σελίδας, διαχείριση μεγέθους σελίδας, ορισμός τύπου μετάβασης PDF, προσθήκη και τροποποίηση συνημμένων και σχολιασμών, εισαγωγή υδατογραφημάτων σε PDF, προσθήκη και διαχείριση σελιδοδεικτών, διαχωρισμός εγγράφων PDF, συγχώνευση PDF, εισαγωγή νέων σελίδων, μετατροπή σελίδων σε εικόνα , ορίστε μεταδεδομένα εγγράφων PDF και πολλά άλλα.
Το Aspose.PDF για C++ υποστηρίζει επίσης ένα ευρύ φάσμα λειτουργιών ασφαλείας, όπως προστασία με κωδικό πρόσβασης και ψηφιακές υπογραφές, που μπορούν να χρησιμοποιηθούν για την προστασία ευαίσθητων πληροφοριών σε ένα έγγραφο PDF. Η βιβλιοθήκη παρέχει επίσης ένα ευρύ φάσμα επιλογών για τη βελτιστοποίηση και τη συμπίεση αρχείων PDF, οι οποίες μπορούν να βοηθήσουν στη μείωση του μεγέθους του αρχείου τους και στην ευκολότερη κοινή χρήση τους. Επιπλέον, η βιβλιοθήκη υποστηρίζει πλήρως ένα ευρύ φάσμα επιλογών μορφοποίησης, όπως γραμματοσειρά, χρώμα και στοίχιση, που επιτρέπει στους προγραμματιστές να δημιουργούν έγγραφα με επαγγελματική εμφάνιση. Συνολικά, το Aspose.PDF για C++ είναι μια από τις καλύτερες βιβλιοθήκες για εργασία με έγγραφα PDF σε εφαρμογές C++.
Ξεκινώντας με το Aspose.PDF για C++
Ο προτεινόμενος τρόπος εγκατάστασης του Aspose.PDF για C++ είναι η χρήση του NuGet. Χρησιμοποιήστε την ακόλουθη εντολή για ομαλή εγκατάσταση.
Εγκαταστήστε το Aspose.PDF για C++ μέσω NuGet
NuGet\Install-Package Aspose.PDF -prerelease
Μπορείτε επίσης να το κατεβάσετε απευθείας από τη σελίδα προϊόντος Aspose PDF.
Δημιουργία και επεξεργασία αρχείων PDF μέσω C++ API
Το Aspose.PDF για C++ έχει συμπεριλάβει πλήρη υποστήριξη για τη δημιουργία εγγράφων PDF, την ανάγνωση και τις τροποποιήσεις εντός εφαρμογών C++ χωρίς την ανάγκη εγκατάστασης άλλου λογισμικού στο μηχάνημα του χρήστη. Η βιβλιοθήκη προσφέρει απλές και εύχρηστες μεθόδους για τη δημιουργία PDF, γεγονός που διευκολύνει τους προγραμματιστές να προσθέτουν και να αφαιρούν σελίδες, να προσθέτουν κείμενο, εικόνες και άλλα στοιχεία σε ένα νέο έγγραφο. Η βιβλιοθήκη έχει επίσης παρέχει διάφορες μεθόδους για το άνοιγμα υπαρχόντων εγγράφων PDF, όπως το άνοιγμα εγγράφων με τον καθορισμό ενός ονόματος αρχείου, το άνοιγμα ενός εγγράφου από τη ροή, το άνοιγμα ενός κρυπτογραφημένου εγγράφου, το άνοιγμα ενός εγγράφου από μια προσωρινή μνήμη και πολλά άλλα.
δημιουργία αρχείων PDF μέσω C++ API
void CreatePDF() {
// String for path name.
String _dataDir("C:\\Samples\\");
// String for file name.
String filename("sample-new.pdf");
// Initialize document object
auto document = MakeObject();
// Add page
auto page = document->get_Pages()->Add();
// Add text to new page
auto textFragment = MakeObject(u"Hello World!");
page->get_Paragraphs()->Add(textFragment);
// Save updated PDF
String outputFileName = _dataDir + filename;
document->Save(outputFileName);
}
Πώς να ασφαλίσετε αρχεία PDF μέσω C++ API;
Το Aspose.PDF για C++ έχει παράσχει διάφορες σημαντικές δυνατότητες για την ασφάλεια εγγράφων PDF μέσα σε εφαρμογές C++. Υποστηρίζει προστασία ευαίσθητων πληροφοριών μέσα σε αρχεία PDF με την εφαρμογή κωδικών πρόσβασης καθώς και με τη χρήση ψηφιακών υπογραφών. Είναι επίσης δυνατό να αλλάξετε τον κωδικό πρόσβασης ενός υπάρχοντος PDF και επίσης να καθορίσετε εάν το PDF προέλευσης προστατεύεται με κωδικό πρόσβασης. Η βιβλιοθήκη επιτρέπει επίσης την κρυπτογράφηση και αποκρυπτογράφηση εγγράφων PDF με μερικές μόνο γραμμές κώδικα. Μπορείτε να ορίσετε προνόμια όπως ο περιορισμός στους χρήστες από την αλλαγή του περιεχομένου ενός εγγράφου, η εξαγωγή εικόνας ή κειμένου από το αρχείο PDF και να επιτρέπεται μόνο η ανάγνωση οθόνης κ.ο.κ.
Πώς να ορίσετε τα προνόμια του αρχείου PDF μέσω C++ API
void SecuringAndSigning::SetPrivilegesOnExistingPDF() {
// String for path name.
String _dataDir("C:\\Samples\\");
// Load a source PDF file
auto document = MakeObject(_dataDir + u"input.pdf");
// Instantiate Document Privileges object
// Apply restrictions on all privileges
auto documentPrivilege = DocumentPrivilege::get_ForbidAll();
// Only allow screen reading
documentPrivilege->set_AllowScreenReaders(true);
// Encrypt the file with User and Owner password.
// Need to set the password, so that once the user views the file with user password,
// Only screen reading option is enabled
document->Encrypt(u"user", u"owner", documentPrivilege, CryptoAlgorithm::AESx128, false);
// Save updated document
document->Save(_dataDir + u"SetPrivileges_out.pdf");
}
Μετατροπή εγγράφων PDF μέσω C++ API
Το Aspose.PDF για C++ καθιστά εύκολο για τους προγραμματιστές λογισμικού να μετατρέπουν εύκολα έγγραφα PDF σε πολλές άλλες υποστηριζόμενες μορφές αρχείων μέσα στις δικές τους εφαρμογές C++. Η βιβλιοθήκη έχει παράσχει υποστήριξη για μετατροπή αρχείων PDF σε διάφορες δημοφιλείς μορφές, καθώς και μετατροπή από άλλες μορφές σε PDF. Μπορείτε να μετατρέψετε PDF σε έγγραφα Word, παρουσιάσεις PowerPoint, Microsoft Excel (XLSX, ODS, CSV και SpreadSheetML), EPUB, XPS, Postscript, κείμενο, PDF/A και πολλές άλλες μορφές αρχείων. Η βιβλιοθήκη περιλαμβάνει επίσης ισχυρή υποστήριξη για τη μετατροπή εικόνων σε PDF καθώς και τη μετατροπή σελίδων PDF ως εικόνων σε JPEG, PNG και άλλες μορφές.
Μετατροπή PDF σε XLS σε C++
void ConvertPDFtoExcel()
{
std::clog << __func__ << ": Start" << std::endl;
// String for path name
String _dataDir("C:\\Samples\\Conversion\\");
// String for file name
String infilename("sample.pdf");
String outfilename("PDFToExcel.xls");
// Open document
auto document = MakeObject(_dataDir + infilename);
try {
// Save the output in XLS format
document->Save(_dataDir + outfilename, SaveFormat::Excel);
}
catch (Exception ex) {
std::cerr << ex->get_Message();
}
std::clog << __func__ << ": Finish" << std::endl;
}
Βελτιστοποίηση εγγράφων PDF μέσω C++ API
Το Aspose.PDF για C++ API παρέχει πλήρη υποστήριξη για τη βελτιστοποίηση εγγράφων PDF εντός εφαρμογών C++. Η βελτιστοποίηση PDF αφορά κυρίως τη μείωση του μεγέθους των αρχείων PDF για τη βελτίωση της ταχύτητας φόρτωσής τους. Η βιβλιοθήκη χρησιμοποιεί διάφορες τεχνικές για τη βελτιστοποίηση εγγράφων, όπως συρρίκνωση σελίδας ή συμπίεση όλων των εικόνων, επαναχρησιμοποίηση περιεχομένου σελίδας, συγχώνευση διπλών ροών, κατάργηση ενσωμάτωσης γραμματοσειρών, αφαίρεση αχρησιμοποίητων αντικειμένων και πεδίων φόρμας, αφαίρεση ισοπέδωσης σχολιασμών και ούτω καθεξής. Επιπλέον, υποστηρίζει επίσης τη βελτιστοποίηση του περιεχομένου του εγγράφου PDF σας για καλύτερη κατάταξη στις μηχανές αναζήτησης.
Πώς να συμπιέσω εικόνες σε PDF μέσω C++;
void CompressImage() {
// String for path name
String _dataDir("C:\\Samples\\");
// String for input file name
String infilename("ShrinkDocument.pdf");
String outfilename("ShrinkDocument_out.pdf");
// Open document
auto document = MakeObject(_dataDir + infilename);
// Initialize OptimizationOptions
auto optimizationOptions = MakeObject();
// Set CompressImages option
optimizationOptions->get_ImageCompressionOptions()->set_CompressImages(true);
// Set ImageQuality option
optimizationOptions->get_ImageCompressionOptions()->set_ImageQuality(50);
// Optimize PDF document using OptimizationOptions
document->OptimizeResources(optimizationOptions);
// Save updated document
document->Save(_dataDir + outfilename);
}