2013-11-03 84 views
1

在XE5中,使用TImage,我如何用他的比例尺寸來擴展位圖? TImage具有200像素寬度和300像素高度。位圖有130個寬度和80個高度。當我將Image1.WrapMode設置爲iwStretch時,位圖將調整大小以適應TImage的區域,但不會影響TImage的比例,則位圖會顯示太「胖」。TImage Stretch XE5

非常感謝。

+1

不是['TImage.WrapMode = iwFit'](HTTP: //docwiki.embarcadero.com/Libraries/XE5/en/FMX.Objects.TImage.WrapMode)你在找什麼?它會保持圖像的比例。 –

+0

iwFit甚至是默認..... –

+0

好的,但是當我將它設置爲iwFit時,圖像(位圖)不適合高度和寬度。尺寸與iwOriginal保持一致。這是一個錯誤? – user2880780

回答

0

要保持比例,您可以使用「比例」屬性。 例如,在窗體上加載IMG(TImage中)中的圖像,並用一個按鈕要縮放它可以做到這一點:

procedure THeaderFooterForm.Button5Click(Sender: TObject); 
var testScale : Single; 
begin 
img.WrapMode := TImageWrapMode.iwOriginal; 
testScale := img.Width/img.Bitmap.Width; 
if (img.Height/img.Bitmap.Height) < testScale then 
    testScale := img.Height/img.Bitmap.Height; 


img.Scale.X := testScale; 
img.Scale.Y := testScale; 



end;