Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Пропала картиночка. / 7 сообщений из 7, страница 1 из 1
13.04.2020, 23:05
    #39946792
SDA_H
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
Подскажите плиз. Как записать ч.б. картинку из TImage -(Jpeg) в массив TColor? . Пробовал так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
procedure TfShipTypeImg.Button1Click(Sender: TObject);
VAR xi, yi:integer;
 I, J: Integer;
 Picture: array of array of TColor;//локальное объявление для примера
begin
 SetLength(Picture, ImageAll.Picture.Height, ImageAll.Picture.Width);
 for I := 0 to High(Picture) - 1 do
   for J := 0 to High(Picture[I]) - 1 do
   try
     Picture[I, J] := ImageAll.Picture.Bitmap.Canvas.Pixels[I, J];
   except
     On E : Exception do   showmessage(E.Message);
   end;
 showmessage('Массив успешно создан!');
end;


После выполнения процедуры содержимое ImageAll очищается? - картинка исчезает)
...
Рейтинг: 0 / 0
14.04.2020, 01:27
    #39946810
northener
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
SDA_H
Подскажите плиз. Как записать ч.б. картинку из TImage -(Jpeg) в массив TColor? . Пробовал так:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
procedure TfShipTypeImg.Button1Click(Sender: TObject);
VAR xi, yi:integer;
 I, J: Integer;
 Picture: array of array of TColor;//локальное объявление для примера
begin
 SetLength(Picture, ImageAll.Picture.Height, ImageAll.Picture.Width);
 for I := 0 to High(Picture) - 1 do
   for J := 0 to High(Picture[I]) - 1 do
   try
     Picture[I, J] := ImageAll.Picture.Bitmap.Canvas.Pixels[I, J];
   except
     On E : Exception do   showmessage(E.Message);
   end;
 showmessage('Массив успешно создан!');
end;


После выполнения процедуры содержимое ImageAll очищается? - картинка исчезает)

Исчезает картиночка явно не из-за этого кода.
...
Рейтинг: 0 / 0
14.04.2020, 03:40
    #39946821
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
Просто интересно, зачем от High отнимать единицу?
...
Рейтинг: 0 / 0
14.04.2020, 03:44
    #39946822
white_nigger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
И работа с Pixels - моветон
...
Рейтинг: 0 / 0
15.04.2020, 03:25
    #39947324
Ученик_333
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
Вроде вот так надо: ImageAll.Picture.Bitmap.Canvas.Pixels[x,y]

Код: pascal
1.
Picture[I, J] := ImageAll.Picture.Bitmap.Canvas.Pixels[J, I];
...
Рейтинг: 0 / 0
15.04.2020, 03:59
    #39947325
northener
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
Ученик_333
Вроде вот так надо: ImageAll.Picture.Bitmap.Canvas.Pixels[x,y]

Код: pascal
1.
Picture[I, J] := ImageAll.Picture.Bitmap.Canvas.Pixels[J, I];


Вроде так, вроде не так...
Гадания на кофейной гуще.
...
Рейтинг: 0 / 0
15.04.2020, 04:03
    #39947326
northener
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пропала картиночка.
Но суть-то не в в том.
Как бы вы не читали пиксели некоей картинки, сама картинка из-за этого вашего чтения не может пропасть!
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Пропала картиночка. / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]