Форум: "Media";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];
ВнизСчитывание BMP изображения и перевод в массив Найти похожие ветки
← →
Brandik © (2006-09-24 00:59) [0]Извинити за то что избито уже, наверное.
Стоит задача
1. Считать изображение BMP(размер NxM) из файла и преобразовать в массив NxM с значениями типа 0FA2DD.
Можете дать код или ссылочку на литературу
Подскажите, пожалуйста, какую книгу лучше приобрести по Дельфи 7 чтобы максимально была раскрыта тема работы с изображениями.
← →
Virgo_Style © (2006-09-24 08:36) [1]Ну, начать можно с TBitmap (или вообще TImage) и Pixels. Затем, по мере возникновения вопроса "А почему так медленно?" модернизировать его. До неузнаваемости %-)
Точнее до ScanLine или чтения из файла.
← →
MBo © (2006-09-24 11:45) [2]TBitmap.LoadFromFile
в массив - GetDiBits
← →
Brandik © (2006-09-24 13:13) [3]Я тут поковырял форум и нашел вот такой путь. Это нормальное решение?
procedure TForm1.Button1Click(Sender: TObject);
type
TRGB = record
b, g, r: byte;
end;
ARGB = array[0..100,0..100] of TRGB;
var
// JpegIm: TJpegImage;
BmpImage: TBitMap;
x,y : Integer;
P : PByteArray;
B: ARGB;
begin
// if OpenDialog1.Execute = true then
BmpImage:= TBitmap.Create;
BmpImage.LoadFromFile(edit1.text+".bmp");
try
// On Windows replace MyBitmap.png with a full pathname such as
// C:\Program Files\Common Files\Borland Shared\Images\Splash\256color\factory.bmp
for y := 0 to BmpImage.Height -1 do
begin
P := BmpImage.ScanLine[y];
for x := 0 to {BmpImage.Width -}1 do
// P[x] := y;
Begin
b[y,x].b :=p[x*3];
b[y,x].g :=p[x*3+1];
b[y,x].r :=p[x*3+2];
End;
end;
Canvas.Draw(100,100,BmpImage);
edit4.text:=inttostr(B[strtoint(edit2.Text),strtoint(edit3.Text)].r);
edit5.text:=inttostr(B[strtoint(edit2.Text),strtoint(edit3.Text)].g);
edit6.text:=inttostr(B[strtoint(edit2.Text),strtoint(edit3.Text)].b);
finally
BmpImage.Free;
end;
← →
Ketmar © (2006-09-24 14:44) [4]>[3] Brandik(c) 24-Sep-2006, 13:13
фигня с ошибками. кто тебе сказал, что битмап -- всегда именно 32bpp?
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.05 c