打印机编程 - 初级入门篇

这篇博客介绍了打印机编程的基础步骤,包括获取打印机DC、开始打印、绘制页面、结束打印及清理资源。通过PrintDlg函数获取设备环境句柄,并展示了如何在DC上进行绘图操作。文章适合初级学习者,作者提醒可能存在错误并邀请读者指正,还推荐了中级篇内容作为深入学习的资源。
摘要由CSDN通过智能技术生成


具体步骤:

  1. 获得打印机DC(设备环境句柄).
  2. 开始打印(StartDoc).
  3. 开始一页(StartPage).
  4. 对DC进行绘图操作,就像往窗口上画图一样。
  5. 结束一页(EndPage).
  6. 结束打印(EndDoc)或转到第3步再开始新的一页.
  7. 删除打印创建的资源,如:释放DC(ReleaseDC)、删除字体、画笔、画刷之类的对象(DeleteObject)


第一步:

获得打印机DC(设备环境句柄)

可以用PrintDlg函数来获取DC。具体代码如下:

HDC hdc;
PRINTDLG printInfo; 
ZeroMemory(&printInfo,sizeof(printInfo)); //清空该结构 
printInfo.lStructSize = sizeof(printInfo); 
printInfo.hwndOwner = 0; 
printInfo.hDevMode = 0; 
printInfo.hDevNames = 0; 
printInfo.Flags = PD_RETURNDC | PD_RETURNDEFAULT | PD_ALLPAGES; 
//PD_RETURNDC指定返回DC,PD_RETURNDEFAULT 指定不显示打印设置对话框直接返回默认设置
PrintDlg(&printInfo);//调用API拿出默认打印机 
DWORD rst = CommDlgExtendedError();//看看出错没有 
if(rst != 0) 
{//出错了,清空标志再次调用API,此时就会弹出打印设置对话框供用户选择了 
printInfo.Flags = 0; 
PrintDlg(&printInfo); 
}
h
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值