如何控制打印机传纸

xinqiao2008 2008-12-24 10:48:29
纸是用来打票据的,票据纸全连在一起(用手撕虚线撕开的那种),每张纸大小固定为7.5cmx15cm,但打印机每次打印完出纸都传出A4纸高(29.5cm)的纸,现在要只打印后出纸到指定的7.5cm处就停止出纸.
(一定要用TPrinter)
TPrinter *Print = Printer();
int iLength = 170;
int iWidth = 1500;
char *ADevice, *ADriver, *APort;
THandle DeviceMode;
PDeviceMode DevMode;
ADevice = new char[100];
ADriver = new char[100];
APort = new char[100];
Printer()->GetPrinter(ADevice, ADriver, APort, DeviceMode);
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 = iLength;
DevMode->dmPaperWidth = iWidth;
Print->BeginDoc();
/*
...
*/
Print->EndDoc();
...全文
90 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xinqiao2008 2009-01-09
  • 打赏
  • 举报
回复
原来这么简单
w88529593 2009-01-06
  • 打赏
  • 举报
回复
把打印机的默认纸张大小设置为你所需的大小即可,不过这个打印机只能打印这一种样式的纸张了,如果需要再打A4纸张,那么把打印机的纸张大小再设置为A4即可
xinqiao2008 2008-12-24
  • 打赏
  • 举报
回复
不能用QUICK report的
xjq2003 2008-12-24
  • 打赏
  • 举报
回复
最好用QUICK report做这个票据,
注意用QUICK report4.07以上版本的,3.09版本的打印也会一直走A4的纸版本

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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