Aspose.PDF for C++
Créer, modifier et convertir des fichiers PDF via l'API C++
L'API C++ pour travailler avec des fichiers PDF permet aux professionnels du logiciel de générer, modifier, fusionner/diviser, extraire et convertir des fichiers PDF.
Aspose.PDF for C++ est une bibliothèque C++ de traitement de documents PDF très puissante qui permet aux développeurs de logiciels de générer et de manipuler Documents PDF sans utiliser Adobe Acrobat ou des applications tierces. La bibliothèque est très simple à gérer et peut facilement mettre en œuvre de riches fonctionnalités pour créer des fichiers PDF à partir de zéro. La bibliothèque peut être utilisée pour créer tout type d'application C++ 32 bits et 64 bits et peut fonctionner aussi bien sur le serveur que côté client.
Aspose.PDF pour C++ intègre un large éventail de fonctionnalités pour créer, modifier, analyser, manipuler et convertir des documents PDF, telles que la création de formulaires PDF et la gestion des champs de formulaire, l'insertion ou le remplacement d'images dans PDFS, l'ajout de texte au PDF. , Gestion des polices personnalisées, définir la marge de la page, gérer la taille de la page, définir le type de transition PDF, ajouter et modifier des pièces jointes et des annotations, insérer des filigranes dans un PDF, ajouter et gérer des signets, diviser des documents PDF, fusionner des PDF, insérer de nouvelles pages, transformer des pages en image , définissez les métadonnées des documents PDF et bien d'autres encore.
Aspose.PDF pour C++ prend également en charge un large éventail de fonctionnalités de sécurité, telles que la protection par mot de passe et les signatures numériques, qui peuvent être utilisées pour protéger les informations sensibles d'un document PDF. La bibliothèque propose également un large éventail d'options pour optimiser et compresser les PDF, ce qui peut aider à réduire la taille de leurs fichiers et à les rendre plus facilement partageables. De plus, la bibliothèque prend entièrement en charge un large éventail d'options de formatage, telles que la police, la couleur et l'alignement, ce qui permet aux développeurs de créer des documents d'aspect professionnel. Dans l'ensemble, Aspose.PDF pour C++ est l'une des meilleures bibliothèques pour travailler avec des documents PDF dans des applications C++.
Premiers pas avec Aspose.PDF pour C++
La méthode recommandée pour installer Aspose.PDF pour C++ consiste à utiliser NuGet. Veuillez utiliser la commande suivante pour une installation fluide.
Installer Aspose.PDF pour C++ via NuGet
NuGet\Install-Package Aspose.PDF -prerelease
vaVous pouvez également le télécharger directement depuis la Page produit Aspose PDF.
Génération et édition de fichiers PDF via l'API C++
Aspose.PDF pour C++ inclut une prise en charge complète de la création, de la lecture et des modifications de documents PDF dans les applications C++ sans qu'aucun autre logiciel ne soit installé sur l'ordinateur de l'utilisateur. La bibliothèque propose des méthodes simples et intuitives pour la création de PDF, ce qui permet aux développeurs d'ajouter et de supprimer facilement des pages, d'ajouter du texte, des images et d'autres éléments à un nouveau document. La bibliothèque propose également diverses méthodes pour ouvrir des documents PDF existants, telles que l'ouverture de documents en spécifiant un nom de fichier, l'ouverture d'un document à partir du flux, l'ouverture d'un document crypté, l'ouverture d'un document à partir d'une mémoire tampon, etc.
créer des fichiers PDF via l'API C++
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);
}
Comment sécuriser des fichiers PDF via l'API C++ ?
Aspose.PDF pour C++ fournit diverses fonctionnalités importantes pour sécuriser les documents PDF dans les applications C++. Il prend en charge la protection des informations sensibles contenues dans les fichiers PDF en appliquant des mots de passe ainsi qu'en utilisant des signatures numériques. Il est également possible de modifier le mot de passe d'un PDF existant et également de déterminer si le PDF source est protégé par mot de passe. La bibliothèque permet également de crypter et déchiffrer des documents PDF avec seulement quelques lignes de code. Vous pouvez définir des privilèges, comme empêcher les utilisateurs de modifier le contenu d'un document, d'extraire une image ou du texte du fichier PDF et d'autoriser uniquement la lecture d'écran, etc.
Comment définir les privilèges d'un fichier PDF via l'API C++
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");
}
Conversion de documents PDF via l'API C++
Aspose.PDF pour C++ permet aux développeurs de logiciels de convertir facilement des documents PDF vers plusieurs autres formats de fichiers pris en charge dans leurs propres applications C++. La bibliothèque prend en charge la conversion de fichiers PDF vers divers formats populaires, ainsi que la conversion d'autres formats en PDF. Vous pouvez convertir des PDF en documents Word, présentations PowerPoint, Microsoft Excel (XLSX, ODS, CSV et SpreadSheetML), EPUB, XPS, Postscript, texte, PDF/A et de nombreux autres formats de fichiers. La bibliothèque inclut également un support important pour la conversion d'images en PDF ainsi que pour la conversion de pages PDF en images au format JPEG, PNG et autres formats.
Convertir un PDF en XLS en 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;
}
Optimiser les documents PDF via l'API C++
L'API Aspose.PDF pour C++ offre une prise en charge complète de l'optimisation des documents PDF dans les applications C++. L'optimisation PDF consiste principalement à réduire la taille des PDF pour améliorer leur vitesse de chargement. La bibliothèque utilise diverses techniques d'optimisation des documents, telles que la réduction de page ou la compression de toutes les images, la réutilisation du contenu de la page, la fusion de flux en double, la désintégration des polices, la suppression des objets et des champs de formulaire inutilisés, la suppression des annotations aplaties, etc. De plus, il prend également en charge l'optimisation du contenu de votre document PDF pour un meilleur classement dans les moteurs de recherche.
Comment compresser des images en PDF via 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);
}