相关疑难解决方法(0)

如何知道是否已加载字体(@ font-face)?

我正在使用Font-Awesome,但是在未加载字体文件时,图标显示为.

所以,我希望这些图标display:none不会加载文件.

@font-face {
  font-family: "FontAwesome";
  src: url('../font/fontawesome-webfont.eot');
  src: url('../font/fontawesome-webfont.eot?#iefix') format('eot'), url('../font/fontawesome-webfont.woff') format('woff'), url('../font/fontawesome-webfont.ttf') format('truetype'), url('../font/fontawesome-webfont.svg#FontAwesome') format('svg');
  font-weight: normal;
  font-style: normal;
}
Run Code Online (Sandbox Code Playgroud)

我怎么知道这些文件已经加载,我终于能够显示图标了?

编辑: 我没有在页面加载(onload)时说话,因为字体可以在整个页面之前加载.

javascript css jquery font-face font-awesome

78
推荐指数
4
解决办法
6万
查看次数

在Fabric.js中使用远程Web字体初始化加载的文本

我正在使用Fabric JS开发一个大型自定义应用程序,我已经做得很好.但我使用webfont的init加载文本对象有问题.

只要该字体在客户端的计算机上是本地的,我工作正常,因为未加载webfont并且画布上的文本对象以默认的sans-serif字体系列呈现.

简而言之,就是我所做的(在这个例子中,我使用"allstar"作为我的webfont):

CSS: 在fabric.js之前,css被加载到头部的fonts.css中

@font-face{
    font-family:'allstar';
    src:
        url('/path-to-fonts/all_star-webfont.eot');
    src:
        url('/path-to-fonts/all_star-webfont.eot?#iefix') format('embedded-opentype'),
        url('/path-to-fonts/all_star-webfont.woff') format('woff'),
        url('/path-to-fonts/all_star-webfont.ttf') format('truetype'),
        url('/path-to-fonts/all_star-webfont.svg#allstarregular') format('svg');
    font-weight:normal;
    font-style:normal
}
Run Code Online (Sandbox Code Playgroud)

Javascript: 这是在$(document).ready(function(){})里面的页面底部加载的

var textSample = new fabric.Text(text, {
    fontFamily: "allstar",
});
canvas.add(textSample);
canvas.renderAll();
Run Code Online (Sandbox Code Playgroud)

如果我在页面上的其他地方使用该字体(例如:在带有点和加载字体的透明span标签中),它可以正常工作.但我不认为这是一种正确的编码方式.

我使用fabric.js版本1.3.0

javascript css fonts fabricjs

7
推荐指数
1
解决办法
4940
查看次数

标签 统计

css ×2

javascript ×2

fabricjs ×1

font-awesome ×1

font-face ×1

fonts ×1

jquery ×1