![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Всем привет, извините но знаю что подобных тем в инете много но я так и не смог найти решение. У меня задача. Нужно содержимое Bitmap отправить по почте, но не создавать никаких файлов на компе. Т.е. нужно картинку из Bitmap как то преобразовать в стринг, наверное, и отправить. Чтобы потом на другом компе эту картинку просмотреть в компоненте TImage, к примеру. воот. я много попробовал сейчас несколько примеров кода выложу и расскажу что не так.
1. Код:
for i := 0 to Image1.Height - 1 do
begin
for j := 0 to Image1.Width - 1 do
begin
Color := Image1.Canvas.Pixels[j, i];
// Получаем составляющие цвета
R := GetRValue(Color);
G := GetGValue(Color);
B := GetBValue(Color);
// Теперь делаем с ними, что надо. Например, сохраняем в массив.
end;
end;Код:
for i := 0 to Image2.Height - 1 do
begin
for j := 0 to Image2.Width - 1 do
begin
// Получаем составляющие цвета
Image2.Canvas.Pixels[j, i]:= r;
Image2.Canvas.Pixels[j, i]:= g;
Image2.Canvas.Pixels[j, i]:= b;
// Теперь делаем с ними, что надо. Например, сохраняем в массив.
end;2. Код:
var a: array of TRGBTriple; bmp: TBitMap; size: dword; begin bmp:=TBitMap.Create; bmp.LoadFromFile( 'c:\1.bmp' ); size:=bmp.Width*bmp.Height; Setlength(a,size); GetBitmapBits(bmp.Handle,size*3,a); // теперь вся картинка в одномерном массиве a end; ну вот. это конечно не все что я пробовал. просто остальные вкладки закрыл уже. помогите пожалуйста уже третий день мучаюсь. решил вот у вас спросить. Последний раз редактировалось Easy, 27.05.2013 в 20:57. |