窗口上有一个image1,用程序给上面画 了写图案,为什么打印出来的都是空白的呢?
procedure TForm1.Button1Click(Sender: TObject);
var
newbmp: tbitmap;
begin
image1.Picture := nil;
newbmp:= tbitmap.create;
newbmp.LoadFromFile('d:\1.bmp');
Image1.canvas.draw(0,0,newbmp);
image1.Canvas.TextOut(200,200,'标题');
newbmp.free;
end;//这个是给image1插入一张图片像页眉那样 然后在图片的下方写上标题这样图片显示完毕后打印image1怎么都是空白呢
procedure TForm1.BitBtn1Click(Sender: TObject);
VAR
strect:Trect;//定义打印输出矩形框的大小
begin
if PrintDialog1.Execute then
begin
strect.Left:=100;
strect.Top:=100;
strect.Right:=image1.Width*10;
strect.Bottom:=image1.Height*10;
printer.BeginDoc;
printer.canvas.TextOut(0,0,'副标题');
printer.canvas.StretchDraw(strect,image1.picture.Bitmap);
printer.EndDoc;
end;
end;//这样打印出来的结果只看到副标题 没有看到图片和标题 但是窗口上的image1明明显示的有图片和标题呀,快晕死了 请高手帮忙看下谢谢
procedure TForm1.Button1Click(Sender: TObject);
var
newbmp: tbitmap;
begin
image1.Picture := nil;
newbmp:= tbitmap.create;
newbmp.LoadFromFile('d:\1.bmp');
Image1.canvas.draw(0,0,newbmp);
image1.Canvas.TextOut(200,200,'标题');
newbmp.free;
end;//这个是给image1插入一张图片像页眉那样 然后在图片的下方写上标题这样图片显示完毕后打印image1怎么都是空白呢
procedure TForm1.BitBtn1Click(Sender: TObject);
VAR
strect:Trect;//定义打印输出矩形框的大小
begin
if PrintDialog1.Execute then
begin
strect.Left:=100;
strect.Top:=100;
strect.Right:=image1.Width*10;
strect.Bottom:=image1.Height*10;
printer.BeginDoc;
printer.canvas.TextOut(0,0,'副标题');
printer.canvas.StretchDraw(strect,image1.picture.Bitmap);
printer.EndDoc;
end;
end;//这样打印出来的结果只看到副标题 没有看到图片和标题 但是窗口上的image1明明显示的有图片和标题呀,快晕死了 请高手帮忙看下谢谢
因为如果你的IMAGE加载的图片不是bmp类型的image1.picture.Bitmap可能是null
我加载的图片是BMP的呀 怎么会是NULL呢