Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > JPEG


Автор: weqrx 4.1.2010, 00:36
На форму стягиваю компонент image1, в object instructor указываю поле picture (загружаю рисунок.JPG). Затем стягиваю button1 в нем пишу image1.canvas.lineTO(x,y).
сомпилятор выдает ошибку raised exception class ....
КАК РАЗРЕШИТЬ ИЗМЕНЕНИЕ CANVAS ПРИ ЗАГРУЖЕННОМ РИСУНКЕ?
 smile 

Автор: bems 4.1.2010, 04:13
raised exception class что?


Сконвертируй изображение.

Автор: artsb 4.1.2010, 11:02
Цитата(bems @  4.1.2010,  04:13 Найти цитируемый пост)
Сконвертируй изображение. 

немного дополню smile Преобразуй JPG в битмап, нарисуй на нём всё что тебе нужно и преобразуй обратно. Примеров полно.  smile 

Автор: weqrx 4.1.2010, 18:06
Цитата

 Преобразуй JPG в битмап

  создать объект bitmap и скопировать область рисунка ? А если у меня рисунок 9912 Х 14016 и весит 20,2 Мб (карта Ростовской обл) тогда получается я должен забивать память  копией и процессор пересылкой битов.

Автор: artsb 4.1.2010, 18:26
Есть ещё варианты?..

Добавлено через 4 минуты и 22 секунды
Можете, например, при загрузке картинки, сразу преобразовать её в битмап. И тогда можно будет в любой момент рисовать прямо на нём без преобразований, забивания памяти и нагрузок на проц.

Автор: weqrx 4.1.2010, 21:17
Хотелось бы узнать какое свойство меняется у компонента image при загрузке jpeg, ведь при загрузке bmp Canvas изменять можно .

СООБЩЕНИЕ ОШИБКИ : Project Project1.exe raised exception class EInvalidOperation with message 'Can only modify an Image IF it contains a bitmap1. Process stopped. Use Step or Run to continue.



Автор: Alexeis 4.1.2010, 21:56
weqrx, Image.Canvas это фактически ссылка на Image.Picture.Graphic.Canvas. Вот эти самые Graphic бывают разные. У JpegImage канвас только ридонли. 

Автор: artsb 4.1.2010, 21:58
Цитата(weqrx @  4.1.2010,  21:17 Найти цитируемый пост)
Can only modify an Image IF it contains a bitmap

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)