|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Проблема с копированием картинки
Код:
procedure TForm1.Button1Click(Sender: TObject); var bm:TMemoryStream; begin bm:=TMemoryStream.Create; Image1.Picture.Bitmap.SaveToStream(bm); Image2.Picture.Bitmap.LoadFromStream(bm); bm.Free; end; использую такой вот код, но image1 очищается т.е. картинка пропадает и image2 не получает изображение голову изломал ни где не могу найти как понять в чем дело Последний раз редактировалось Admin, 24.12.2012 в 09:26. |
#2
|
||||
|
||||
1 способ:
Код:
Image2.Picture.Assign(Image1.Picture); Код:
var MemoryStream: TMemoryStream; begin MemoryStream:=TMemoryStream.Create; try Image1.Picture.Bitmap.SaveToStream(MemoryStream); MemoryStream.Position:=0; Image2.Picture.Bitmap.LoadFromStream(MemoryStream); finally MemoryStream.Free; end; end; Пишу программы за еду. __________________ |
#3
|
|||
|
|||
не помогает , уже пробовал. Картинка исчезает конкретно на savetostream
Последний раз редактировалось sergeyrca, 24.12.2012 в 11:33. |
#4
|
||||
|
||||
Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
sergeyrca (24.12.2012)
|
#5
|
|||
|
|||
хех разобрался проблема в вот что картинка JPG не копируется и image1 глючит, c bmp все работает ок. Теперь соображаю как победить jpg
|
#6
|
||||
|
||||
Код:
Image2.Picture.Assign(Image1.Picture); Пишу программы за еду. __________________ |
#7
|
|||
|
|||
задача как раз в том и заключается чтобы перенести картинку именно через стрим
|
#8
|
|||
|
|||
Image1.Picture.Bitmap.SaveToStream(bm);
Этот код будет работать, если в Image находится именно BitMap. попробуйте Image1.Picture.SaveToStream(bm); |
#9
|
||||
|
||||
Цитата:
Код:
var MemoryStream: TMemoryStream; jpg: TJPEGImage; begin MemoryStream:=TMemoryStream.Create; try Image1.Picture.Graphic.SaveToStream(MemoryStream); MemoryStream.Position:=0; jpg:=TJPEGImage.Create; try jpg.LoadFromStream(MemoryStream); Image2.Picture.Assign(jpg); finally jpg.Free; end; finally MemoryStream.Free; end; end; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
sergeyrca (25.12.2012)
|
#10
|
|||
|
|||
Спасибо большое, через Graphic работает на ура
|