Dans ce didacticiel, nous allons apprendre à lire les signets dans le fichier PDF à l’aide de C++. Vous pouvez extraire le titre et différentes autres propriétés en parcourant tous les signets les uns après les autres à l’aide de simples appels d’API en C++. La fonctionnalité ne nécessite pas l’installation d’Adobe Acrobat ou de toute autre application sur les plates-formes Windows ou Linux.
Étapes pour lire les signets dans un fichier PDF à l’aide de C++
- Installez la bibliothèque Aspose.Pdf for C++ à partir du gestionnaire de packages NuGet
- Ajouter la référence à l’espace de noms Aspose::Pdf
- Initialiser un objet de la classe PdfBookmarkEditor pour obtenir des signets
- Charger le document PDF d’entrée pour extraire les signets
- Récupérer les signets du fichier PDF
- Parcourez tous les signets et lisez les propriétés
Vous pouvez lire des signets dans un fichier pdf en utilisant C++ avec quelques lignes de code simples. Il peut récupérer des signets dans un fichier pdf en utilisant C++ avec les différentes propriétés de chaque signet.
Code pour lire les signets dans un fichier PDF en utilisant C++
#pragma once | |
#include <iostream> | |
#include <system/smart_ptr.h> | |
#include <Aspose.PDF.Cpp/License.h> | |
#include <Aspose.PDF.Cpp/Document.h> | |
#include <Aspose.PDF.Cpp/Facades/PdfBookmarkEditor.h> | |
#include <Aspose.PDF.Cpp/Facades/Bookmark.h> | |
#include <Aspose.PDF.Cpp/Facades/Bookmarks.h> | |
#include <system/console.h> | |
#include <system/io/file.h> | |
using namespace System; | |
using namespace Aspose::Pdf; | |
using namespace Aspose::Pdf::Facades; | |
class ReadBookmarkEx{ | |
public: | |
void ReadPDFBookmark() | |
{ | |
// Set the license for Aspose.PDF for C++ to Read the bookmarks in PDF file | |
SharedPtr<License> ReadPdfBookmarkLicense = System::MakeObject<License>(); | |
ReadPdfBookmarkLicense->SetLicense(u"Aspose.Pdf.lic"); | |
// Initialize an object of PdfBookmarkEditor class to get bookmarks | |
SharedPtr<PdfBookmarkEditor> BookmarkEditor = System::MakeObject<PdfBookmarkEditor>(); | |
// Load the input PDF document for extracting bookmarks | |
BookmarkEditor->BindPdf(u"BookmarkSample.pdf"); | |
// Retrieve the Bookmarks from the PDF | |
SharedPtr <Bookmarks> bookmarks = BookmarkEditor->ExtractBookmarks(); | |
// Iterate through all the Bookmarks | |
for (SharedPtr<Bookmark> bookmark : bookmarks) | |
{ | |
// Read different properties of the bookmark | |
Console::WriteLine(bookmark->get_Title()); | |
Console::WriteLine(bookmark->get_ItalicFlag()); | |
Console::WriteLine(bookmark->get_BoldFlag()); | |
Console::WriteLine(bookmark->get_TitleColor().ToString()); | |
} | |
} | |
}; |
Dans le sujet précédent, nous avons appris Comment lire un fichier PDF en C++. Cette rubrique explique comment extraire des signets dans un fichier pdf à l’aide de C++.