Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6. Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты. Читайте требования к создаваемым темам.
Попутал модель с представлением RGB-цвета системой...
Да, действительно, в модели 4-го байта действительно нет, а при представлении цвета в всистеме используется DWORD/Long, первые три байта которого содержат три компонента цвета, а 4-ый нулевой.
nekeda писал(а):Вроде 4ый байт поначалу был просто зарезервирован. Может поэтому, кстати, в 98ой винде был режим True Color (32bit) ?
Нет. Он всегда был пустым.
Просто умножать на 4 быстрее, чем на 3. Поэтому видеопамять адресуется не тройками байт, а четвёрками. Реальной памяти под четвёртый байт в этом случае не отводится.
Формула: R2 = (R0 * (255 - (Уровень Alpha)) + R1 * (Уровень Alpha)) / 255
R0 и R1 - красный компонент пикселей, которые надо сложить...
То же касается G и B.
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out); for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;