![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Преобразовать массив пикселей в BitMap? [D7, XP]
andreil © (2008-04-05 12:24:00)Есть у меня два массива (сами пиксели + палитра) и размер картинки. Как это все можно преобразовать в BMP-файл?
andreil (2008-04-06 12:54:00) [1]Сделал так:
Bitmap:=NewDIBBitmap(Self.lpLumpInfo[Handle].uiWidth, Self.lpLumpInfo[Handle].uiHeight, pf8bit);
BitMap.HandleType:=bmDIB;
for n:=0 to Self.lpLumpInfo[Handle].uiWidth-1 do
for i:=0 to Self.lpLumpInfo[Handle].uiHeight-1 do
begin
//BitMap.Pixels[i,n]:=lpPalette[lpPixels[n+i*Self.lpLumpInfo[Handle].uiWidth]];
BitMap.DIBPixels[i,n]:=lpPixels[(n*Self.lpLumpInfo[Handle].uiHeight)+
(Self.lpLumpInfo[Handle].uiWidth)];
end;
for i:=0 to uiPaletteSize-1 do
BitMap.DIBPalEntries[i]:=lpPalette[i];
BitMap.SaveToFile('1.bmp');
На выходе - пустой БМП с частично заполненной палитрой, но без пикселей :(
Denis__ (2008-04-05 20:42:00) [2]
> циклом по этому циклу
по массиву.:)
Amoeba (2008-04-05 20:33:00) [3]
> Есть у меня два массива (сами пиксели + палитра) и размер
> картинки.
И откуда они хоть взялись?
Denis__ (2008-04-05 19:28:00) [4]Cамо просто - циклом по этому циклу. А чего там с битмапом понимать?
var
bmp : TBitmap;
begin
bmp := TBitmap.Create;
...
bmp.SaveToFile(...);
bmp.Free;
end;
{RASkov} (2008-04-05 13:35:00) [5]> [2] andreil © (05.04.08 13:29)
> А поточнее нельзя?
Поточнее сам давай, ибо что непонятного в TBitMap?
andreil (2008-04-05 13:29:00) [6]А поточнее нельзя? Ибо я сам с БитМапами не имел ранее дела :(
Johnmen (2008-04-05 12:30:00) [7]см. TBitmap, он тебе подойдет.