linux初探

首页

应用服务器

Linux技巧

中文文档

Linux初级

服务器源代码

命令详解

Linux技术应用

Linux安全应用

Linux业界新闻

UniX技术文章

Linux编程与内核

Linux数据库

Linux服务器

Linux安装指导

Linux论坛

首页>>Linux编程与内核>>文章正文

C++Builder中动态更改自定义打印纸张

因网上只有Delphi例子本人在用CB编写时发现有一些例子不能用,所以一生气就索性查了查资料自己写了,怕网友们在用编程时也遇见此类情况,就马上传了上来。

void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
char *ADevice, *ADriver, *APort;
THandle DeviceMode;
PDeviceMode DevMode;
int length,width;
length=1400;
width=2410;//设定自定义纸张的尺寸单位为0.1毫米
ADevice =new char[100];
ADriver =new char[100];
APort =new char[100];
//获取打印机
Printer()->GetPrinter(ADevice, ADriver, APort,DeviceMode);
//获取PDevMode结构
DevMode =(_devicemodeA*) GlobalLock((void *)DeviceMode);
//设定可以修改的值
DevMode->dmFields = DevMode->dmFields|DM_PAPERSIZE;
DevMode->dmFields = DevMode->dmFields|DM_PAPERLENGTH;
DevMode->dmFields = DevMode->dmFields|DM_PAPERWIDTH;
//设定要修改的值
DevMode->dmPaperSize=DMPAPER_USER;//设为自定义纸张
DevMode->dmPaperLength=length;
DevMode->dmPaperWidth=width;

//测试打印
Printer()->BeginDoc();
TextOut(Printer()->Handle, 0, 0, "-----------------",17);
Printer()->NewPage();
TextOut(Printer()->Handle, 0, 0, "++++++++++++++++++",18);
Printer()->NewPage();
Printer()->EndDoc();
}

相关文章

·教你如何使用 C++Builder 制作闹钟
·在linux平台上创建超小的ELF可执行文件
·在Linux Kernel內新增一个System Call
·LINUX的系统内核空间的保护
·gcc常用的编译选项对代码的影响
·Linux Unicode 编程
·Linux高级应用CpuMemSets在Linux中的实现
·在FC3下正确安装内核源代码详细步骤
·提升 Linux 开发者的能力

热门文章

·Linux下的编程 PHP高级技巧全
·用Java获得IP地址
·新手学习之浅析一下c/c++中的
·在Linux系统中安装Java
·应用2.6内核超线程模式
·使用TC实现基于linux的流量管
·Linux启动添加内核参数简介
·Linux下的编程 PHP高级技巧全
·在php中避免重复引用的办法
·Linux下的编程 PHP高级技巧全

Copyright@2005 www.linuxGoo.com All Right Reserved