| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Звук, графика и видео > Получение цвета пикселя из TImage (png) |
| Автор: Teoden 28.9.2007, 12:11 | ||||
Создаю на форме объект TImage, далее загружаю в него картинку формата png.
При попытке получить цвет с помощью Image.Picture.Bitmap.Canvas.Pixels[X,Y] картинка пропадает, а возвращаемый цвет получается $FFFFFF вне зависимости от X и Y. Решение типа:
не подходит, так как на картинке имеются прозрачные части, а данным методом мы получаем видимый цвет на форме. Подскажите пожалуйста решение? |
| Автор: Exai1e 28.9.2007, 12:15 |
| Teoden, надо пользовать не кнопкой "цитата" а кнопкой "код", это так на будущее |
| Автор: Snowy 28.9.2007, 12:38 |
| Это потому что битмап пустой. Скопируй Picture в BitMap через Assign, тогда можешь работать с битмапом. |
| Автор: Teoden 28.9.2007, 13:08 | ||||
Таким образом:?
Не помогает. Цвет возвращается все тот же ($FFFFFF), а картинка как пропадала так и пропадает... |
| Автор: Snowy 28.9.2007, 13:36 |
| Не Picture.Bitmap, а просто Picture |
| Автор: Teoden 28.9.2007, 13:49 | ||
В таком случае вывыливается эксепшн EConvertError с сообщением "Cannot assign a TPicture to a TBitmap"... |
| Автор: Snowy 28.9.2007, 13:59 | ||
| Логично. Соврал. Picture.Graphic картинка в нём, а не в Picture.Bitmap.
|
| Автор: Teoden 28.9.2007, 15:14 |
| Спасибо за помощь. Теперь все работает. |