Что нового

Привест к одному формату pixelgetcolor и _GDIPlus_BitmapGetPixel

DanSaratov

Новичок
Сообщения
112
Репутация
1
Эти функции выводят цвет пикселя, но по-разному.
Нужно их как-то привести к одному формату.
Вот результат выполнения функций для одинаковых пикселей:
_GDIPlus_BitmapGetPixel - 4290695915
PixelGetColor - 12571371

далее, если перевести их в hex получится вот это:

_GDIPlus_BitmapGetPixel - 00000000FFBED2EB
PixelGetColor - 00BFD2EB

Последние 6 знаков в обоих строчках - это цвет одного и того-же пикселя. Я проверял по hex цветам, цвет одинаковый, но почему-то записан по-разному.

_GDIPlus_BitmapGetPixel - BED2EB
PixelGetColor - BFD2EB

Мне нужно проверять одинаковые ли цвета пикселей, а команды выводят их по-разному.
Что с этим можно сделать?
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
На каких данных работают обе функции?
Покажите код вызова _GDIPlus_BitmapGetPixel и PixelGetColor
(_GDIPlus_BitmapGetPixel со строками создания картинки)
 

InnI

AutoIT Гуру
Сообщения
4,982
Репутация
1,460
DanSaratov [?]
выводят их по-разному
_GDIPlus_BitmapGetPixel() возвращает цвет с прозрачностью (ARGB), а PixelGetColor() без прозрачности (RGB). Поэтому для сравнения нужно убрать прозрачность
Код:
ConsoleWrite(( BitAND(0xFFBED2EB, 0x00FFFFFF) = 0xBED2EB ) & @CRLF)
 
Верх