Добавление и удаление закладки

Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.

Добавление закладки в документ PDF

Закладки хранятся в коллекции OutlineItemCollection объекта Document, которая находится в коллекции OutlineCollection.

Чтобы добавить закладку в PDF:

  1. Откройте документ PDF с помощью объекта Document.
  2. Создайте закладку и определите ее свойства.
  3. Добавьте коллекцию OutlineItemCollection в коллекцию Outlines.

Следующий фрагмент кода показывает, как добавить закладку в документ PDF.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks();

// Открыть документ
Document pdfDocument = new Document(dataDir + "AddBookmark.pdf");

// Создать объект закладки
OutlineItemCollection pdfOutline = new OutlineItemCollection(pdfDocument.Outlines);
pdfOutline.Title = "Тестовая закладка";
pdfOutline.Italic = true;
pdfOutline.Bold = true;
// Установить номер страницы назначения
pdfOutline.Action = new GoToAction(pdfDocument.Pages[1]);
// Добавить закладку в коллекцию контуров документа.
pdfDocument.Outlines.Add(pdfOutline);

dataDir = dataDir + "AddBookmark_out.pdf";
// Сохранить результат
pdfDocument.Save(dataDir);

Добавление дочерней закладки в PDF-документ

Закладки могут быть вложенными, указывая на иерархическую связь с родительскими и дочерними закладками. В этой статье объясняется, как добавить дочернюю закладку, то есть закладку второго уровня, в PDF.

Чтобы добавить дочернюю закладку в файл PDF, сначала добавьте родительскую закладку:

  1. Откройте документ.
  2. Добавьте закладку в OutlineItemCollection, определив её свойства.
  3. Добавьте OutlineItemCollection в коллекцию OutlineCollection объекта Document.

Дочерняя закладка создается так же, как родительская, описанная выше, но добавляется в коллекцию Outlines родительской закладки

Следующие примеры кода показывают, как добавить дочернюю закладку в документ PDF.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks();

// Открыть документ
Document pdfDocument = new Document(dataDir + "AddChildBookmark.pdf");

// Создать объект родительской закладки
OutlineItemCollection pdfOutline = new OutlineItemCollection(pdfDocument.Outlines);
pdfOutline.Title = "Родительская закладка";
pdfOutline.Italic = true;
pdfOutline.Bold = true;

// Создать объект дочерней закладки
OutlineItemCollection pdfChildOutline = new OutlineItemCollection(pdfDocument.Outlines);
pdfChildOutline.Title = "Дочерняя закладка";
pdfChildOutline.Italic = true;
pdfChildOutline.Bold = true;

// Добавить дочернюю закладку в коллекцию родительской закладки
pdfOutline.Add(pdfChildOutline);
// Добавить родительскую закладку в коллекцию закладок документа.
pdfDocument.Outlines.Add(pdfOutline);

dataDir = dataDir + "AddChildBookmark_out.pdf";
// Сохранить результат
pdfDocument.Save(dataDir);

Удаление всех закладок из PDF-документа

Все закладки в PDF содержатся в коллекции OutlineCollection. В этой статье объясняется, как удалить все закладки из файла PDF.

Для удаления всех закладок из файла PDF:

  1. Вызовите метод Delete коллекции OutlineCollection.
  2. Сохраните измененный файл с помощью метода Save объекта Document.

Ниже приведены примеры кода, показывающие, как удалить все закладки из PDF-документа.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории с документами.
string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks();

// Открыть документ
Document pdfDocument = new Document(dataDir + "DeleteAllBookmarks.pdf");

// Удалить все закладки
pdfDocument.Outlines.Delete();

dataDir = dataDir + "DeleteAllBookmarks_out.pdf";
// Сохранить обновленный файл
pdfDocument.Save(dataDir);

Удаление конкретной закладки из документа PDF

Для удаления конкретной закладки из файла PDF:

  1. Передайте название закладки в качестве параметра в метод Delete коллекции OutlineCollection.
  2. Затем сохраните обновленный файл с помощью метода Save объекта Document.

Класс Document предоставляет коллекцию OutlineCollection. Метод Delete удаляет любую закладку с переданным в метод названием.

Следующие фрагменты кода показывают, как удалить конкретную закладку из документа PDF.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks();

// Открыть документ
Document pdfDocument = new Document(dataDir + "DeleteParticularBookmark.pdf");

// Удалить конкретную закладку по названию
pdfDocument.Outlines.Delete("Child Outline");

// Сохранить обновленный файл
pdfDocument.Save(dataDir + "DeleteParticularBookmark_out.pdf");