Jak dodawać zakładki i spisy treści do plików PDF w języku C# przy użyciu IronPDF

Jak dodać zakładki i spis treści w plikach PDF w C# za pomocą IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF pozwala dodawać zakładki (spisy treści) do dokumentów PDF w C#, tworząc pomoc nawigacyjną podobną do spisu treści. Dodawaj jedno- lub wielowarstwowe zakładki, aby zwiększyć użyteczność dokumentu i ułatwić użytkownikom szybkie przejście do kluczowych sekcji. Ta funkcja działa bezproblemowo w środowiskach Windows, Linux i macOS.

Szybki start: dodawanie zakładek do PDF w C#

Rozpocznij szybko pracę z IronPDF, dodając zakładki do dokumentów PDF. Ten przewodnik pokazuje, jak załadować istniejący dokument PDF, dodać zakładki do nawigacji i zapisać zaktualizowany dokument. Idealne dla deweloperów chcących zwiększyć funkcjonalność PDF w swoich projektach C#.

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf
  2. Skopiuj i uruchom ten fragment kodu.

    var pdf = new IronPdf.PdfDocument("example.pdf");
    pdf.Bookmarks.AddBookMarkAtEnd("Chapter 1", 1);
    pdf.SaveAs("bookmarked.pdf");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer

Jak pracować z zakładkami PDF w C#?

W Adobe Acrobat Reader spisy treści (znane również jako zakładki) są wyświetlane w lewym pasku bocznym, zapewniając wygodny sposób przejścia do kluczowych sekcji dokumentu. Zakładki funkcjonują jako interaktywny spis treści, umożliwiając czytelnikom skuteczną nawigację po skomplikowanych dokumentach.

Dzięki IronPDF można importować dokumenty PDF i wykonywać różne operacje na istniejących spisach treści, takie jak dodawanie, zmienianie kolejności, edytowanie właściwości i usuwanie zakładek. Daje to pełną kontrolę nad organizacją i strukturą plików PDF, podobnie jak można łączyć lub dzielić pliki PDF w celu zarządzania dokumentami.

PoradyWszystkie indeksy stron mają indeksację rozpoczynającą się od zera.

Jak dodać zakładki jednopoziomowe?

Dodanie zakładki w IronPDF jest proste. Należy użyć metody AddBookmarkAtEnd, podając nazwę zakładki oraz odpowiedni indeks strony. Taka funkcjonalność dobrze integruje się z innymi operacjami na PDF, jak dodawanie nagłówków i stopki lub ustawianie niestandardowych marginesów w celu tworzenia profesjonalnych dokumentów. Poniżej znajduje się przykład:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-single-layer-bookmark.cs
using IronPdf;

// Create a new PDF or edit an existing document.
PdfDocument pdf = PdfDocument.FromFile("existing.pdf");

// Add a bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfBookmark", 0);

// Add a sub-bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfSubBookmark", 1);

pdf.SaveAs("singleLayerBookmarks.pdf");
Imports IronPdf

' Create a new PDF or edit an existing document.
Private pdf As PdfDocument = PdfDocument.FromFile("existing.pdf")

' Add a bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfBookmark", 0)

' Add a sub-bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfSubBookmark", 1)

pdf.SaveAs("singleLayerBookmarks.pdf")
$vbLabelText   $csharpLabel

Metoda AddBookMarkAtEnd dodaje zakładki na koniec istniejącej listy zakładek. Dla większej kontroli nad umieszczaniem zakładek należy użyć AddBookMarkAtStart, aby wstawić zakładki na początku listy. Każda zakładka odnosi się do konkretnego indeksu strony, umożliwiając precyzyjną nawigację w dokumencie.

Dokument z zakładkami jednopoziomowymi

Jak stworzyć hierarchię zakładek wielowarstwowych?

