FixedDocument всегда печатать первую страницу
У меня проблема при попытке печати многостраничного FixedDocument, например, мой предварительный просмотр показывает 3 разные страницы, но когда я нажимаю на печать или используя Printdialog(fixedDoc.DocumentPaginator,"namefile"), он всегда печатает 3 страницы с содержимым страницы 1. Вот мой код для фиксированного документа. lstBitMap представляет собой список BitmapEncoder
FixedDocument fixedDoc = new FixedDocument();
fixedDoc.DocumentPaginator.PageSize = pageSize;
foreach (var bitmap in lstBitMapEncode)
{
ImageSource imageSource;
using (var stream = new MemoryStream())
{
bitmap.Save(stream);
stream.Position = 0;
imageSource = BitmapFrame.Create(stream, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.OnLoad);
}
Canvas canvas = new Canvas();
canvas.Width = pageSize.Width;
canvas.Height = pageSize.Height;
canvas.Background = new ImageBrush(imageSource);
FixedPage.SetLeft(canvas, capabilities.PageImageableArea.OriginWidth);
FixedPage.SetTop(canvas, capabilities.PageImageableArea.OriginHeight);
//add canvas include image to page
FixedPage page = new FixedPage();
page.Width = fixedDoc.DocumentPaginator.PageSize.Width;
page.Height = fixedDoc.DocumentPaginator.PageSize.Height;
page.Children.Add(canvas);
// add the page to the document
PageContent pageContent = new PageContent();
((IAddChild)pageContent).AddChild(page);
fixedDoc.Pages.Add(pageContent);
}