Создание закладок

Создание закладок для всех страниц

Чтобы создать закладки для всех страниц, вам нужно использовать метод CreateBookmarks без каких-либо параметров. Класс PdfBookmarkEditor позволяет создавать закладки для всех страниц PDF-файла. Сначала вам нужно создать объект класса PdfBookmarkEditor и связать входной PDF с помощью метода BindPdf. Затем вам нужно вызвать метод CreateBookmarks и сохранить выходной PDF-файл с помощью метода Save. Следующий фрагмент кода показывает, как создать закладки.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void CreateBookmarksOfAllPages()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks();

    // Create PdfBookmarkEditor
    using (var bookmarkEditor = new Aspose.Pdf.Facades.PdfBookmarkEditor())
    {
        // Bind PDF document
        bookmarkEditor.BindPdf(dataDir + "CreateBookmarksAll.pdf");
        // Create bookmark of all pages
        bookmarkEditor.CreateBookmarks();
        // Save PDF document
        bookmarkEditor.Save(dataDir + "CreateBookmarksOfAllPages_out.pdf");
    }
} 

Создание закладок для всех страниц с свойствами

Класс PdfBookmarkEditor позволяет создавать закладки для всех страниц PDF-файла и указывать свойства (Цвет, Жирный, Курсив). Вы можете сделать это с помощью метода CreateBookmarks. Сначала вам нужно создать объект класса PdfBookmarkEditor и связать входной PDF с помощью метода BindPdf. Затем вам нужно вызвать метод CreateBookmarks и сохранить выходной PDF-файл с помощью метода Save. Следующий фрагмент кода показывает, как создать закладки для всех страниц с свойствами.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void CreateBookmarksOfAllPagesWithProperties()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks();

    // Create PdfBookmarkEditor
    using (var bookmarkEditor = new Aspose.Pdf.Facades.PdfBookmarkEditor())
    {
        // Bind PDF document
        bookmarkEditor.BindPdf(dataDir + "CreateBookmarks-PagesProperties.pdf");
        // Create bookmark of all pages
        bookmarkEditor.CreateBookmarks(System.Drawing.Color.Green, true, true);
        // Save PDF document
        bookmarkEditor.Save(dataDir + "CreateBookmarks-PagesProperties_out.pdf");
    }
}

Создание закладки для конкретной страницы

Вы можете создать закладку для конкретной страницы в существующем PDF-файле, используя метод CreateBookmarkOfPage. Этот метод принимает два аргумента: заголовок закладки и номер страницы. Сначала вам нужно создать объект класса PdfBookmarkEditor и связать входной PDF-файл с помощью метода BindPdf. Затем вам нужно вызвать метод CreateBookmarkOfPage и сохранить выходной PDF-файл с помощью метода Save. Следующий фрагмент кода показывает, как создать закладку для конкретной страницы.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void CreateBookmarkOfAParticularPage()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks();

    // Create PdfBookmarkEditor
    using (var bookmarkEditor = new Aspose.Pdf.Facades.PdfBookmarkEditor())
    {
        // Bind PDF document
        bookmarkEditor.BindPdf(dataDir + "CreateBookmark-Page.pdf");
        // Create bookmark of a particular page
        bookmarkEditor.CreateBookmarkOfPage("Bookmark Name", 2);
        // Save PDF document
        bookmarkEditor.Save(dataDir + "CreateBookmark-Page_out.pdf");
    }
}

Создание закладок для диапазона страниц

