IPageRange¶
IPageRange is the read-only contract for a page selection, implemented by PageRange. It exposes the boundary values plus three computed classification flags that distinguish an "all pages" selection from a partial or single-page one, which PdfClientService.ExtractPageRanges relies on to decide how to copy pages. (BR-14)
Purpose¶
- Defines the read surface a page selection must expose for page-extraction logic to classify and act on it.
Context¶
- Namespace:
PdfAPI.Core - Assembly/package:
PdfAPI.Core
Public members¶
| Member | Signature | Purpose |
|---|---|---|
| StartPage | int StartPage { get; } |
The first page (1-based) included in the selection. |
| StopPage | int StopPage { get; } |
The last page included in the selection; -1 denotes open-ended (through the last page). (BR-15) |
| IsPartial | bool IsPartial { get; } |
Indicates the selection covers a subset of pages rather than the whole document. |
| IsOriginal | bool IsOriginal { get; } |
Indicates the selection spans the entire original document (1 to -1). (BR-14) |
| IsSingle | bool IsSingle { get; } |
Indicates the selection covers exactly one page. |
Behavioral notes¶
PdfClientService.ExtractPageRangesbranches onIsOriginalversus the relative order ofStartPage/StopPageto decide whether to copy the whole document, copy ascending, or copy descending. (BR-14, BR-15, BR-16)
Constraints and usage notes¶
PageRangeis the only implementation shipped in the compiled assembly.*
Note: Statements marked with
*were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Related documentation¶
- Index
- Overview
- Architecture
- Dependencies
- Operations and processes
- Business rules
- Security and authorization
- API reference
Sources¶
PdfAPI.Core\Extract\PageRange.cs