使用paper.js,我使用以下调用在屏幕上创建一个字符长的文本对象:
var text = new paper.PointText({
point: [x,y],
content: "9",
fillColor: "white",
font: "Comfortaa",
fontWeight: "bold",
fontSize: 30
});
然而,我遇到了这样一个问题,即文本被光栅化到屏幕上,在主体上定义了任何默认字体,并且它一直保持这种状态,直到我使用工具的拖动事件移动PointText对象。只要我用鼠标移动文本,文本就会立即将字体更改为,在本例中为Comfortaa。以下是之前和之后的两个屏幕截图:
在第一次抽奖之后,这看起来不像是调用纸张的draw()。此外,字体不会像Google Fonts API那样异步加载,它们是本地的,因此这不是问题。
答案 0 :(得分:4)
使用JürgLehni的建议,我能够通过添加一个新div,将隐藏可见性和字体系列设置为我的webfont来使其工作。
<div style="visibility: hidden; font-family: 'Share Tech Mono';">test</div>