怎么对Timage.Canvas画布大小设置

如何对Timage.Canvas画布大小设置?
我用Timage来实现打印预览,在改变窗口大小后,TImage的大小也相应改变,但是TImage的可视大小却没有改变。请问如何让TImage的可视大小也相应改变。


procedure TForm1.FormCreate(Sender: TObject);
begin
  mf:=TMetaFile.Create;
  dpi:=GetDeviceCaps(Printer.Handle, LogPixelsX);
  dpm:=trunc(dpi/25.4);
  image1.Top:=0; image1.left:=0; image1.Width:=self.ClientWidth;
  re.Left:=0; re.Top:=0; re.Right:=trunc(210*dpm); re.Bottom:=trunc(297*dpm);
end;

procedure TForm1.Preview(vCanvas: TCanvas);
begin
  with vCanvas do begin
  try
  Repaint;
  Font.Size:=12;
  Font.Name:='黑体';
  Textout(0, 0, '中华人民共和国');
  finally
  free;
  end;
  end;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
  image1.Width:=ClientWidth;
  Preview(TMetaFileCanvas.Create(mf, Printer.Handle));
  image1.Canvas.StretchDraw(re, mf);
end;

------解决方案--------------------
image1.Picture.Bitmap.Width:= ClientWidth;
------解决方案--------------------
哦,这样啊,,我理解了...
呵呵,,那你先用白色画刷填充Image1,
如下:
image1.Width:=ClientWidth;
//加入白色背景
image1.Canvas.Brush.Color:=clWhite;
image1.Canvas.Brush.Style:=bsSolid;
Image1.Canvas.FillRect(Rect(0,0,image1.Width,image1.Height));

Preview(TMetaFileCanvas.Create(mf, Printer.Handle));
image1.Canvas.StretchDraw(re, mf);------这句有误!
------解决方案--------------------
Delphi(Pascal) code
  image1.Width := trunc(210*dpm); 
  image1.Height := trunc(297*dpm);
  image1.Picture.Bitmap.Width := image1.Width;
  image1.Picture.Bitmap.Height := image1.Height;
  image1.Canvas.FillRect(Rect(0, 0, image1.Width, image1.Height));