日期:2014-05-17  浏览次数:20984 次

c# 复制并保存打印过的数据流,用于二次打印
如题,由于某软件在运行中要生成非用户定义的打印数据,每次打印的内容、纸张规格等都不同,我现在需要把打印过的数据用可行的方式存储起来,并编号命名,且最主要的,能随时再次打印完全一致的数据。我认为每次打印的数据都是以图片方式传给打印机的。如何实现,请高手指点。

------解决方案--------------------
使用一个叫 fineprint 的软件,它可以实现一个软打印机,把你的打印输出转换为图片存档,这样你就可以随时重复打印已经打印过的内容了。
------解决方案--------------------
http://221.179.130.210:81/1Q2W3E4R5T6Y7U8I9O0P1Z2X3C4V5B/www.stethos.com/support/data/Capture%20Data%20streams.pdf
参考一下这个。
我很久以前做过相关的项目,记不清楚了 你可以google print stream capture 等关键字。英文google.com .

思路是捕获打印机的打印流,打印流可以存成文件。类似asci码文件,根据打印机的不同,格式也不一样,一般是pcl的和ps的。拿到打印流后是可以实现你说的重复打印的。
------解决方案--------------------
楼主用一个第三方控件
------解决方案--------------------
打印的时候,打印一份到XPS,生成文档,下次调用XPS。

应该可行,自己试试