Function TSysPrinter_1.PrintMe: Boolean;
Var
PrnDevice, PrnDriver, PrnPort: Array[0..255] Of Char;
PrnHandle: THandle;
PrnMode: PDeviceMode;
Begin
Result:= False;
If PrnHandle = 0 Then
Begin
MessageBox(Application.Handle, '无法获取系统打印机信息!', '系统信息',
MB_OK + MB_ICONERROR);
Exit;
End
Else
Begin
PrnMode:= GlobalLock(PrnHandle);
With PrnMode^ Do
Begin
//打印份数
dmFields:= dmFields Or dmCopies;
dmCopies:= 1;
//打印方向
dmFields:= dmFields Or dmOrientation;
dmOrientation:= DMORIENT_PORTRAIT;
//纸张类型为用户自定义
dmFields:= dmFields Or dmPaperSize;
dmPaperSize:= DMPAPER_USER;
//纸宽,单位为0.1mm
dmFields:= dmFields Or dmPaperWidth;
dmPaperWidth:= PaperWid;
//纸长,单位为0.1mm
dmFields:= dmFields Or dmPaperLength;
dmPaperLength:= PaperLen;
dmFields:= dmFields Or PrnMode^.dmLogPixels;
dmLogPixels:= 300;