扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
2. Linux GNOME Print打印选项设置
在Linux平台上,可以使用GNOME Print来实现打印设置功能。GNOME Print是GNOME支持Linux打印的模块。GNMOE Print涵盖了打印实现的各个方面,比如设置打印功能,生成打印文档,设置打印字体等等。以下仅针对GNOME Print中和设置打印选项相关的功能进行阐述。
Linux GNOME Print系统打印设置对话框如图2所示。该对话框是GNOME Print打印设置的前台UI界面。在GNOME Print中,打印设置的后台数据被封装在结构GnomePrintConfig中。同时,GNOME Print还提供了一系列函数,如gnome_print_config_set()和gnome_print_config_get(),来访问该结构。详细内容请参考第四小节。
Linux GNOME Print系统打印设置和Windows系统打印设置在数据接口和定义上是完全不同的。必须通过数据转换才能实现他们之间的互操作。这就是移植的核心,也是本文重点阐述的内容。
3. GNOME Print打印选项设置移植结构
图3展示了在Linux平台上实现Windows打印选项设置移植的基础结构。从图中可以看出,打印选项设置移植的核心就是实现不同平台数据接口的转换:即Windows平台打印选项设置结构DEVMODE和Linux GNOME Print打印选项设置结构GnomePrintConfig之间的转换。下一小节将详细阐述这些数据结构之间的转换细节。
4 GNOME Print打印设置移植细节
为了使用Linux GNOME Print实现打印设置,通常要引入下列头文件:
|
在GNOME Print中,和前台UI对话框的相关的结构和接口被定义在第一个头文件中;而和后台数据处理相关的结构和接口则被定义在第二个头文件中。
使用GNMOE Print实现打印设置移植的流程如图4所示。以下将逐一讨论这个流程中的各个细节。
4.1 设置GNOME Print打印作业
启动GNOME Print打印设置的第一步是使用gnome_print_job_new() 来创建一个打印作业,即GnomePrintJob。每一个GnomePrintJob都和一个打印作业设置,即GnomePrintConfig,相关联。事实上,使用GNOME Print设置打印选项就是通过设置GnomePrintConfig来完成的。将参数NULL传递给gnome_print_job_new() 意味着创建一个新的GnomePrintJob,并用默认值设置和它关联的GnomePrintConfig。
|
4.2 设置GNOME Print打印参数
得到GnomePrintConfig后,用户可以根据需要修改打印作业设置。如下代码设置了三个重要的打印参数:
1. 打印纸张名称:A4。
2. 打印纸张方向:R0。在GNOME Print中,R0和R180表示打印纸张方向为纵向;R90和R270则表示打印纸张方向为横向。
3. 打印纸张长度单位表示:cm(厘米)。长度可以使用厘米或英寸(inch)等单位来表示。在此时使用cm以方便移植。
|
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者