MFC的打印预览功能,大家看一看,不会了进来顶一下,很急,一直加分ing

期盼曙光 2012-09-27 05:42:30
我现在MFC框架下实现了打印预览功能,但是在没有打印机的情况下这个页面出不来,原因是预览时传入的是打印机DC,这个pDC是根据当前默认的打印机的属性来构造的,所以现在的问题是我要实现这个功能,能不能再框架上修改对应的函数,自己创建打印机,然后使用框架,还是我要重写打印预览视图,不用框架,但是这个样子太复杂,牵扯到映射模式等概念。word没装打印机时,可以实现预览功能,我该怎样实现,请大家帮忙看一看。
...全文
562 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2012-09-28
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 的回复:]

引用 13 楼 的回复:

关于打印预览这里有个例子
预览和打印机无关
http://blog.csdn.net/xianglitian/article/details/5960970

您好!这个程序还是依靠打印机,在没有安装打印机时预览页面出不来的,您有没有其他的建议。我现在在重绘打印预览,就是自己从CScrollview派生个视图自己写,这样太麻烦,因为屏幕跟打印机不一样,所……
[/Quote]
装一个模拟驱动
码侬 2012-09-28
  • 打赏
  • 举报
回复
http://download.csdn.net/detail/gao_zilai/4604498
MFC生成打印预览功能示例
期盼曙光 2012-09-28
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 的回复:]

关键是"ONprepareDC",你改改看
[/Quote]
怎么改呢?
schlafenhamster 2012-09-28
  • 打赏
  • 举报
回复
关键是"ONprepareDC",你改改看
期盼曙光 2012-09-28
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]

关于打印预览这里有个例子
预览和打印机无关
http://blog.csdn.net/xianglitian/article/details/5960970
[/Quote]
您好!这个程序还是依靠打印机,在没有安装打印机时预览页面出不来的,您有没有其他的建议。我现在在重绘打印预览,就是自己从CScrollview派生个视图自己写,这样太麻烦,因为屏幕跟打印机不一样,所以有很多问题,该怎么办呢
向立天 2012-09-28
  • 打赏
  • 举报
回复
关于打印预览这里有个例子
预览和打印机无关
http://blog.csdn.net/xianglitian/article/details/5960970
期盼曙光 2012-09-28
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

啥机器连微软XPS虚拟打印机都没有……不会是Windows 2000吧
[/Quote]
意思就是没有打印机也要实现预览吗?大家不要纠结在机器上了嘛,主要是用代码如何实现啊
蒋晟 2012-09-28
  • 打赏
  • 举报
回复
啥机器连微软XPS虚拟打印机都没有……不会是Windows 2000吧
schlafenhamster 2012-09-28
  • 打赏
  • 举报
回复
vc6帮助下有个‘EZPrint’
你看看可能有好处:

EZPrint is okay for a start, but it hardly reflects the kinds of applications one finds in the real world. It doesn't have to deal with the issue of pagination because its documents have only one page. It creates the GDI resources it needs each time OnDraw is called, so there's no reason to override OnBeginPrinting and OnEndPrinting to allocate printer-specific resources. Even OnPrepareDC and OnPrint aren't necessary because there's nothing in EZPrint that distinguishes a printed view from a screen view.
期盼曙光 2012-09-28
  • 打赏
  • 举报
回复
不装驱动呢?用程序如何实现,比如说建一个打印机,然后获取这个打印机DC
期盼曙光 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
MFC 向导生成的多文档、单文档程序具备打印预览功能

其实打印预览仍然是在屏幕上打印
通过onpaint
[/Quote]
但是没装打印机就没法预览啊,谢谢回答
swp543210 2012-09-27
  • 打赏
  • 举报
回复
MFC 向导生成的多文档、单文档程序具备打印预览功能

其实打印预览仍然是在屏幕上打印
通过onpaint
期盼曙光 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
我现在MFC框架下实现了打印预览功能,但是在没有打印机的情况下这个页面出不来,原因是预览时传入的是打印机DC,这个pDC是根据当前默认的打印机的属性来构造的,所以现在的问题是我要实现这个功能,能不能再框架上修改对应的函数,自己创建打印机,然后使用框架,还是我要重写打印预览视图,不用框架,但是这个样子太复杂,牵扯到映射模式等概念。word没装打印机时,可以实现预览功能,我该怎样实现,请大家帮忙看一看……
[/Quote]

意思就是没装打印机,但是我要实现打印预览,不装打印驱动,能不能用程序实现。各位!帮忙啊
期盼曙光 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
引用 4 楼 的回复:
不要真实打印机,只要安装打印机驱动程序就不会有问题。

我想用代码如何实现,之前框架是OnFilePrintPreview(),ONprepareDC,onbeginprinting等,如何在没装打印机时自己设置一个打印机,
[/Quote]
项目是做给用户的,用户没装打印机驱动程序可以预览。
期盼曙光 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
不要真实打印机,只要安装打印机驱动程序就不会有问题。
[/Quote]
我想用代码如何实现,之前框架是OnFilePrintPreview(),ONprepareDC,onbeginprinting等,如何在没装打印机时自己设置一个打印机,
vcf_reader 2012-09-27
  • 打赏
  • 举报
回复
不要真实打印机,只要安装打印机驱动程序就不会有问题。
期盼曙光 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
“但是在没有打印机的情况下这个页面出不来,原因是预览时传入的是打印机DC”
不知道,我没有打印机,但可以预览。
[/Quote]

是在MFC打印框架下写的吗
schlafenhamster 2012-09-27
  • 打赏
  • 举报
回复
“但是在没有打印机的情况下这个页面出不来,原因是预览时传入的是打印机DC”
不知道,我没有打印机,但可以预览。
都市劳工 2012-09-27
  • 打赏
  • 举报
回复

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