Werken met Page Sets
Werken met paginaverzamelingen
Deze gids laat zien hoe je een subset van de pagina’s van een document beschrijft – een willekeurige selectie van paginanummers, in plaats van één aaneengesloten bereik – met behulp van PageSet in Aspose.Words FOSS voor .NET. PageSet is een sealed class in de Aspose.Words.Saving namespace die een willekeurige set pagina’s beschrijft.
Een PageSet construeren
PageSet heeft drie constructors: PageSet(page) bouwt een één-pagina set op basis van een enkele paginanummer; PageSet(pages) bouwt een set op basis van een verzameling exacte paginanummers; en PageSet(ranges) bouwt een set op basis van een verzameling paginaranges. Kies de constructor die overeenkomt met de manier waarop de paginakeuze in jouw scenario wordt uitgedrukt — een enkele pagina, een verspreide lijst van pagina’s, of aaneengesloten reeksen.
Ingebouwde sets: All, Even en Odd
Drie statische properties bieden kant-en-klare sets zonder er handmatig één te construeren: PageSet.All geeft een set terug met elke pagina van het document in de oorspronkelijke volgorde, PageSet.Even geeft een set terug met alleen de even genummerde pagina’s, en PageSet.Odd geeft een set terug met alleen de oneven genummerde pagina’s.
Enumereren van een paginaverzameling
PageSet implementeert IEnumerable<int>, dus elke PageSet instantie – of deze nu direct wordt geconstrueerd of verkregen uit All, Even of Odd – kan worden geïtereerd met GetEnumerator() (of een foreach lus) om de pagina-indices die het bevat te doorlopen.
Tips en best practices
- Gebruik
PageSet.All,EvenofOddvoor de algemene gevallen in plaats van een expliciete indexlijst te construeren, tenzij de selectie niet overeenkomt met een van die drie patronen. - Kies de
PageSet(pages)constructor voor een verspreide, niet-aaneengesloten paginaselectie, enPageSet(ranges)wanneer de selectie op natuurlijke wijze wordt uitgedrukt als één of meer aaneengesloten reeksen. - Omdat
PageSetIEnumerable<int>implementeert, kan het overal worden gebruikt waar eenIEnumerable<int>van paginacijfers wordt verwacht, zonder extra conversiestap.
Veelvoorkomende problemen
| Probleem | Oorzaak | Oplossing |
|---|---|---|
Een PageSet gebouwd uit PageSet.Even of Odd lijkt leeg wanneer opgesomd op een kort document | Het document heeft minder even (of oneven) pagina’s dan verwacht | Bevestig de werkelijke paginatelling van het document voordat u vertrouwt op Even/Odd |
| Niet zeker welke constructor te gebruiken voor een mix van individuele pagina’s en bereiken | PageSet(pages) en PageSet(ranges) accepteren elk slechts één vorm van invoer | Maak aparte PageSet-instanties voor de indexen en de bereiken, of normaliseer de selectie naar één vorm voordat u deze construeert |
FAQ
Hoe krijg ik een PageSet die elke pagina van een document bevat?
Gebruik de statische PageSet.All eigenschap.
Hoe selecteer ik alleen even of oneven pagina’s?
Gebruik PageSet.Even of PageSet.Odd.
Hoe bouw ik een PageSet uit een willekeurige lijst met paginanummers?
Gebruik de PageSet(pages) constructor met een collectie van exacte pagina-indexen.
Kan ik itereren over de pagina’s die een PageSet bevat?
Ja – PageSet implementeert IEnumerable<int>, dus GetEnumerator() of een foreach loop doorloopt de pagina-indexen die het beschrijft.
API Reference Samenvatting
| Klasse | Beschrijving |
|---|---|
PageSet | Beschrijft een set pagina’s; constructors voor een enkele pagina, exacte indexen, of bereiken; All, Even, Odd, GetEnumerator() |