您会如何建议我将 FlowDocument 转换为 PDF 以附加到电子邮件中?
FlowDocument 是动态的,而不是静态的。
我希望能够将 PDF 作为 byte[] 存储在内存中,而不是存储在磁盘上,但这是可以协商的。
感谢您的帮助!
我假设您希望以编程方式而不是手动过程进行此操作。
方法一:安装 PDF 驱动程序,例如Amyuni http://www.amyuni.com/en/enduser/pdfconverterend or PrimoPDF http://www.primopdf.com/。使用所需的 PrintTicket/页面大小将 FlowDocument 打印到打印驱动程序。您从中获得的 PDF 应该是一个相当不错的转换。其中一些驱动程序(例如 Amyuni)具有 SDK,您可以通过编程方式控制此过程。
方法二:使用 XPS 驱动程序以编程方式打印到 XPS,无需“另存为”对话框; Windows DDK 中有一个示例,您可以相当轻松地自行构建。然后使用 XPS 到 PDF 转换器,例如NiXPS http://www.nixps.com/或 Adobe SDK(太贵了,我不会发布链接)或GhostXPS http://ghostscript.com/GhostXPS.html将 XPS 直接转换为 PDF。
方法三:使用以下方法将流程文档直接转换为 XPSThis one http://blogs.msdn.com/b/fyuan/archive/2007/03/10/convert-xaml-flow-document-to-xps-with-style-multiple-page-page-size-header-margin.aspx然后使用 XPS 到 PDF 转换器,例如上面提到的转换器。
免责声明:我不为任何这些公司或其竞争对手工作。我使用了 Adobe SDK、Amyuni 打印机和各种 XPS 技巧,并取得了相当大的成功。没有任何方法能够以 100% 的准确率进行转换。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)