public static PdfRangeDocument FromDocument(PdfView.IPdfDocument document, int startPage, int endPage) { if (document == null) { throw new ArgumentNullException(nameof(document)); } if (endPage < startPage) { throw new ArgumentException("End page cannot be less than start page"); } if (startPage < 0) { throw new ArgumentException("Start page cannot be less than zero"); } if (endPage >= document.PageCount) { throw new ArgumentException("End page cannot be more than the number of pages in the document"); } return(new PdfRangeDocument( document, startPage, endPage )); }
public PageRangeForm(PdfView.IPdfDocument document) { _document = document; InitializeComponent(); _startPage.Text = "1"; _endPage.Text = document.PageCount.ToString(); }
private void _acceptButton_Click(object sender, EventArgs e) { int startPage; int endPage; if ( !int.TryParse(_startPage.Text, out startPage) || !int.TryParse(_endPage.Text, out endPage) || startPage < 1 || endPage > _document.PageCount || startPage > endPage ) { MessageBox.Show(this, "Invalid start/end page"); } else { Document = PdfRangeDocument.FromDocument(_document, startPage - 1, endPage - 1); DialogResult = DialogResult.OK; } }
private PdfRangeDocument(PdfView.IPdfDocument document, int startPage, int endPage) { _document = document; _startPage = startPage; _endPage = endPage; }