DELPHI STRETCHBLT ПРИМЕР
StretchBlt - это функция WinAPI, которая используется для изменения размера и масштабирования изображений. В Delphi вы можете использовать эту функцию, чтобы изменить размер изображения, сохраняя его пропорции или изменяя их.
Пример кода:
var SrcBitmap, DestBitmap: TBitmap;begin SrcBitmap := TBitmap.Create; DestBitmap := TBitmap.Create; try SrcBitmap.LoadFromFile('source.bmp'); DestBitmap.Width := 400; DestBitmap.Height := Round(SrcBitmap.Height * (DestBitmap.Width / SrcBitmap.Width)); StretchBlt(DestBitmap.Canvas.Handle, 0, 0, DestBitmap.Width, DestBitmap.Height, SrcBitmap.Canvas.Handle, 0, 0, SrcBitmap.Width, SrcBitmap.Height, SRCCOPY); DestBitmap.SaveToFile('destination.bmp'); finally SrcBitmap.Free; DestBitmap.Free; end;
В приведенном выше примере мы загружаем изображение из файла «source.bmp», затем создаем новое изображение «DestBitmap», шириной 400 пикселей, а высота рассчитывается автоматически с учетом соотношения сторон исходного изображения. Мы затем используем функцию StretchBlt, чтобы изменить размер исходного изображения и поместить его в DestBitmap. И, наконец, мы сохраняем DestBitmap в файл «destination.bmp».
Cara Auto Resize Responsive Layout Project Delphi
SetWindowPos/BitBlt lag
Delphi Programming Tutorial #43 - OnSetText in TFields
TSplitView / TPanel Style Bug - Delphi #146
Delphi - Load picture into Delphi
Delphi #164 - delphi-hlp.rualeFactor
JCLCompression and 7-Zip - Delphi #207
Did the TSplitView / TPanel Style Bug Get Fixed in 10.4.1? - Delphi #156
Delphi #168 - The Problem With SpeedButton Images
Canvas Графика / Основы / Draw / Рисование примитивов и изображений BMP / Delphi, Pascal, lazarus