【发布时间】:2016-06-29 23:37:49
【问题描述】:
我已经看到了在将文本写入画布时通过简单地将笔划加倍(并更改顺序)来模拟外部笔划的选项 (see here)
但是,我正在开发的应用程序允许使用 rgba 颜色。因此,“隐藏”的内部笔划可能会变得可见。这是一个示例:
在本例中,笔触为白色,文本填充为 rgba(0,0,0,0.5)。
结果,可以看到隐藏的白色内笔划。是否可以在没有内部的情况下应用外部笔画?如果没有,是否可以对笔划应用剪贴蒙版之类的东西,以防止在文本填充具有不透明度的情况下内部可见?
我觉得我知道这里的答案,但希望有人可能有一个聪明的解决方案。
谢谢-
【问题讨论】:
-
是的,这是可能的。请参阅此答案stackoverflow.com/a/34234589/3877726,它解释了如何使用屏幕外画布和使用遮罩来做到这一点,也可以使用剪切区域来完成。
-
@Blindman67,我很遗憾没有看到你展示 gCo 遮罩.. 但剪裁仍然不行:)
-
@Kaiido 我不明白为什么它不起作用,剪辑复杂性没有限制,并且有很多方法可以获取字体的路径数据,例如 SVG 字体。
-
@Blindman67 是的...只是我猜 OP 不想将他的所有字体都转换为 svg 字体然后为此提取路径数据,因为画布文本不是 Path 对象并且可以'不按原样用于剪辑。
-
这需要即时完成,并且画布会不断更新,所以我认为创建屏幕外画布是行不通的。不过,我会再研究一下。谢谢@Blindman67