请教:如何实现多次打印内容输出到同一个文件?

时间:2021-09-29 19:52:09
本人在工作中,经常要打印一些资料。某些资料,可能需要合并到一起(按照某种顺序)整体打印出来,甚至一次打印多份。研究了几天,没有很好的解决方案,还望能够提供解决办法或思路。

4 个解决方案

#1


这个好像挺挑战的!我觉的,最好是统一一下格式,然后,对改格式下的所有的文件进行处理!

#2


我以前曾经这样做,将打印的内容——点阵数据保存到一个文件中,然后不断追加,再把这个文件一起打印输出。但当时是黑白的,实现起来简单。现在觉得不是很好用。

#3


看来大家都不是很清楚,自己来回答吧。以供探讨,可以使用MFC类CMetaFileDC,生成WMF和EMF格式文件,然后调用PrintDC的PlayMetaFile(好像是这样),来绘制到打印机上。不过还有一点问题,CMetaFileDC不支持SetMapMode相关的坐标映射操作。以上问题的解决方案为打印和记录文件分开——仅仅会在生成记录文件时,调用OnDraw或OnPrint;先生成记录文件,再将这个记录文件刷到打印机。所有过程中,可能会涉及到坐标映射、图像旋转、设备分辨率等内容——以前都已经实现,但与记录结合起来比较麻烦。

#4


已解决

#1


这个好像挺挑战的!我觉的,最好是统一一下格式,然后,对改格式下的所有的文件进行处理!

#2


我以前曾经这样做,将打印的内容——点阵数据保存到一个文件中,然后不断追加,再把这个文件一起打印输出。但当时是黑白的,实现起来简单。现在觉得不是很好用。

#3


看来大家都不是很清楚,自己来回答吧。以供探讨,可以使用MFC类CMetaFileDC,生成WMF和EMF格式文件,然后调用PrintDC的PlayMetaFile(好像是这样),来绘制到打印机上。不过还有一点问题,CMetaFileDC不支持SetMapMode相关的坐标映射操作。以上问题的解决方案为打印和记录文件分开——仅仅会在生成记录文件时,调用OnDraw或OnPrint;先生成记录文件,再将这个记录文件刷到打印机。所有过程中,可能会涉及到坐标映射、图像旋转、设备分辨率等内容——以前都已经实现,但与记录结合起来比较麻烦。

#4


已解决