fastreport自定义打印的问题!如何实现报表一直打印,直到打印结束!中间不间断! ( 积分: 100 )

  • 主题发起人 主题发起人 hqhhh
  • 开始时间 开始时间
H

hqhhh

Unregistered / Unconfirmed
GUEST, unregistred user!
如何实现报表一直打印,直到打印结束!中间不间断!
我设置的自定义纸张为无限长,可当我需打印的报表长度超过一定限度时,下面的内容就打印不出来了,不知谁有没有遇到这种情况!
 
如何实现报表一直打印,直到打印结束!中间不间断!
我设置的自定义纸张为无限长,可当我需打印的报表长度超过一定限度时,下面的内容就打印不出来了,不知谁有没有遇到这种情况!
 
這個跟打印機的支持紙張有關系。
FastReport本來就是連續打印的。不是很清楚你的意圖。
 
比如:我有1000条记录,一般40条记录一张纸,然后分页,
我不需要分页,我的要求是一直打,两页之间不要留空行,
因为我有分组,如果有空行就不可以了,第一页有页头,最后一页有页脚!
不知大家明白不明白!
 
你試試調打印機的自定義紙張看看,註意是打印機的,不是報表的。
 
该设置的都设置了,不行!
今天又被客户叫去,但不能解决,只好回来再试试!
因为我的报表很复杂,里面有两个分组,有很多记录,又不能分页,只能连打,
若设置分页,则中间必有空行,且最后一页如果不滿一页,则必走一段页,
唉!
快没有办法了!
请各位帮忙看看!
 
请各位再帮忙看看!
 
不分页,真的很少见,
 
请大家再帮忙看看!
 
我也遇到这样问题,不过我是自己打印的用
Printer.begin
Doc;
//以下是打印内容
Printer.Canvas.TextOut(CmToPixelX(20), CmToPixelY(5), '这是输出的动态和静态内容);
........................
Printer.EndDoc;
在WIN2000下没有自定义纸张大小,只能定义固定长度大小的纸,而我要打印的页长是根据要打印的内容的多少是不一定的。
请各位帮助??
 
用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;
 
无认怎么使用,打印机的纸张找度总有一个限度,好像是32英寸吧,所以你必须到一定程度就要重新开始一页。
 
试一下安装PDF打印机,在PDF打印机里设置
 
谢谢以上各位:
 
to:hearwind cui5555,
因我的报表比较复杂,所以不能用你们的方法,请帮忙再看看!
 
一:打印机必须支持自定义纸张,设为默认
二:在打印前计算需要的纸张页长,设置frf的纸张长度!
三:此方法只有win 2000支持,在98下需要程序在打印时修改打印机的自定义长度!
 
后退
顶部