IronPDF pozwala dodawać zakładki w strukturze drzewa, co jest szczególnie przydatne w utrzymaniu nawigacji w obszernych dokumentach PDF. Ta funkcja jest wartościowa w przypadku pracy z rozległymi zbiorami dokumentów egzaminacyjnych, raportów sprzedaży czy zapisami paragonów z różnych dat i lokalizacji w jednym dokumencie PDF. Podobnie jak można tworzyć formularze PDF do gromadzenia danych, strukturalne zakładki pomagają hierarchicznie organizować skomplikowane informacje.

Metoda AddBookMarkAtEnd zwraca obiekt IPdfBookMark, pozwalając dodawać zakładki potomne. Na przykład, można użyć Children.AddBookMarkAtStart("Date1", 0) lub Children.AddBookMarkAtEnd("Date1", 0), aby dodać zakładki potomne do zakładki "egzaminacyjna". Ta zagnieżdżona struktura tworzy hierarchiczną organizację, która odzwierciedla logiczny przepływ dokumentu. Poniższy kod pokazuje tę koncepcję:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-multi-layer-bookmark.cs
using IronPdf;

// Load existing PDF document
PdfDocument pdf = PdfDocument.FromFile("examinationPaper.pdf");

// Assign IPdfBookMark object to a variable
var mainBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Examination", 0);

// Add bookmark for days
var date1Bookmark = mainBookmark.Children.AddBookMarkAtStart("Date1", 1);

// Add bookmark for type of test
var paperBookmark = date1Bookmark.Children.AddBookMarkAtStart("Paper", 1);
paperBookmark.Children.AddBookMarkAtEnd("PersonA", 3);
paperBookmark.Children.AddBookMarkAtEnd("PersonB", 4);

// Add bookmark for days
var date2Bookmark = mainBookmark.Children.AddBookMarkAtEnd("Date2", 5);

// Add bookmark for type of test
var computerBookmark = date2Bookmark.Children.AddBookMarkAtStart("Computer", 5);
computerBookmark.Children.AddBookMarkAtEnd("PersonC", 6);
computerBookmark.Children.AddBookMarkAtEnd("PersonD", 7);

pdf.SaveAs("multiLayerBookmarks.pdf");
Imports IronPdf

' Load existing PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("examinationPaper.pdf")

' Assign IPdfBookMark object to a variable
Private mainBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Examination", 0)

' Add bookmark for days
Private date1Bookmark = mainBookmark.Children.AddBookMarkAtStart("Date1", 1)

' Add bookmark for type of test
Private paperBookmark = date1Bookmark.Children.AddBookMarkAtStart("Paper", 1)
paperBookmark.Children.AddBookMarkAtEnd("PersonA", 3)
paperBookmark.Children.AddBookMarkAtEnd("PersonB", 4)

' Add bookmark for days
Dim date2Bookmark = mainBookmark.Children.AddBookMarkAtEnd("Date2", 5)

' Add bookmark for type of test
Dim computerBookmark = date2Bookmark.Children.AddBookMarkAtStart("Computer", 5)
computerBookmark.Children.AddBookMarkAtEnd("PersonC", 6)
computerBookmark.Children.AddBookMarkAtEnd("PersonD", 7)

pdf.SaveAs("multiLayerBookmarks.pdf")
$vbLabelText   $csharpLabel

To hierarchiczne podejście jest szczególnie wartościowe przy pracy ze złożonymi dokumentami wymagającymi szczegółowej organizacji. Zagnieżdżona struktura pozwala użytkownikom na rozwijanie i zwijanie sekcji zakładek, co sprawia, że nawigacja jest intuicyjna nawet w dokumentach z setkami stron.

Dokument z zakładkami wielowarstwowymi

Jak pobierać i nawigować po istniejących zakładkach?

IronPDF umożliwia łatwe pobieranie i przeglądanie zakładek w dokumencie PDF. Nawigowanie po drzewie zakładek jest proste i zapewnia płynność dostępu do różnych sekcji. Ta funkcjonalność jest niezbędna podczas pracy z istniejącymi plikami PDF wymagającymi edycji lub w przypadku wdrażania funkcji takich jak wyszukiwanie i zastępowanie tekstu w obrębie źródłowych sekcji zakładek. Zapoznaj się z powyższym przykładem dokumentu z zakładkami wielowarstwowymi.

