如何让打印机不自动走纸 ( 积分: 100 )

  • 主题发起人 主题发起人 findwo
  • 开始时间 开始时间
F

findwo

Unregistered / Unconfirmed
GUEST, unregistred user!
如何让打印机不自动走纸
如我使用
printer.begin
doc
printer.enddoc
后打印机就会自动前面留1.2cm,后面留1.2cm如何让它不留这些空白?
 
如何让打印机不自动走纸
如我使用
printer.begin
doc
printer.enddoc
后打印机就会自动前面留1.2cm,后面留1.2cm如何让它不留这些空白?
 
设置自定义纸张
 
我现在用的就是自定义纸张
 
用winapi 的方法:
添好一行到STRING 中;printstring(s:string);
再用prnlf(no:cardinal);
换行(NO:换行数);
直到所有行打完
//----------------------------------回车、换行-------
procedure prnlf(no:cardinal);
var i:cardinal;
begin
for i:=1 to nodo
begin
printstring(chr(13));
printstring(chr(10));
end;
end;
//----------------------------------
procedure printstring(s:string);
type
tdocinfor=record
pdocname:pchar;
poutputfile:pchar;
pdatatype:pchar;
end;

var handle:Thandle;
N:DWORD;
do
cInfo1:TDOCINFOR;
prtname:string;
begin
prtname:= printer.Printers[printer.printerIndex];
if not openPrinter(pchar(prtname),handle,nil) then
begin
showmessage('打印机错误:'+INTTOstr(getlasterror));
exit;
end;
withdo
cinfo1do
begin
pdocname:=pchar('testdo
c');
poutputfile:=nil;
pdatatype:='RAW';
end;
startdocprinter(handle,1, @docinfo1);
startpageprinter(handle);
writeprinter(handle,pchar(s),length(s),N);
endpageprinter(handle);
enddocprinter(handle);

closeprinter(handle);
end;
 
想打印机发送char(27)+char(10)不行?
 
printstring(chr(27));
printstring(chr(10));
或str[1]:chr(27);
str[2]:=chr(10);
printstring(str);
 
现已找到解决方法谢谢热心的富翁们!
 
后退
顶部