Пример #1
0
        public override DocumentPage GetPage(int pageNumber)
        {
            // create page element
            var pageTemplate = new PageTemplate();

            // set margins
            pageTemplate.SetPageMargin(_margin);

            // set content
            pageTemplate.PageContent.Child = _pages[pageNumber];
            pageTemplate.PageContent.Stretch = _scaleMode == ScaleMode.ActualSize
                ? System.Windows.Media.Stretch.None
                : System.Windows.Media.Stretch.Uniform;

            // set footer text
            pageTemplate.FooterRight.Text = string.Format("Page {0} of {1}",
                pageNumber + 1, _pages.Count);

            // arrange the elements on the page
            pageTemplate.Arrange(new Rect(0, 0, _pageSize.Width, _pageSize.Height));

            // return new document page
            return new DocumentPage(pageTemplate);
        }