تساعد الإشارات المرجعية في ملف PDF في تحديد نقاط الاهتمام في المستند. يتيح لك ذلك الانتقال إلى نقطة محددة في المستند بسرعة. قد تجد نفسك في مواقف تحتاج فيها إلى إضافة أو قراءة أو تعديل أو حذف إشارات مرجعية في ملف PDF برمجيًا. لذلك ، ستعلمك هذه المقالة كيفية التعامل مع الإشارات المرجعية في ملفات PDF باستخدام C ++.

واجهة برمجة تطبيقات C ++ للعمل مع الإشارات المرجعية في ملفات PDF

Aspose.PDF for C ++ هي مكتبة C ++ تتيح لك إنشاء مستندات PDF وقراءتها وتحديثها. علاوة على ذلك ، تدعم واجهة برمجة التطبيقات إضافة وقراءة وتعديل وإزالة الإشارات المرجعية من ملفات PDF. يمكنك إما تثبيت API من خلال NuGet أو تنزيلها مباشرة من قسم التنزيلات.

PM> Install-Package Aspose.PDF.Cpp

أضف إشارات مرجعية في ملفات PDF باستخدام C ++

فيما يلي خطوات إضافة إشارة مرجعية في ملف PDF.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة إشارة مرجعية في ملف PDF باستخدام C ++.

// قم بإنشاء مثيل لفئة PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();

// قم بتحميل مستند PDF
editor->BindPdf(u"SourceDirectory\\Sample 1.pdf");

// قم بإنشاء الإشارة المرجعية
editor->CreateBookmarkOfPage(u"Bookmark for page 1", 1);

// احفظ مستند PDF
editor->Save(u"OutputDirectory\\AddBookmark_out.pdf");
الناتج الناتج عن نموذج التعليمات البرمجية

الناتج الناتج عن نموذج التعليمات البرمجية

أضف إشارات مرجعية متداخلة في ملفات PDF

يمكنك أيضًا إضافة إشارات مرجعية متداخلة باستخدام Aspose.PDF لواجهة برمجة تطبيقات C ++. فيما يلي خطوات إضافة إشارات مرجعية متداخلة.

يوضح نموذج التعليمات البرمجية التالي كيفية إضافة إشارات مرجعية متداخلة في ملف PDF باستخدام C ++.

// قم بإنشاء مثيل لفئة PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();

// قم بتحميل مستند PDF
editor->BindPdf(u"SourceDirectory\\Sample 1.pdf");

// إنشاء أول إشارة مرجعية للطفل
System::SharedPtr<Aspose::Pdf::Facades::Bookmark> bm1 = System::MakeObject<Aspose::Pdf::Facades::Bookmark>();
bm1->set_PageNumber(1);
bm1->set_Title(u"First child");

// إنشاء ثاني إشارة مرجعية فرعية
System::SharedPtr<Aspose::Pdf::Facades::Bookmark> bm2 = System::MakeObject<Aspose::Pdf::Facades::Bookmark>();
bm2->set_PageNumber(2);
bm2->set_Title(u"Second child");

// إنشاء إشارة مرجعية الأصل
System::SharedPtr<Aspose::Pdf::Facades::Bookmark> bm = System::MakeObject<Aspose::Pdf::Facades::Bookmark>();
bm->set_Action(u"GoTo");
bm->set_PageNumber(1);
bm->set_Title(u"Parent");

// تعيين الطفل الإشارات المرجعية
System::SharedPtr<Aspose::Pdf::Facades::Bookmarks> bms = System::MakeObject<Aspose::Pdf::Facades::Bookmarks>();
bms->Add(bm1);
bms->Add(bm2);
bm->set_ChildItem(bms);

// أضف الإشارات المرجعية إلى ملف PDF
editor->CreateBookmarks(bm);

// احفظ مستند PDF
editor->Save(u"OutputDirectory\\AddChildBookmark_out.pdf");
الناتج الناتج عن نموذج التعليمات البرمجية

الناتج الناتج عن نموذج التعليمات البرمجية

قراءة الإشارات المرجعية من ملف PDF باستخدام C ++

