【发布时间】:2011-10-13 18:19:45
【问题描述】:
(结尾有短版)
我目前正在开发的软件需要跟踪任意数量的 MS Office 文件,现在需要提供将所有这些文件连同一些应用程序数据一起打印的功能(可能会发送到打印机作为 .xps、.html 或 .txt 类型的文件)。一个一个地打印每个文件是相当简单的,但是会为每个文件生成单独的打印作业。如果在办公室中设置打印机以在每个打印作业开始时使用打印作业的用户名和时间打印一张纸,这是非常糟糕的,并且它可能允许共享打印机的其他用户在作业之间进行打印。 另外,作业是否有未按正确顺序处理的可能性?1
有没有办法将任意 Office 文档集合组合为一个打印作业?
编辑:另一种可以接受的解决方案是将所有文档组合成一个 pdf/xps(或类似)文档的方法?这既可以实现主要目标,又可以更快地打印未来的副本,因为我们可以打印一个大文档而不是每个单独的文档(当然,直到添加一个新文档)。
1(在原帖后编辑)
短版
鉴于:
- 任意收集 MS Office 文件(.doc[x]、.xls[x]、.ppt[x])
- 应用数据(生成字符串,可以打印成.txt、.html等)
实现:
- 将所有文件作为一个打印作业打印,方法是合并到一个作业中,或者在打印前合并到一个文件中。
问题:
可以做到吗?如果有,怎么做?
【问题讨论】:
-
也可以看看stackoverflow.com/questions/3444931/…。您应该使用 GPL 版本并遵循其许可; AFPL 版本的许可方式会阻止您将其与您的应用程序一起分发(假设它们是商业应用程序)。您需要将 GPL 代码保存为由您的程序调用的单独应用程序,以避免许可问题。当然,您应该验证而不是相信随机 SO 用户的法律建议;我可能错了。
-
你开发的软件是服务器端的(如Windows Service、IIS/ASP.NET等)吗?
标签: c# .net printing ms-office