Zakładka "egzaminacyjna" ma właściwość Children, która wskazuje na zakładki "Data1" i "Data2". Zakładka "Data1" ma właściwość NextBookmark, która wskazuje na zakładkę "Data2". Dodatkowo zakładka "Data1" ma właściwość Children zawierającą zakładkę "Dokument". Ta powiązana struktura pozwala na wyrafinowane wzorce nawigacyjne i organizację dokumentu.

Aby pobrać wszystkie zakładki z otwartego dokumentu PDF, należy użyć metody GetAllBookmarks. Zapewnia to szereg wszystkich zakładek, pozwalając analizować pełną strukturę zakładek i wykorzystywać całą:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-retrieve-bookmark.cs
using IronPdf;

// Load existing PDF document
PdfDocument pdf = PdfDocument.FromFile("multiLayerBookmarks.pdf");

// Retrieve bookmarks list
var mainBookmark = pdf.Bookmarks.GetAllBookmarks();
Imports IronPdf

' Load existing PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("multiLayerBookmarks.pdf")

' Retrieve bookmarks list
Private mainBookmark = pdf.Bookmarks.GetAllBookmarks()
$vbLabelText   $csharpLabel

Zwróć uwag꣹czenie dwóch dokumentów PDF o identycznych nazwach zakładek może zaburzyć listę zakładek.

OstrzeżenieObsługiwane są tylko zakładki utworzone na podstawie indeksów stron. Zakładki z innych elementów PDF będą miały zestaw wartości indeksu strony na -1.

Dowiedz się, jak stworzyć spis treści podczas generowania PDF z HTML w następnym artykule: "Tworzenie spisu treści z IronPDF."

Zapoznaj się z naszą stroną z samouczkami: Organizowanie plików PDF

Często Zadawane Pytania

How do I add bookmarks to a PDF document in C#?

IronPDF makes it easy to add bookmarks to PDF documents in C#. You can use the AddBookmarkAtEnd method to add single-layer bookmarks by specifying the bookmark name and page index. For example: pdf.Bookmarks.AddBookMarkAtEnd("Chapter 1", 1). This creates navigational aids similar to a table of contents that help users jump to key sections quickly.

What's the difference between AddBookmarkAtEnd and AddBookmarkAtStart methods?

IronPDF provides two methods for bookmark placement. The AddBookMarkAtEnd method appends bookmarks to the end of the existing bookmark list, while AddBookMarkAtStart inserts bookmarks at the beginning of the list. Both methods reference specific page indices for precise navigation within the document.

Can I create hierarchical bookmark structures with multiple levels?

Yes, IronPDF allows you to create multi-layer bookmark hierarchies in a tree structure. This is particularly useful for organizing complex documents with nested sections, similar to how you would structure a detailed table of contents with chapters and sub-chapters.

Is bookmark functionality compatible across different operating systems?

IronPDF's bookmark feature works seamlessly across Windows, Linux, and macOS environments. You can add, edit, and manage PDF bookmarks regardless of your operating system, ensuring consistent functionality across different platforms.

What operations can I perform on existing PDF bookmarks?

With IronPDF, you can perform various operations on existing PDF outlines including adding new bookmarks, reordering them, editing bookmark properties, and deleting unwanted bookmarks. This gives you full control over the organization and structure of your PDF files.

How are bookmarks displayed when users open the PDF?

In Adobe Acrobat Reader and similar PDF viewers, bookmarks created with IronPDF appear as outlines in the left sidebar. They function as an interactive table of contents, allowing readers to navigate complex documents efficiently by clicking to jump to specific sections.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 18,135,201 | Wersja: 2026.4 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronPdf
Uruchom przykład i zobacz, jak Twój kod HTML zamienia się w plik PDF.