как изменить значение объекта NSColor на его 8-битное значение - PullRequest
1 голос
/ 27 августа 2010

Мне нужно преобразовать значение объекта NSColor в 8-битное целочисленное значение

код:

uint8_t r = (uint32_t)(MIN(1.0f, MAX(0.0f, [[CWhiteBoardController ReturnFillColor] redComponent])) * 0xff);

uint8_t g = (uint32_t)(MIN(1.0f, MAX(0.0f, [[CWhiteBoardController ReturnFillColor] greenComponent])) * 0xff);

uint8_t b = (uint32_t)(MIN(1.0f, MAX(0.0f, [[CWhiteBoardController ReturnFillColor] blueComponent])) * 0xff);

uint8_t a = (uint32_t)(MIN(1.0f, MAX(0.0f, [[CWhiteBoardController ReturnFillColor] alphaComponent])) * 0xff);

uint8_t value = (a << 24) | (r<< 16) | (g << 8) | b;

полученное мной значение равно 0.

я не получаюгде я не прав.Так что кто-нибудь, помогите мне, пожалуйста.

1 Ответ

1 голос
/ 31 августа 2010

Я узнал проблему, на самом деле мне нужно написать

int value = (a << 24) |(г << 16) |(г << 8) |б;вместо значения uint8_t = (a << 24) |(г << 16) |(г << 8) |б; </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...