javascript - 从 Bootstrap 图标十六进制值输出一个符号

标签 javascript canvas twitter-bootstrap-3 glyphicons

我已经学会了如何检索 Bootstrap 图标值。

示例(带有 glyphicon-trash 图标):

html:

<div id="icon" class="glyphicon glyphicon-trash"></div>

js:

var iconSymbol = window.getComputedStyle($('#icon')[0], ':before').content;
var result = iconSymbol.charCodeAt(1).toString(16);
console.log(result);

之后结果e020

但之后我需要将这个符号绘制到canvas

假设 valuee020,我使用下面的代码:

var label = String.fromCharCode(parseInt(value, 16));
var ctx = canvas.getContext("2d");
ctx.font = "52px Helvetica"
ctx.textAlign = "center"
ctx.fillStyle = "white"
ctx.fillText(label, pt.x, pt.y+4)

但在那之后我只有一个矩形符号。

我需要执行什么才能正确输出原始符号?可能是字体配置有问题,或者我必须尝试一些编码参数?

最佳答案

您需要使用与 Bootstrap 符号相同的字体,因为典型字体没有定义这些符号。 Helvetica 没有这些,并且在大多数情况下它可能会在任何情况下恢复为默认的无衬线字体,因为大多数用户没有安装 Helvetica。

看字体:

glyphicons-halflings-regular.*

fonts/ folder 中找到.将此字体设置为 Canvas ,然后绘制符号。您可能必须通过 DOM 预加载字体。

关于javascript - 从 Bootstrap 图标十六进制值输出一个符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36753955/

相关文章:

javascript - 如何使用 Fabric.js 创建多个形状?

html - 如何在响应式 Bootstrap 3 中反转列的顺序?

css - 如何使用 Bootstrap (台式机/智能手机)切换列位置?

javascript - 防止面板打开 bootstrap3

javascript - 在 div 内渲染 Handlebars 脚本

javascript - Nodejs 和 Angular 应用程序使用 JWT 发送 401 Unauthorized 和 200 OK

javascript - 将表单值提交给 JS 数组对象而不是 AJAX 请求

javascript - 单击可拖动层顶部时如何获得准确的指针位置?

javascript - 使用 ng-click 在两个功能之间切换

javascript - 无法清除 Canvas