原创版权标志如何使用c++ 设置打印机的“高级”选项设置

作者:GyaoG  发表时间:2016/12/12 22:15:54  阅读:201
[摘要]C++技术网已经用心解答了用户提出的问题【如何使用c++ 设置打印机的“高级”选项设置】,如还有问题,请继续在文章底部留言交流,直到完全懂了为止。
文章来源:C++技术网 原创文章版权所有,未经授权,禁止转载。
我想使用c++代码可以设置如图中红色框的选项,但是我在CPrintDialog、 CPageSetupDialog都没找到相关可以设置的地方,百度和谷歌也没找到相关方法,所以特地来c++ 技术网请教!

C++技术网会员解答:

    为了解答这个问题,找了一晚上的MSDN,然后整理清楚了解答这个问题的答案了。如果要想实现各种高级的功能,你是不能仅仅依赖CPrintDialog、 CPageSetupDialog给你提供操作的,你需要直接使用打印机的API函数。

    打印机的所有操作,包括基本的和高级的,全部列出来,并给了中文和英文的函数功能,如果你要全面操作打印机就靠他们了。请阅读文章《打印机操作API大全,有了这些打印机全搞定》。这是最全面的API文章了。

    但是仅仅有这个API列表,你还需要花一些时间去了解,所以为了让你更快上手,这里就多说几句。

    图中你看到的是打印机的属性列表,其中框住的几个不过就是众多高级属性中的几个而已。前面提到的API里是可以搞定的。当然,你需要花一些时间好好学习一番,学习的资料就是MSDN。在这个快速开发的年代,打印机都已经组件化的太厉害了,一般人都不会去写打印机程序了。而且默认的打印对话框就够了,很少需要自己写程序定制,除非是专业的开发,所以这方面的文章也就少了。也就直接学习MSDN比较好。

    而图中众多的属性直接对应的就是文档属性,含打印机属性。在函数DocumentProperties中的第四个参数体现,这个参数就是指向DEVMODE结构体,第四个参数用于接收属性,而第五个参数就是去设置属性了。所以这两个参数都是一个指向DEVMODE结构体的指针了。那么DEVMODE结构体就是图中的内在映射了。结构体中含有各种状态位,然后各种API会操作一些状态。

    有了API函数列表和DEVMODE结构体的了解,完胜打印机程序。当然这个一了解可要花不少时间哦。你想呀,要想牛逼,不花时间和精力怎么行呢?

    好了,这里只能给你指个方向了。只要你愿意花时间,很快你就是打印机专家了。

文章来源:C++技术网 原创文章版权所有,未经授权,禁止转载。



返回顶部

关于我们 QQ群 广告服务 增值服务 捐款资助 版权声明 RSS订阅 站点地图 百度网站地图 意见反馈
鄂ICP备14001349号-2, Copyright © 2014-2017, CJJJS.COM/CJJJS.CN, All Rights Reserved

在线提问
问题标题:
问题描述:(简陋的描述会导致问题被最后回答、没有针对性回答甚至无法解答。请确保问题描述的足够清楚。)

C++技术网群聊