Nawigacja i działania
Nawigacja i działania
Aspose.PDF FOSS for .NET obsługuje struktury nawigacyjne PDF — zakładki (outlines), cele stron i akcje dokumentu. Pozwalają one tworzyć interaktywne dokumenty z nawigacją spisu treści, linkami między stronami oraz wyzwalaczami JavaScript.
Zarys dokumentu (zakładki)
OutlineCollection przechowuje drzewo zakładek dokumentu. Każdy OutlineItemCollection jest wpisem zakładki z tytułem i miejscem docelowym.
using var doc = Document.Open(pdfBytes);
foreach (var item in doc.Outlines)
{
Console.WriteLine($"Bookmark: {item.Title}");
}Tworzenie zakładek
using var doc = Document.Open(pdfBytes);
var bookmark = new OutlineItemCollection(doc.Outlines);
bookmark.Title = "Chapter 1";
bookmark.Action = new GoToAction(doc.Pages[1]);
doc.Outlines.Add(bookmark);
doc.Save("with-bookmarks.pdf");Akcje GoTo
GoToAction przechodzi do określonej strony i typu dopasowania w tym samym dokumencie.
var goTo = new GoToAction(doc.Pages[3]);Nazwane akcje
NamedAction wywołuje predefiniowane polecenia przeglądarki PDF, takie jak NextPage, PrevPage, FirstPage i LastPage.
var nextPage = PdfAction.CreateNamed("NextPage");Akcje GoToRemote
GoToRemoteAction otwiera zewnętrzny plik PDF i przechodzi do określonej strony.
var remote = new GoToRemoteAction("other.pdf", 1);Uruchom akcje
LaunchAction otwiera zewnętrzny plik (dowolny format) z linku PDF.
var launch = new LaunchAction("readme.txt");Kolekcje docelowe
DestinationCollection mapuje nazwane cele na strony, wspierając nawigację odwołań krzyżowych w dużych dokumentach.
var dest = doc.Destinations;
int pageNum = dest.GetPageNumber("section2");Wskazówki i najlepsze praktyki
- Zbuduj drzewo zakładek odzwierciedlające hierarchię sekcji dokumentu, aby zapewnić intuicyjną nawigację.
- Użyj
GoToActionzFitType, aby kontrolować sposób wyświetlania docelowej strony (dopasowanie do szerokości, dopasowanie do strony itp.). - Nazwane akcje są zależne od przeglądarki — trzymaj się standardowych nazw (NextPage, PrevPage, FirstPage, LastPage).
- Do linków między dokumentami używaj
GoToRemoteActionzamiast akcji URI wskazujących na pliki PDF. - Zbiory akcji na stronie pozwalają dodać wiele akcji, które uruchamiają się przy otwarciu strony.
Typowe problemy
| Issue | Cause | Fix |
|---|---|---|
| Zakładka nie działa | Akcja nie jest ustawiona w elemencie konspektu | Przypisz GoToAction do OutlineItemCollection.Action |
| Akcja GoTo wskazuje niewłaściwą stronę | Indeks strony jest wewnętrznie zerowy, ale strony są numerowane od 1 | Użyj doc.Pages[n] bezpośrednio w konstruktorze GoToAction |
| Nazwana akcja nie ma efektu | Przeglądarka nie obsługuje nazwanej akcji | Używaj tylko standardowych nazw |
FAQ
Jak utworzyć spis treści?
Utwórz OutlineItemCollection wpisy dla każdej sekcji, każdy z
GoToAction skierowanym na pierwszą stronę sekcji.
Czy mogę zagnieżdżać zakładki?
Tak. Dodaj wpisy podrzędne OutlineItemCollection do zakładki nadrzędnej, aby utworzyć hierarchiczny konspekt.
Jakie typy dopasowania są dostępne dla akcji GoTo?
Fit, FitH (dopasuj szerokość), FitV (dopasuj wysokość), FitR (dopasuj prostokąt), i FitB (dopasuj ramkę ograniczającą).
API Podsumowanie referencji
| Klasa / Metoda | Opis |
|---|---|
OutlineCollection | Zbiór zakładek najwyższego poziomu w dokumencie |
OutlineItemCollection | Pojedynczy wpis zakładki z tytułem i akcją |
GoToAction | Nawigacja do strony w tym samym dokumencie |
GoToRemoteAction | Nawigacja do strony w zewnętrznym pliku PDF |
LaunchAction | Otwórz zewnętrzny plik |
NamedAction | Wywołaj predefiniowane polecenie przeglądarki |
PdfAction.CreateGoTo | Fabryka akcji GoTo |
PdfAction.CreateNamed | Fabryka akcji nazwanych |
ActionCollection | Zbiór akcji na stronie lub adnotacji |
DestinationCollection | Rejestr nazwanych miejsc docelowych |
ActionType | Wyliczenie: GoTo, URI, JavaScript, Named, Launch |