![]() |
|
Модераторы: Snowy, Alexeis, MetalFan |
![]()
|
|
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
Есть TImage, в котором загружена GIFка... при попытке рисовать на канве этого TImage вываливается EInvalidOperation дескать "Рисовать на канве можно только если Image содержит Bitmap"... Что-то ничего не нашел по данному вопросу, подскажите люди добрые, как реализуется сие простое действо (или не простое?)!
|
|||
|
||||
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
EInvalidOperation: "Can only modify an image if it contains a bitmap" вызывает следующий код:
Я видимо не дословный перевод сообщения привел, а зря... т.е. видимо оно жалуется на то, что Image не содердит Bitmap'ов... хотя картинка в него уже загружена! Как думаете господа из-за чего этот траббл? Это сообщение отредактировал(а) wesadex - 26.12.2005, 16:14 |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Ну вот пример для jpeg'a:
|
|||
|
||||
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
У меня гифы да и хочется понять суть проблемы... Картинка грузится в Image вот так:
Image.Picture.LoadFromFile(FileName);... очень не хочется утяжелять прогу разбором того, какой формат картинки грузим и индивидуальным способом загрузки - прога-то мелкая... |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
|
|||
|
||||
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
Спасибо - подходит для всех форматов, которые мне нужны - для Веб-изображений!
А все-таки кто-нибудь может объяснить почему вылезала эта ошибка? |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Ошибка вылезала, потому что изображение не было преобразовано в BitMap, а работало через адаптер.
Битмап по сути был пустой. Вообще не задействован. В этом решении я беру изображение, созданое адаптером, кладу его в битмап. А потом этот битмап назначаю обратно TImage. В результате TImage отключает адаптер и работает как обычно напрямую с битмапом. |
|||
|
||||
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
Осознал, но вот что не укладывается в схему на мой взгляд: Пустой битмап может быть и тогда когда Image просто положили на форму, но в этой ситуации Image позволяется работать в канвой... или я просто чего-то не понимаю?
|
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
Просто при работе с адаптером, имадж переключается на него, а битмап игнорирует.
Попытка рисовать на канве имаджа заканчивается неуспехом, т.к. битмап недоступен - отображается информация адаптера, а она ридонли. Можно попробовать рисовать на канве битмапа. В данном случае, я думаю, адаптер просто отключится, картинка пропадет и активируется битмап. |
|||
|
||||
| wesadex |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 21.6.2005 Репутация: нет Всего: нет |
Так и было - пробовал пользовать Image1.Picture.Bitmap.Canvas - картинка пропадала, а на канве появлялся рисунок! Спасибо!
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Звук, графика и видео" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |