ページセットの操作
ページセットの操作
このガイドでは、単一の連続した範囲ではなく、ページインデックスの任意の選択という形で、ドキュメントのページのサブセットを記述する方法を示します – 使用して PageSet in Aspose.Words の .NET 向け FOSS. PageSet は、名前空間内のシールドクラスです Aspose.Words.Saving 名前空間で、ランダムなページ集合を記述します。
PageSet の作成
PageSet には 3 つのコンストラクタがあります。PageSet(page) は単一のページインデックスから 1 ページのセットを構築し、PageSet(pages) は正確なページインデックスのコレクションからセットを構築し、PageSet(ranges) はページ範囲のコレクションからセットを構築します。シナリオでページ選択が表現されている方法――単一ページ、散在するページのリスト、または連続した範囲――に合致するコンストラクタを選んでください。
組み込みセット: All、Even、Odd
3 つの static プロパティは、手動で構築せずに利用できるセットを提供します。PageSet.All はドキュメントの全ページを元の順序で含むセットを返し、PageSet.Even は偶数ページのみを含むセットを返し、PageSet.Odd は奇数ページのみを含むセットを返します。
ページセットの列挙
PageSet は IEnumerable<int> を実装しているため、PageSet インスタンスは、直接構築した場合でも All、Even、または Odd から取得した場合でも、GetEnumerator()(または foreach ループ)で反復して、含まれるページインデックスを走査できます。
ヒントとベストプラクティス
- 明示的なインデックスリストを構築する代わりに、一般的なケースでは
PageSet.All、Even、またはOddを使用してください。ただし、選択がこれら3つのパターンのいずれにも合致しない場合は除きます。 - 散在した非連続のページ選択には
PageSet(pages)コンストラクタを選び、選択が自然に1つまたは複数の連続した範囲として表現できる場合はPageSet(ranges)を選択してください。 PageSetはIEnumerable<int>を実装しているため、ページインデックスのIEnumerable<int>が期待される場所ならどこでも、余分な変換ステップなしに使用できます。
一般的な問題
| 問題 | 原因 | 修正 |
|---|---|---|
短いドキュメントで列挙したとき、PageSet.Even または Odd から構築された PageSet は空であるように見えます | 文書の偶数(または奇数)ページが予想より少ないです | Even/Odd に依存する前に、文書の実際のページ数を確認してください |
| 個々のページと範囲が混在している場合、どのコンストラクタを使用すべきか分かりません | PageSet(pages) と PageSet(ranges) はそれぞれ入力形状を1つだけ受け付けます | インデックスと範囲それぞれに別々の PageSet インスタンスを作成するか、構築する前に選択を単一の形に正規化してください |
FAQ
ドキュメントのすべてのページを含む PageSet を取得するにはどうすればよいですか?
静的な PageSet.All プロパティを使用してください。
偶数ページまたは奇数ページだけを選択するにはどうすればよいですか?
PageSet.Even または PageSet.Odd を使用してください。
任意のページ番号リストから PageSet を作成するにはどうすればよいですか?
正確なページインデックスのコレクションとともに PageSet(pages) コンストラクタを使用してください。
PageSet が含むページを反復処理できますか?
はい – PageSet は IEnumerable<int> を実装しているので、GetEnumerator() または foreach ループで記述されたページインデックスを走査できます。
API Reference の概要
| クラス | 説明 |
|---|---|
PageSet | ページの集合を表します。単一ページ、正確なインデックス、または範囲用のコンストラクタ;All、Even、Odd、GetEnumerator() |