(最后的短版)
我正在开发的软件需要跟踪任意数量的MS Office文件,现在需要提供将所有这些文件一起打印的功能,以及一些应用程序数据(可能会发送到打印机)作为.xps,.html或.txt类型的文件。逐个打印每个文件是相当简单的,但会为每个文件生成单独的打印作业。在办公室中设置打印机以在每个打印作业开始时用打印作业的用户名和时间打印纸张的情况下,这是非常糟糕的,并且它可以允许共享打印机的其他用户在作业之间进行打印。 此外,是否有可能不按正确的顺序处理作业? 1
有没有办法将任意Office文档集合合并为一个打印作业?
编辑:可接受的替代解决方案是将所有文档合并到单个pdf / xps(或类似)文档的方法吗?这既可以实现主要目标,又可以更快地打印未来的副本,因为我们可以打印一个大文档而不是每个单独的文档(当然,除非添加新文档)。
1 (原帖后编辑)
假设:
Acheive:
问题:
可以吗?如果是这样,怎么样?
答案 0 :(得分:1)
是 - 如果您将所有内容转换为PDF并将这些PDF合并为一个...
有一些图书馆可以实现这一目标 - 但如果您想要涵盖所有办公室格式,您可能需要考虑Aspose.Total .NET(不是附属公司,只是一个满意的客户)......
编辑 - 根据评论:
另一个选项(特别是因为该软件本质上是一个“桌面应用程序”而http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257757#kb2主要不适用)是使用Office Interop创建PDF文件。文本可以很容易地转换为PDF(例如,通过使用Office Interop / Word并使用该文本创建中间Word文档)。
总而言之,这允许大多数要求的功能...以确保其中之间没有其他打印作业可以将PDF文件合并为一个PDF并打印...用于合并PDF有几个库(免费像Ghostscript,像Gnostice PDFOne那样商业化 - 有些甚至允许从文本/图像创建PDF,避免上面提到的中间Word文档。)