Práce se sadami stránek
Práce s množinami stránek
Tento průvodce ukazuje, jak popsat podmnožinu stránek dokumentu – libovolný výběr indexů stránek, místo jedné souvislé oblasti – pomocí PageSet in Aspose.Words FOSS pro .NET. PageSet je uzavřená třída v Aspose.Words.Saving jmenném prostoru, který popisuje náhodnou sadu stránek.
Vytváření PageSet
PageSet má tři konstruktory: PageSet(page) vytvoří jednostránkovou sadu z jediného indexu stránky; PageSet(pages) vytvoří sadu ze sbírky přesných indexů stránek; a PageSet(ranges) vytvoří sadu ze sbírky rozsahů stránek. Vyberte konstruktor, který odpovídá tomu, jak je výběr stránek ve vašem scénáři vyjádřen – jedna stránka, roztříštěný seznam stránek nebo souvislé úseky.
Vestavěné sady: Vše, Sudé a Liché
Tři statické vlastnosti poskytují připravené sady, aniž byste je museli vytvářet ručně: PageSet.All vrací sadu se všemi stránkami dokumentu v jejich původním pořadí, PageSet.Even vrací sadu pouze se sudými čísly stránek a PageSet.Odd vrací sadu pouze s lichými čísly stránek.
Enumerování sady stránek
PageSet implementuje IEnumerable<int>, takže jakákoli instance PageSet – ať už je vytvořena přímo nebo získána z All, Even nebo Odd – může být iterována pomocí GetEnumerator() (nebo foreach smyčky) k procházení indexů stránek, které obsahuje.
Tipy a osvědčené postupy
- Použijte
PageSet.All,EvenneboOddpro běžné případy místo vytváření explicitního seznamu indexů, pokud výběr neodpovídá jednomu ze tří vzorů. - Zvolte konstruktor
PageSet(pages)pro rozptýlený, nesouvislý výběr stránek aPageSet(ranges), když je výběr přirozeně vyjádřen jako jeden nebo více souvislých úseků. - Protože
PageSetimplementujeIEnumerable<int>, může být použito kdekoliv, kde se očekáváIEnumerable<int>indexů stránek, bez jakéhokoli dalšího konverzního kroku.
Běžné problémy
| Problém | Příčina | Oprava |
|---|---|---|
A PageSet vytvořený z PageSet.Even nebo Odd se jeví jako prázdný při výčtu v krátkém dokumentu | Dokument má méně sudých (nebo lichých) stránek, než se očekávalo | Ověřte skutečný počet stran dokumentu, než se spolehnete na Even/Odd |
| Nejste si jisti, který konstruktor použít pro kombinaci jednotlivých stran a rozsahů | PageSet(pages) a PageSet(ranges) každé přijímají pouze jeden typ vstupu | Vytvořte samostatné instance PageSet pro indexy a rozsahy, nebo před vytvořením normalizujte výběr na jediný typ |
FAQ
Jak získám PageSet obsahující každou stránku dokumentu?
Použijte statickou vlastnost PageSet.All.
Jak mohu vybrat pouze sudé nebo liché stránky?
Použijte PageSet.Even nebo PageSet.Odd.
Jak vytvořím PageSet z libovolného seznamu čísel stránek?
Použijte konstruktor PageSet(pages) s kolekcí přesných indexů stránek.
Mohu iterovat přes stránky, které PageSet obsahuje?
Ano – PageSet implementuje IEnumerable<int>, takže GetEnumerator() nebo foreach smyčka prochází indexy stránek, které popisuje.
API Reference Shrnutí
| Třída | Popis: |
|---|---|
PageSet | Popisuje sadu stran; konstruktory pro jednu stránku, konkrétní indexy nebo rozsahy; All, Even, Odd, GetEnumerator() |