Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по Image [D7]


zero-g ©   (2005-11-05 18:47:00) 

ДОброго времени суток!

Скажите, в Image1 есть изображение, я хочу выдрать кусок в bmp файл, а палучаю белый фон....

     bmp := tbitmap.Create;
     bmp.Width := 180;
     bmp.Height := 240;
     BitBlt(Bmp.Canvas.Handle, 0, 0, 180, 240,
     form7.Image1.Picture.Bitmap.Canvas.Handle,0,0, SRCCOPY);
     bmp.SaveToFile('c:\1.bmp');
     bmp.Free;
     form7.Image1.Picture := Nil;

В чем фишка????


zero-g   (2005-11-06 10:16:00) [1]

хорошо, попробую :)
спасиб.


Набережных С.   (2005-11-06 10:14:00) [2]


> zero-g ©   (06.11.05 08:41) [2]


> form7.image1.picture.assign(jpg)

В результате в Image.Picture создается Graphic типа TJPegImage. При попытке обращения к Image1.Picture.Bitmap.Canvas.Handle этот Graphic уничтожается и вместо него создается Graphic типа TBitmap, который, естественно, пустой.
 Можно сделать так:

jpg := TJPGImage.create;
jpg.loadfromfile('.\1.jpg');

form7.image1.picture. Bitmap.assign(jpg)
jpg.free;


zero-g   (2005-11-06 08:46:00) [3]

Кстате, когда вдя bmp типа TBITMAP то работает... а вот и Imag не работает....
Тока не говорите что мол работай с переменными ))

Мне нужен Image )
На Imagе есть кнопка, которая имеет определенный размер, и перемешается по изображению, кнопка типо прозрачная... когда на нее кликаешь, мне надо вытащить именно тот кусок изображения,  который лежит за кнопкой... Смысл понятен?
я пока тока пытаюсь вообще выдрать хоть чтото из Image... если прокатит, но надо будет думать как выдрать нужный врагмент...


zero-g   (2005-11-06 08:41:00) [4]

>Вроде должно работать, если картинка загружена правильно в этот Image1.

ну загружена таким макаром...

var jpg : TJPGImage;
begin

jpg := TJPGImage.create;
jpg.loadfromfile('.\1.jpg');

form7.image1.picture.assign(jpg) // помоему так, не помню ...
jpg.free;
end;

> form7.Image1.Picture := Nil;

>>А это что за чудо?
Ну это после того как выдираю то что надо, типо убираю картинку из Image, чтоб память не занимать. )


Eraser   (2005-11-05 22:39:00) [5]


> zero-g ©   (05.11.05 18:47)

Вроде должно работать, если картинка загружена правильно в этот Image1.

> form7.Image1.Picture := Nil;

А это что за чудо?


Наверх

Титульная страница Поиск, карта сайта Написать письмо