2010-05-18 85 views
3

我想知道是否有内置Silverlight或可能允许打印报告的c#内容?如何在Silverlight 4中打印报告

我很高兴有很多方法:将文件导出为pdf格式并从那里打印,导出为某种类型的文本文件并从那里打印,或者只是简单地从Web应用程序显示打印对话框本身。

我知道有办法在C#中要做到这一点,但C#代码隐藏不同的是很多事情在Silverlight应用程序和我似乎无法找到任何东西,将工作。

所以,如果任何人有任何想法,我可以尝试它会非常感激!

回答

4

Silverlight那样有内置的位图打印支持,因为版本4.您可以找到关于肖恩的博客一些好的信息: http://wildermuth.com/2009/11/27/Silverlight_4_s_Printing_Support

正如我所说,这只是基于位图虽然与附带的缺点位图(没有适当的缩放比例等)。

另外一个很好的解决办法,我喜欢的是你要打印到服务器端PDF格式的数据转换。您可以在服务器上托管Web服务,通​​过该服务将数据从客户端发送到服务器,然后在服务器上使用例如Acrobat Distiller或任何您想要生成PDF文件的PDF打印实用程序。当PDF生成完成后,服务器将URL发送回指向新生成PDF文件的客户端。例如,在您的Silverlight应用程序中,您可以在新窗口中简单地打开该URL。 然而,这只是PDF导出而不是打印,因为PDF只会在客户端打开,而不会自动打印。

相比之下,客户端的PDF生成在Silverlight中默认是不可能的。然而,有可以做到这一点的第三方库。

干杯,亚历克斯

+0

在这个阶段,我会非常满意基于位图的打印。但是这种提到的PDF生成方法看起来是非常好的。如果我理解正确,它应该允许用户选择保存生成的报告或打印它,这最终会成为我想要在应用程序中加入的内容。 我一定会进一步研究你的解决方案,但它似乎正是我需要的!非常感谢你! – AmbiguousX 2010-05-18 19:15:42