delphi 设置打印机 纸张大小! 也可以获取纸张大小


本文整理自网络,侵删。

 Var 
aDevice: array[0..CCHDEVICENAME-1] of Char;
aDriver: array[0..MAX_PATH-1] of Char;
aPort: array[0..31] of Char;
hDevMode: THandle;
pDevMode: PDeviceMode;
begin
// 获取打印机DeviceMode的句柄

Printer.GetPrinter(aDevice, aDriver, aPort, hDevMode);
if hDevMode <> 0 then
begin
// 获取指向DeviceMode的指针
printer.PrinterIndex:=printer.PrinterIndex;
pDevMode := GlobalLock(hDevMode);
if pDevMode <> nil then
begin
pDevMode^.dmPaperSize := DMPAPER_USER; //自定义纸张
pDevMode^.dmPaperLength := 250; //纸长你可用变量获得纸张的长、宽。
pDevMode^.dmPaperWidth := 400; //纸宽
pDevMode^.dmFields := pDevMode^.dmFields or DM_PAPERSIZE;
pDevMode^.dmFields := pDevMode^.dmFields or DM_PAPERLENGTH;
pDevMode^.dmFields := pDevMode^.dmFields or DM_PAPERWIDTH;
ResetDC(Printer.Handle, pDevMode^);
GlobalUnlock(hDevMode);
end;
end;

相关阅读 >>

Delphi异常死亡进程的自动复活

Delphi listbox防止添加重复

Delphi 根据扩展名的文件搜索

orangeui作者开源作品

Delphi 内存管理[4]

Delphi 用 gdi+ 给图片添加花边的例子

Delphi著名皮肤控件库大全评测

Delphi 得到字符串拼音首字母

Delphi 判断一个数组的长度用 length 还是 sizeof ?

Delphi + word = 数据库 + 公文处理

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...