如题!!
我想放大显示一幅图片!!
最好给出具体的源代码!!!

解决方案 »

  1.   

    是想用canvas自己画是吧,
    挺麻烦的
      

  2.   

    帮助里的,看看吧。procedure TForm1.Button1Click(Sender: TObject);var
      Bitmap : TBitMap;
    begin
      Bitmap := TBitmap.Create;
      try
        with Bitmap do begin
          LoadFromFile('C:\Program Files\Common Files\Borland Shared\Images\Splash\256color\factory.bmp');
          Transparent := True;
          TransParentColor := BitMap.canvas.pixels[50,50];
          Form1.Canvas.Draw(0,0,BitMap);
          TransparentMode := tmAuto;
          Form1.Canvas.Draw(50,50,BitMap);
        end;
      finally
        Bitmap.Free;  end;
    end;
      

  3.   

    使用copyrect就可以放大或者缩小显示图片。
    如果需要自己重绘,参考Kingron的猛料吧。
    放大两倍例子:procedure TForm1.Button1Click(Sender: TObject);
    var
      rect1,rect2:trect;
      bm:tbitmap;
    begin
      bm:=tbitmap.Create;
      openpicturedialog1.Execute;
      bm.LoadFromFile(openpicturedialog1.filename);
      with rect1 do
      begin
        left:=0;
        top:=0;
        right:=bm.width;
        bottom:=bm.height;
      end;
      with rect2 do
      begin
        left:=0;
        top:=0;
        right:=bm.width*2;//放大倍数为2
        bottom:=bm.height*2;//放大倍数为2
      end;  canvas.copyrect(rect2,bm.canvas,rect1);
      bm.Free;
    end;
      

  4.   

    to zdcnow(磁效应) 
       我想问一下,如果我想让放大的图像始终处于中间,应该怎么做。
      

  5.   

    to mikko11(新手) :
        不大明白你所说的,中间是指那里的中间?
      

  6.   

    StretchBlt
    速度快,缩放自如
      

  7.   

    如何才能把JPEG文件显示在IMAGE中?