Page ranges accept a page number and return whether or not that page is in the range. When a page iterator is iterating over pages in the folio, it automatically skips pages that are not in the range. A page range also returns first and last page limits of the range, but page ranges do not have to be continuous. For example, page ranges that specify only odd or only even pages are quite useful. Printing services provide both even and odd page ranges. You can create other specialized page ranges for your needs.
Figure 89
To do more advanced preprocessing, you can use a page compositor to create special page iterators. You can use TPageCompositor to apply form templates or add adornments such as page numbers, headers, and footers to a page. It uses other page iterators as targets, allowing them to be chained together to provide special print processing.
Adornments represent page elements that are added to a folio when it is printed. The folio is not altered. These elements do not become a permanent part of the folio. Crop and fold marks are common examples of adornments.