我的C#Windows应用程序需要静默打印office文档(没有弹出对话框或打开Word,Excel等应用程序)。所以我试图找到一种无需办公室打印办公文档的方法(否则用户需要购买办公套餐也可以使用我的应用程序)。
Aspose.NET
,但似乎文档的某些部分(例如注释,注释)会被此组件忽略。Microsoft Office 2010: Primary Interop Assemblies Redistributable
。但是,当我发现使用MS Office PIA时,MS office需要安装在目标计算机中。 我应该考虑哪些想法?
答案 0 :(得分:0)
首先你应该明白,MSOffice使用专有格式,即最好的开源办公软件在阅读时遇到问题而不搞砸。
我的建议是 - 你要么采取一些损害最小的事情,要么就职。一个建议是:微软曾经制作“word reader”和“excel reader”,试着看看它们是否还在发布。
另一个想法是找到一个免费的office-to-pdf或office-to-xps转换软件,将其包含在你的程序和打印中。
在我的意见中,最困难的方法是将文档提供给某些在线服务,例如skydrive的文档阅读器,并请求它打印文件。
答案 1 :(得分:0)
根据应用程序的不同,您最好的选择可能是将内容保存到Open XML并对其进行解析(请注意,根据我的经验,以该格式保存的较大文档会有很多膨胀)或者只是保存为PDF。
另一个笨拙,但更独立的可能性是使用control.click等构建an automated clicker,在外部免费软件应用程序中打开内容并打印它。最引人注目的选择是Microsoft的“Viewer”应用程序(如果可用)。当对于特定文档类型不可用时,Microsoft建议OneDrive作为免费软件替代品(需要帐户,互联网连接)。
如果您不想使用第三方应用程序,那么可以为您提供创造性的,如果笨重的路线来完成您发布的目标。祝你好运!