Преобразование ARBG к RGB с альфа-смешиванием

Хотя CMS верна , что передача строк в метод разбора, как правило, небезопасна, новая спецификация ECMA-262 5th Edition (aka ES5) в разделе 15.9.4.2 предлагает что Date.parse() фактически должны обрабатывать даты в формате ISO. В старой спецификации не было такого требования. Конечно, старые браузеры и некоторые современные браузеры по-прежнему не обеспечивают эту функциональность ES5.

Ваш второй пример не является неправильным. Это указано в UTC, что подразумевается Date.prototype.toISOString(), но отображается в вашем локальном часовом поясе.

23
задан mattytommo 4 May 2012 в 10:00
поделиться

2 ответа

Это звонило альфа, смешивающаяся .

В psuedocode, принимая цвет фона (смешение) всегда имеет 255 альф. Также предполагает, что альфа 0-255.

alpha=argb.alpha()
r = (alpha/255)*argb.r() + (1 - alpha/255)*blend.r()
g = (alpha/255)*argb.g() + (1 - alpha/255)*blend.g()
b = (alpha/255)*argb.b() + (1 - alpha/255)*blend.b()

примечание: вероятно, необходимо быть (немного более) осторожны относительно математики с плавающей точкой/международной и округления проблем, в зависимости от языка. Промежуточные звенья броска соответственно

Отредактированный для добавления:

, Если у Вас нет цвета фона с альфой 255, алгебра становится намного более сложной. Я сделал его прежде, и это - забавное осуществление, оставленное читателю (если действительно необходимо знать, задать другой вопрос:).

, Другими словами, что цвет C смешивает в некоторый фон то же как смешивающийся A, затем смешивая B. Это - вид подобного вычисления A+B (который не является тем же как B+A).

18
ответ дан Louis Brandy 29 November 2019 в 02:51
поделиться

если Вы не должны знать этот предварительный рендеринг, Вы могли бы всегда использовать win32 метод getpixel, я верю.

Примечание: ввод на iPhone посреди Миссури без inet доступа. Будет искать реальный win32 пример и видеть, существует ли .net эквивалент.

В случае, если любой заботится и не хочет использовать (превосходный) ответ, отправленный выше, можно получить значение цвета пикселя в.Net по этой ссылке пример MSDN

2
ответ дан Matt Dawdy 29 November 2019 в 02:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: