![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Image [D7, XP]
Надуев Алексей © (2007-09-06 22:44:00)Как можно быстро заполнить image (например случайными цветными пикселями) через Image.canvas.pixels.
Надуев Алексей (2007-09-06 23:08:00) [21]Как пользоваться CreateBitmap? там есть свойства, их заполняю при запуске ни чего не происходит
Надуев Алексей (2007-09-06 23:07:00) [22]Как пользоваться CreateBitmap? там есть свойства, их заполняю при запуске ни чего не происходит
DVM (2007-09-06 23:04:00) [23]Как то так, если не ошибся нигде:
procedure ProcessBitmap(var Bmp: TBitmap);
type
PByteArray = ^TByteArray;
TByteArray = array[0..32767] of Byte;
var
pb: pbytearray;
x, y: Integer;
begin
for y:=0 to bmp.Height-1 do
begin
pb := bmp.scanline[y];
for x:=0 to bmp.Width - 1 do
begin
pb[x*3]:=...случ значение от 0 до 255;
pb[x*3+1]:=...случ значение от 0 до 255
pb[x*3+2]:=...случ значение от 0 до 255
end;
end;
end;
Dib@zol (2007-09-06 23:01:00) [24]CreateBitmap с последним параметром nil. Случайность полученной картинки гарантируется ;) т.к. она берётся напрямую из куска памяти, выделенного битмапу, а до того использованного ещё кем-то и успевшего там наследить...
Надуев Алексей (2007-09-06 22:56:00) [25]А по другому как можно сделать быстро?
Вася Правильный (2007-09-06 22:46:00) [26]
> через Image.canvas.pixels.
через это быстро не получится