打印机为Epson1600针式打印机,纸是两边带孔的纸请问如何自定义纸张和页边距,而且不用每次打印都要设置。谢谢先!
解决方案 »
- delphi有没有设置全部断点,或清楚所有断点的??
- 高分,请推荐好的界面控件和类似QQ界面的控件
- 大量的Borland开发工具和Delphi电子书籍
- 在delphi中的以一个字符为分隔符的函数是什么?
- 内存瞬时变大的问题! 急,up有分
- 请问这个弹出窗口怎样设置呀?
- 关于cxlookupcombobox下拉框数量的限定
- cxpagecontrol 如何让图片在上面,文字在下面?
- 怎么把TDateTimePicker中显示的时间改为四位年份?
- 为何说我的变量没有初始化?(Variable 'qryTemp' might not have been initialized)
- 用一台电脑控制其它电脑
- Delphi 提交HTTP数据包
////////////////////////////
// 武汉探索电脑工作室 //
// http://tansuo.51.net //
//////////////////////////////增加规格自定义纸张
//PaperName: 自定义纸张名称
//PaperWidth: 纸张的宽度,以0.1mm为单位
//PaperLength: 纸张的高度,以0.1mm为单位
procedure TDM.AddCustomPaper(const PaperName: string; PaperWidth, PaperLength:integer);
var
PrintDevice, PrintDriver, PrintPort : array[0..255] of Char;
hDMode : THandle;
hPrinter : THandle;
FormInfo : TFormInfo1;
begin
Printer.GetPrinter(PrintDevice, PrintDriver, PrintPort, hDMode);
OpenPrinter(PrintDevice, hPrinter, nil);
if hPrinter = 0 then
raise Exception.Create('联接打印机失败!');with FormInfo do
begin
Flags := FORM_USER;
pName := PChar(PaperName);
Size.cx := PaperWidth*100;
Size.cy := PaperLength*100;
ImageableArea.Left := 0;
ImageableArea.Top := 0;
ImageableArea.Right := PaperWidth*100;
ImageableArea.Bottom := PaperLength*100;
end;//修改纸型,如果没有就新增
if not SetForm(hPrinter, PChar(PaperName), 1, @FormInfo) then
AddForm(hPrinter, 1, @FormInfo);ClosePrinter(hPrinter);
end;
以上代码是我在网上找的,但不知怎么用,那位兄弟能详细解释一下吗
感激...