Как GitHub обнаруживает, поддерживает ли браузер поддержку цвета emoji?

При посещении GitHub с помощью браузера без поддержки цвета emoji, он загружает глифы emoji в виде файлов изображений.

GitHub without color emoji support

Но при посещении GitHub с помощью браузера, у которого есть поддержка цвета emoji, он позволяет браузеру вместо этого отображать глифы.

GitHub with color emoji support

Как GitHub может узнать, поддерживает ли браузер цвет emoji или нет?

Ответ 1

Я делаю это вот так:

var canvas = document.createElement("canvas"),
    ctx = canvas.getContext("2d");

canvas.style="height:100px;width:100px;position:absolute;top:60%;background:white";
document.body.appendChild(canvas);
ctx.fillStyle ="#FFF";
ctx.font="100px Arial";
ctx.fillText('😡',100,100);
var d = ctx.getImageData(50, 50, 1, 1).data;
if (d[0] + d[1] + d[2] === 0) {
    //need twemoji or something else
} else {
    //nothing to do   
}