我FixedDocument
通过添加FixedPages
到创建一个PageContents
,然后将它们添加到FixedDocument
这样的
FixedDocument fd = new FixedDocument();
// add FixedPages in PageContent to fd
用 打印它们PrintDialog
,像这样
pdialog.PrintDocument(fd.DocumentPaginator, "Test");
产生正确的页数。但是,打印的每一页(例如打印到 PDF)都是第一页的内容。
我尝试测试ImageSources
我添加到的FixedPages
,这些似乎是正确的。FixedDocument
我也用DocumentViewer
这样的方式测试了决赛
Window wnd = new Window();
DocumentViewer viewer = new DocumentViewer();
viewer.Document = fd;
wnd.Content = viewer;
try
{
wnd.Show();
}
catch(Exception e)
{
Console.WriteLine(e.ToString());
}
这奇怪地显示了我期望的正确输出。更奇怪的是我得到了一个IOException
after wnd.Show();
(这就是为什么我用 try/catch 包围它)。即使使用 try catch,我也只能在IOException
我的MainWindow
. 诸如“错误的用户名或密码”之类的东西 - 这没有意义,因为我要打印的图像是本地图像。
撇开DocumentViewer
不谈,我Print()
只打印第一页 n 次(n 是它应该是实际页数)的方法的问题仍然存在,只是认为其中的异常DocumentViewer
可能会让某人了解潜在的问题。
这可能是FixedDocument 总是打印第一页的可能副本- 但是他没有提到问题DocumentViewer
并且问题仍未得到解答。
提前感谢您的帮助!