線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:4000
推到 Plurk!
推到 Facebook!

Timage 如何做到放大、縮小、旋轉?

答題得分者是:hagar
verbose
一般會員


發表:9
回覆:5
積分:2
註冊:2002-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-06-03 16:04:49 IP:202.145.xxx.xxx 未訂閱
例如讀進一個圖檔到TImage中,要如何將它放大、縮小?
如果要旋轉的話是否有可能?
編輯記錄
GrandRURU 重新編輯於 2016-09-23 09:26:23, 註解 無‧
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-06-03 16:46:00 IP:211.22.xxx.xxx 未訂閱
有關於圖形旋轉的部份, 可參考: http://go1.163.com/delphigirl/graphic/27.htm 與 http://go1.163.com/delphigirl/graphic/24.htm 發表人 - hagar 於 2002/06/03 16:46:43
小貓
一般會員


發表:14
回覆:23
積分:12
註冊:2002-07-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-07-19 09:10:50 IP:211.74.xxx.xxx 未訂閱
引言: 有關於圖形旋轉的部份, 可參考: http://go1.163.com/delphigirl/graphic/27.htm 與 http://go1.163.com/delphigirl/graphic/24.htm 發表人 - hagar 於 2002/06/03 16:46:43
感謝提供,我在此受益良多.
venson0704
一般會員


發表:3
回覆:3
積分:1
註冊:2002-08-29

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-10-21 09:54:57 IP:210.243.xxx.xxx 未訂閱
引言:
引言: 有關於圖形旋轉的部份, 可參考: http://go1.163.com/delphigirl/graphic/27.htm 與 http://go1.163.com/delphigirl/graphic/24.htm 發表人 - hagar 於 2002/06/03 16:46:43
感謝提供,我在此受益良多.
請問一下 上面的網址為何無法連結
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-10-21 22:45:59 IP:202.39.xxx.xxx 未訂閱
年代久遠, 應該是做廢了 參考底下這篇吧: Von: Stefan Cruysberghs  Betreff: Re: Image Rotate Datum: Samstag, 5. Dezember 1998 19:01 Tony Nixon heeft geschreven in bericht <36645B68.102BFAE0@eng.monash.edu.au>... >Hi all, > >Could someone help me with a method of rotating a TBitmap image 180 >degrees. > >TIA > >Tony The following function I wrote rotates a bitmap 90° to the left.
function SCRotateLeftBitmap(Bitmap : TBitmap) : TBitmap;
var
  x,y : Integer;
  Hoogte, Breedte : Integer;
begin
  Breedte:=Bitmap.Width;
  Hoogte:=Bitmap.Height;
  Result := TBitmap.Create;
  try
    with Result do
    begin
      Width:=Hoogte;
      Height:=Breedte;
      for x:=0 to Breedte-1 do
        for y:=0 to Hoogte-1 do
          Canvas.Pixels[Hoogte-y-1,x]:=Bitmap.Canvas.Pixels[x,y];
    end;
  except
    Result.Free;
    raise;
  end;
end;
[/code
The next function rotates a bitmap with every angle, but I never tested it.
[code]
function RotateImage(Src : TBitmap; Anglo : Real) : TBitmap;
var
 i, j, W, H : Integer;
  X1, X2, Y1, Y2 : Integer;
  C : TColor;
  Rx, Ry : Integer;
  Side3, FX, FY : Extended;
  SDC, DDC : Integer;
begin
  W := Src.Width;
  H := Src.Height;
 TmpMem.Height := Round(H * 2.5);
 TmpMem.Width := Round(W * 2.5);
  SDC := Src.Canvas.Handle;
  DDC := TmpMem.Canvas.Handle;
  for i := 0 to W - 1 do
   for j := 0 to H - 1 do
    begin
        C := GetPixel(SDC, i, j);
        Side3 := Sqrt(Sqr(i)   Sqr(j));
        SinCos((ArcSin(I / Side3)   Anglo), FX, FY);
        Rx := Round(FX * Side3)   W;
        Ry := Round(FY * Side3)   H;
        if j = 1 then
         begin
       X1 := Rx;
          Y1 := Ry;
          X2 := Rx;
          Y2 := Ry;
          end
        else
          begin
           if Rx < X1 then X1 := Rx;
          if Ry < Y1 then Y1 := Ry;
          if Rx > X2 then X2 := Rx;
          if Ry > Y2 then Y2 := Ry;
          end;
        SetPixel(DDC, Rx , Ry, C);
        end;
  Result := TmpMem;
end;
Greetings Stefan Cruysberghs stefancr@mail.dma.be www.bewoner.dma.be/stefancr -- Everything I say is a lie.
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-10-22 07:50:18 IP:210.202.xxx.xxx 未訂閱
引言: 例如讀進一個圖檔到TImage中,要如何將它放大、縮小? 如果要旋轉的話是否有可能?
放大縮小的話將TImage的Strech屬性設為True就可以自動縮放啦! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
系統時間:2024-04-24 20:07:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!