Форум: "Основная";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];
ВнизTImage и рисование на канвасе Найти похожие ветки
← →
NJoe (2004-07-23 11:47) [0]Доброе утро всем. Есть такое дело - нужно рисовать на TImage, когда в него загружена картинка.
При попытке сделать Image.Canvas.DrawFocusRect выплывает эксепшн
can only modify an image if it contains a bitmap.
Рисование на Image.Picture.Bitmap.Canvas тоже ни к чему хорошему не приводит - картинка исчезает (как будто битмапу фри сделали).
Как рисовать?
← →
Sergey Kaminski © (2004-07-23 11:52) [1]> can only modify an image if it contains a bitmap.
Иконка загружена
← →
NJoe (2004-07-23 11:54) [2]загружен Jpeg
← →
Sergey Kaminski © (2004-07-23 11:58) [3]JPeg не битмап, поэтому нельзя так
Image.Picture.Bitmap.Canvas (нету там битмапа никакого)
← →
NJoe (2004-07-23 11:59) [4]Дык понимаю, что нельзя, ибо не получается. А как можно/нужно?
← →
Sergey Kaminski © (2004-07-23 12:02) [5]Не грузить туда джейпегов, только bmp
← →
Sergey Kaminski © (2004-07-23 12:03) [6]И будет тогда битмап, на канве которого можно рисовать.
← →
NJoe (2004-07-23 12:04) [7]Т.е. вариантов рисования при Jpeg нет?
← →
Sergey Kaminski © (2004-07-23 12:10) [8]
var
Jpg: TJPEGImage;
begin
Jpg := TJPEGImage.Create;
//
//Jpg.LoadFromFile("pic.jpg");
// ..LoadFromStrem или как угодно
Image1.Canvas.Draw(0,0,Jpg);
Image1.Canvas.DrawFocusRect (Image1.Canvas.ClipRect);
Jpg.Free;
end;
← →
Sergey Kaminski © (2004-07-23 12:11) [9]разумеется,в дизайн-тайме в Image не грузить никаких джпг :)
← →
NJoe (2004-07-23 12:15) [10]ессесьна. в рантайме из потока.
Спасибо.
← →
NJoe (2004-07-23 12:24) [11]Во балин. Понял, почему сразу не рисовало...
Делал я Image.Picture.Graphic:=jpg, а надо то было просто рисовать Image.Canvas.Draw(0,0,jpg).
← →
Sergey Kaminski © (2004-07-23 12:31) [12]Image.Picture.Graphic:=jpg это все равно, что ты в дизайн тайме загрузил джпг
← →
NJoe (2004-07-23 12:40) [13]хм... олень... просто олень... :))
← →
Огромное Кулясищще © (2004-07-23 15:24) [14]>Делал я Image.Picture.Graphic:=jpg, а надо то было просто рисовать Image.Canvas.Draw(0,0,jpg).
На самом деле это очень плохо. Нафига тогда TImage, разве что сам себя перерисовывает?
ИМХО всё в Image.Picture.Bitmap надо грузить и там с этим работать.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c