Класс PdfBookmarkEditor позволяет создавать закладки для диапазона страниц. Вы можете использовать метод CreateBookmarkOfPage с двумя параметрами: список закладок (список заголовков закладок) и список страниц (список страниц для закладок). Сначала вам нужно создать объект класса PdfBookmarkEditor и связать входной PDF-файл с помощью метода BindPdf. Затем вам нужно вызвать метод CreateBookmarkOfPage и сохранить выходной PDF с помощью метода Save. Следующий фрагмент кода показывает, как создать закладки для диапазона страниц.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void CreateBookmarksOfARangeOfPages()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks();

    // Create PdfBookmarkEditor
    using (var bookmarkEditor = new Aspose.Pdf.Facades.PdfBookmarkEditor())
    {
        // Bind PDF document
        bookmarkEditor.BindPdf(dataDir + "CreateBookmark-Page.pdf");
        // Bookmark name list
        string[] bookmarkList = { "First" };
        // Page list
        int[] pageList = { 1 };
        // Create bookmark of a range of pages
        bookmarkEditor.CreateBookmarkOfPage(bookmarkList, pageList);
        // Save PDF document
        bookmarkEditor.Save(dataDir + "CreateBookmarkPageRange_out.pdf");
    }
}

Добавление закладки в существующий PDF-файл

Вы можете добавить закладку в существующий PDF-файл, используя класс PdfBookmarkEditor. Чтобы создать закладку, вам нужно создать объект Bookmark и установить необходимые атрибуты закладки. После этого вам нужно передать объект Bookmark в метод CreateBookmarks класса PdfBookmarkEditor. Наконец, вам нужно сохранить обновленный PDF-файл с помощью метода Save. Следующий фрагмент кода показывает, как добавить закладку в существующий PDF-файл.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddBookmarkInAnExistingPdfFile()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks();
    // Create bookmark
    var bookmark = new Aspose.Pdf.Facades.Bookmark();
    bookmark.PageNumber = 1;
    bookmark.Title = "New Bookmark";
    // Create PdfBookmarkEditor
    using (var bookmarkEditor = new Aspose.Pdf.Facades.PdfBookmarkEditor())
    {
        // Bind PDF document
        bookmarkEditor.BindPdf(dataDir + "AddBookmark.pdf");
        // Create bookmarks
        bookmarkEditor.CreateBookmarks(bookmark);
        // Save PDF document
        bookmarkEditor.Save(dataDir + "AddBookmark_out.pdf");
    }
}

Добавление дочерней закладки в существующий PDF-файл

Вы можете добавить дочерние закладки в существующий PDF-файл, используя класс PdfBookmarkEditor. Чтобы добавить дочерние закладки, вам нужно создать объекты Bookmark. Вы можете добавить отдельные объекты Bookmark в объект Bookmarks. Вам также нужно создать объект Bookmark и установить его свойство ChildItem на объект Bookmarks. Затем вам нужно передать этот объект Bookmark с ChildItem в метод CreateBookmarks. Наконец, вам нужно сохранить обновленный PDF с помощью метода Save класса PdfBookmarkEditor. Следующий фрагмент кода показывает, как добавить дочерние закладки в существующий PDF-файл.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddChildBookmarkInAnExistingPdfFile()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_Bookmarks();
    // Create bookmarks
    var bookmarks = new Aspose.Pdf.Facades.Bookmarks();
    var childBookmark1 = new Aspose.Pdf.Facades.Bookmark();
    childBookmark1.PageNumber = 1;
    childBookmark1.Title = "First Child";
    var childBookmark2 = new Aspose.Pdf.Facades.Bookmark();
    childBookmark2.PageNumber = 2;
    childBookmark2.Title = "Second Child";
    bookmarks.Add(childBookmark1);
    bookmarks.Add(childBookmark2);
    var bookmark = new Aspose.Pdf.Facades.Bookmark();
    bookmark.Action = "GoTo";
    bookmark.PageNumber = 1;
    bookmark.Title = "Parent";
    bookmark.ChildItems = bookmarks;
    // Create PdfBookmarkEditor class
    using (var bookmarkEditor = new Aspose.Pdf.Facades.PdfBookmarkEditor())
    {
        // Bind PDF document
        bookmarkEditor.BindPdf(dataDir + "AddChildBookmark.pdf");
        // Create bookmarks
        bookmarkEditor.CreateBookmarks(bookmark);
        // Save PDF document
        bookmarkEditor.Save(dataDir + "AddChildBookmark_out.pdf");
    }
}