我正尝试在HTML 5画布上绘制字体超赞的双色调图标,但不知道如何获得图标的双色调版本,并正确地着色。例如,this answer中的这段代码将绘制图标的纯色版本:
ctx.font='30px FontAwesome';
ctx.fillText('\uF047',20,50);
但是我不知道如何修改这段代码来绘制双色调图标的每一部分。
我正尝试在HTML 5画布上绘制字体超赞的双色调图标,但不知道如何获得图标的双色调版本,并正确地着色。例如,this answer中的这段代码将绘制图标的纯色版本:
ctx.font='30px FontAwesome';
ctx.fillText('\uF047',20,50);
但是我不知道如何修改这段代码来绘制双色调图标的每一部分。
1条答案
按热度按时间y53ybaqx1#
FontAwesome DuoTone的工作原理是对
::before
和::after
伪元素进行不同的样式设置,而这两个元素都有自己的字形来呈现图标的一部分。要在
<canvas>
上获得相同的效果,首先需要将上下文的font
属性设置为正确的双色调字体系列(例如'Font Awesome 6 DuoTone'
),以便可以访问每个图标的"分隔字形"。然后,您必须在绘制每个部分之前根据需要设置它们的样式。
下面你会找到一个简单的帮手。