من أجل قراءة الإشارات المرجعية ، استخدم طريقة PdfBookmarkEditor-> ExtractBookmarks(). فيما يلي خطوات قراءة الإشارات المرجعية من ملف PDF.

يوضح نموذج التعليمات البرمجية التالي كيفية قراءة الإشارات المرجعية من ملف PDF باستخدام C ++.

// قم بإنشاء مثيل لفئة PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();

// قم بتحميل مستند PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");

// استرجع كل الإشارات المرجعية
System::SharedPtr <Bookmarks> bms = editor->ExtractBookmarks();

// حلقة من خلال الإشارات المرجعية
for (System::SharedPtr<Bookmark> bm : bms) {
	
	// اعرض عنوان الإشارة المرجعية
	Console::WriteLine(bm->get_Title());

	// عرض وجهة الإشارة المرجعية
	Console::WriteLine(bm->get_Destination());
}

تعديل عنوان الإشارة المرجعية باستخدام C ++

فيما يلي خطوات تعديل عنوان إشارة مرجعية موجودة في ملف PDF.

يوضح نموذج التعليمات البرمجية التالي كيفية تعديل عنوان إشارة مرجعية موجودة في ملف PDF.

// قم بإنشاء مثيل لفئة PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();

// قم بتحميل مستند PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");

// تعديل عنوان المرجعية
editor->ModifyBookmarks(u"bookmark for page 1", u"Page 1 Bookmark");

// احفظ مستند PDF
editor->Save(u"OutputDirectory\\ModifyBookmark_out.pdf");

احذف إشارة مرجعية معينة باستخدام C ++

توفر واجهة برمجة التطبيقات طريقة PdfBookmarkEditor-> DeleteBookmarks (System :: String title) لحذف إشارة مرجعية معينة من ملف PDF. فيما يلي خطوات حذف إشارة مرجعية معينة.

يوضح نموذج التعليمات البرمجية التالي كيفية حذف إشارة مرجعية معينة باستخدام C ++.

// قم بإنشاء مثيل لفئة PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();

// قم بتحميل مستند PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");

// حذف إشارة مرجعية معينة
editor->DeleteBookmarks(u"bookmark for page 1");

// احفظ مستند PDF
editor->Save(u"OutputDirectory\\DeleteParticularBookmark_out.pdf");

احذف جميع الإشارات المرجعية في ملف PDF باستخدام C ++

بدلاً من حذف الإشارات المرجعية واحدة تلو الأخرى ، يمكنك إزالة جميع الإشارات المرجعية مرة واحدة باستخدام طريقة PdfBookmarkEditor-> DeleteBookmarks(). فيما يلي خطوات حذف كل الإشارات المرجعية في ملف PDF.

فيما يلي نموذج التعليمات البرمجية لحذف كل الإشارات المرجعية في ملف PDF.

// قم بإنشاء مثيل لفئة PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();

// قم بتحميل مستند PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");

// حذف كافة الإشارات المرجعية
editor->DeleteBookmarks();

// احفظ مستند PDF
editor->Save(u"OutputDirectory\\DeleteAllBookmarks_out.pdf");

احصل على رخصة مجانية

يمكنك تجربة واجهة برمجة التطبيقات بدون قيود تقييمية عن طريق طلب ترخيص مؤقت مجاني.

استنتاج

في هذه المقالة ، تعلمت كيفية التعامل مع الإشارات المرجعية في ملفات PDF باستخدام C ++. على وجه التحديد ، لقد تعلمت كيفية إضافة وقراءة وتعديل وحذف الإشارات المرجعية في ملف PDF. علاوة على ذلك ، لقد رأيت كيفية إضافة إشارات مرجعية متداخلة باستخدام Aspose.PDF لواجهة برمجة تطبيقات C ++. توفر واجهة برمجة التطبيقات العديد من الميزات الإضافية للعمل مع ملفات PDF التي يمكنك استكشافها بالتفصيل باستخدام الوثائق الرسمية. إذا كان لديك أي أسئلة ، فلا تتردد في الاتصال بنا على منتدى الدعم المجاني.

أنظر أيضا