我想在要打印的文本后面,加两个空行,可是即便我在Memo尾部用回车敲了两个空行,还是打印不出来。怎么办啊?代码如下,怎么修改,使之能在要打印的文本后面出现两个空行啊:procedure TForm1.Button2Click(Sender: TObject);
var
Left1,Top1,PageHeight,i,x,y,LineSpace : integer;
begin
Top1 := 20;
Left1 := 10;
y := Top1;//Top 起始行的位置,比如设置 Top := 20;
x := Left1;//Left 左边的起始位置,比如设置:Left := 20;
PageHeight := 2600;//A4得纸张大概是这么多,我记不太清,你可以通过某个过程先得到这个数据,
LineSpace := 24;//行间距 printer.Canvas.Font.Name:='DEFAULT';
printer.Canvas.Font.Charset:=DEFAULT_CHARSET;
printer.Canvas.Font.Size:=17;
printer.Canvas.Font.Style:=[fsBold]; Printer.BeginDoc;
for i := 0 to Memo1.Lines.Count - 1 do
begin
Printer.Canvas.TextOut(x,y,Memo1.Lines[i]);
y := y + LineSpace;
if(y > PageHeight) then
begin
Printer.NewPage;
y := Top;
end;
end; Printer.EndDoc;
end;
var
Left1,Top1,PageHeight,i,x,y,LineSpace : integer;
begin
Top1 := 20;
Left1 := 10;
y := Top1;//Top 起始行的位置,比如设置 Top := 20;
x := Left1;//Left 左边的起始位置,比如设置:Left := 20;
PageHeight := 2600;//A4得纸张大概是这么多,我记不太清,你可以通过某个过程先得到这个数据,
LineSpace := 24;//行间距 printer.Canvas.Font.Name:='DEFAULT';
printer.Canvas.Font.Charset:=DEFAULT_CHARSET;
printer.Canvas.Font.Size:=17;
printer.Canvas.Font.Style:=[fsBold]; Printer.BeginDoc;
for i := 0 to Memo1.Lines.Count - 1 do
begin
Printer.Canvas.TextOut(x,y,Memo1.Lines[i]);
y := y + LineSpace;
if(y > PageHeight) then
begin
Printer.NewPage;
y := Top;
end;
end; Printer.EndDoc;
end;
memo1.lines.add(' ');
begin
Printer.Canvas.TextOut(x,y,Memo1.Lines[i]);
if (y + LineSpace * 2) > PageHeight then
begin
Printer.NewPage;
y := Top;
end else y := y + LineSpace;
end;
var
i,x,y, LineSpace,PageHeight:integer;
begin
Memo1.Lines.Add(' ');
Memo1.Lines.Add(' ');
x:=20;
y:=10;
LineSpace:=24;
PageHeight := 2600;
Printer.BeginDoc;
for i := 0 to Memo1.Lines.Count - 1 do
begin
Printer.Canvas.TextOut(x,y,Memo1.Lines[i]);
if (y + LineSpace * 2) > PageHeight then
begin
Printer.NewPage;
y := Top;
end
else
y := y + LineSpace;
end;
Printer.EndDoc;
end;
PageLine: integer;//现在打印到第几行
PageMaxRow: integer=15; //空行行数
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
PageLine := <Line> mod PageMaxRow;
if (PageLine = 1) and (<line> > 1) then
Engine.newpage;
child1.visible := False;
end;
//Footer1高度必须为0,这里不一定,可能4.0以下要为0,4.0以上不用
procedure Footer1OnBeforePrint(Sender: TfrxComponent);
var
i: integer;
begin
i := iif(PageLine=0, PageMaxRow, PageLine);
child1.visible := True;
while i < PageMaxRow do
begin
i := i + 1;
Engine.ShowBand(Child1); //打印印空白表格
end;
child1.visible := False;
end;
begin
end.
var
i,x,y, LineSpace,PageHeight:integer;
begin
Memo1.Text:=Memo1.Text+#13+#10+#13+#10+'s';
x:=20;
y:=10;
LineSpace:=24;
PageHeight := 2600;
Printer.BeginDoc;
for i := 0 to Memo1.Lines.Count - 1 do
begin
Printer.Canvas.TextOut(x,y,Memo1.Lines[i]);
if (y + LineSpace * 2) > PageHeight then
begin
Printer.NewPage;
y := Top;
end
else
y := y + LineSpace;
end;
Printer.Canvas.TextOut(x,y,' ');
Printer.Canvas.TextOut(x,y,' ');
Printer.EndDoc;
end;