2012-02-03 80 views
0

我使用PdfSharp/MigraDoc在应用程序中创建和查看文档。从WPF应用程序打印MigraDoc文档

我使用WPF版本,因为我需要WPF文档查看器。现在我想打印文档(可从DocumentViewer中运行),但出于某种原因,当我尝试打印自己时,我只能看到空白页面。

我使用此代码打印:

MigraDocPrintDocument printDocument = new MigraDocPrintDocument(); 
printDocument.Renderer = new DocumentRenderer(druck.GetDruck()); 
printDocument.Renderer.PrepareDocument(); 
printDocument.Print(); 

什么我需要做的打印从WPF(从WinForms的这个工作很好,但我需要WPF为的DocumentViewer)。

回答

2

这是MigraDoc 1.31的已知错误:只有在使用GDI +版本时,打印才有效。
作为解决方法,您可以尝试使用两种版本 - WPF构建预览版,GDI +构建版直接打印。

+0

但是使用来自同一个程序集的两个版本是非常棘手的,因为它们共享命名空间 - 不是吗? – Sam 2012-02-06 09:01:46

+1

您不必在同一个程序集中同时使用两个版本 - 创建一个使用GDI +的新PrintHelper程序集并将文档传递给作为MigraDoc DDL字符串。另见:http://www.pdfsharp.net/wiki/MigraDocDDL.ashx – 2012-02-06 14:56:44