Navigasi dan Tindakan
Navigasi dan Tindakan
Aspose.PDF FOSS for .NET menyokong struktur navigasi PDF — penanda buku (garisan), destinasi halaman, dan tindakan dokumen. Ini membolehkan anda membuat dokumen interaktif dengan navigasi jadual kandungan, pautan antara halaman, dan pemicu JavaScript.
Garis besar dokumen (penanda buku)
OutlineCollection menyimpan pokok penanda buku dokumen. Setiap OutlineItemCollection ialah entri penanda buku dengan tajuk dan destinasi.
using var doc = Document.Open(pdfBytes);
foreach (var item in doc.Outlines)
{
Console.WriteLine($"Bookmark: {item.Title}");
}Mencipta penanda buku
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");tindakan GoTo
GoToAction menavigasi ke halaman tertentu dan jenis penyesuaian dalam dokumen yang sama.
var goTo = new GoToAction(doc.Pages[3]);Tindakan bernama
NamedAction memicu perintah penonton PDF yang telah ditetapkan seperti NextPage, PrevPage, FirstPage, dan LastPage.
var nextPage = PdfAction.CreateNamed("NextPage");Tindakan GoToRemote
GoToRemoteAction membuka fail PDF luaran dan menavigasi ke halaman tertentu.
var remote = new GoToRemoteAction("other.pdf", 1);Lancar tindakan
LaunchAction membuka fail luaran (sebarang format) dari pautan PDF.
var launch = new LaunchAction("readme.txt");Koleksi destinasi
DestinationCollection memetakan destinasi bernama ke halaman, menyokong navigasi rujukan silang dalam dokumen besar.
var dest = doc.Destinations;
int pageNum = dest.GetPageNumber("section2");Petua dan Amalan Terbaik
- Bina pokok penanda buku yang mencerminkan hierarki bahagian dokumen anda untuk navigasi yang intuitif.
- Gunakan
GoToActiondenganFitTypeuntuk mengawal cara halaman sasaran dipaparkan (sesuai lebar, sesuaikan halaman, dll.). - Tindakan bernama bergantung pada penonton — gunakan nama standard (NextPage, PrevPage, FirstPage, LastPage).
- Untuk pautan antara dokumen, gunakan
GoToRemoteActiondan bukannya tindakan URI yang menunjuk kepada fail PDF. - Koleksi tindakan pada halaman membolehkan anda menambah pelbagai tindakan yang dijalankan apabila halaman dibuka.
Isu Umum
| Issue | Cause | Fix |
|---|---|---|
| Penanda tidak menavigasi | Tindakan tidak ditetapkan pada item rangka | Tetapkan GoToAction kepada OutlineItemCollection.Action |
| Tindakan GoTo menyasarkan halaman yang salah | Indeks halaman berasaskan 0 secara dalaman tetapi halaman berasaskan 1 | Gunakan doc.Pages[n] secara langsung dalam konstruktor GoToAction |
| Tindakan bernama tidak memberi kesan | Penonton tidak menyokong tindakan bernama | Gunakan nama standard sahaja |
Soalan Lazim
Bagaimana saya membuat jadual kandungan?
Buat entri OutlineItemCollection untuk setiap bahagian, setiap satu dengan
GoToAction yang menyasarkan halaman pertama bahagian tersebut.
Bolehkah saya menyusun penanda buku secara bersarang?
Ya. Tambah entri anak OutlineItemCollection ke penanda buku induk untuk membuat rangka hierarki.
Apakah jenis penyesuaian yang tersedia untuk tindakan GoTo?
Fit, FitH (lebar muat), FitV (tinggi muat), FitR (segmen muat), dan FitB (kotak sempadan muat).
Ringkasan Rujukan API
| Class / Method | Description |
|---|---|
OutlineCollection | Koleksi penanda buku peringkat atas pada dokumen |
OutlineItemCollection | Entri penanda buku tunggal dengan tajuk dan tindakan |
GoToAction | Navigasi ke halaman dalam dokumen yang sama |
GoToRemoteAction | Navigasi ke halaman dalam PDF luaran |
LaunchAction | Buka fail luaran |
NamedAction | Jalankan perintah penonton yang telah ditetapkan |
PdfAction.CreateGoTo | Kilang untuk tindakan GoTo |
PdfAction.CreateNamed | Kilang untuk tindakan bernama |
ActionCollection | Koleksi tindakan pada halaman atau anotasi |
DestinationCollection | Daftar destinasi bernama |
ActionType | Enumerasi: GoTo, URI, JavaScript, Named, Launch |