我正在尝试在.ttf / .otf文件中获取所有字符代码,因此我可以获取随机字符并显示它。我想创建一个矩阵雨,我找到了一个仅包含其中使用的字符的字体文件。Here is the link to the font。我正在尝试通过以下方式实现它:String.toCharCode();
到目前为止,我的代码:
var value = String.fromCharCode(97);
var fontSize = 30;
function setup() {
createCanvas(500,500);
textFont('Matrix');
textSize(fontSize);
}
function draw() {
ellipse(width/2,height/2,9,9);
text(value,width/2,height/2);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/p5.js"></script>
<style type = "text/css">
@font-face {
font-family: "Matrix";
src: url(--Link to file--);
}
</style>
研究:
答案 0 :(得分:1)
离线执行此操作,请勿在浏览器中执行此操作。字体每次都将相同,因此其支持的字符映射也将相同。
通过TTX运行字体,然后获取<cmap>
表数据,这是字体支持字符/代码点的唯一权限。它可能支持多个字符集:对于平台/ id /编码组合3/1/0(这是与平台无关的Unicode编码,您仅关心子表格式4(可能还有12)),这是我们在2018年唯一关心的一种)
然后随心所欲地进行处理,但是在给定JS上下文的情况下,您可能希望进一步处理它以创建合理的JSON格式,以便您可以直接在JavaScript端使用JSON.parse加载该格式。