读书人

打印图片超过纸张大小如何设置换页

发布时间: 2012-02-16 21:30:36 作者: rapoo

打印图片超过纸张大小怎么设置换页?
我想把一个图片在打印的范围是宽75厘米,高21厘米的纸上,结果在A4纸上总是出来一半,不会换页。怎么设置换页?代码如下:
pixels := screen.PixelsPerInch;
w:=round(75*pixels*2.4);
h:=round(21*pixels*2.4);
printer.Orientation:=poLandscape;
SetPaperSize(7500,2100);
scalex:=round(w/image1.Width);
scaley:=round(h/image1.Height);

printer.BeginDoc;
printer.Canvas.StretchDraw(rect(0,0,w,h), FBackJpg);
for i:=0 to high(FFontBmp) do
with FFontBmp[i].Rec do
printer.Canvas.StretchDraw(rect(Left*scalex,top*scaley,Right*scalex,Bottom*scaley),FFontBmp[i].Bmp);
printer.EndDoc;

[解决办法]
自己手动分页了,计算下A4纸需要几张,每张上打印多少行,
到了改换页的时候,newpage一下,在打印
[解决办法]

计算出纸的宽度和高度.printer.PageWidth, printer.PageHeight

再计算图的宽度和高度

就可以自己分页了

读书人网 >.NET

热点推荐