[LayaAir2]laya2.x版本还会支持支付宝小游戏加载ttf字体吗?

其它小游戏有xx.loadFont,支付宝小游戏没提供
 
用Laya.loader.load方法下载的字体,不生效
已邀请:

Laya_Fred

赞同来自:

您好,支付宝小游戏上是支持my.loadFont接口的,可能文档还未补充完毕,这边已经修复了3.1.4版本在支付宝小游戏上自定义字体失败的问题;对于2.x版本,您可以参考下面的ttf使用方式与自定义字体的修复方式:
// 获取my作用域
//@ts-ignore
var my = window.my;
// 使用loadFont接口加载内容
var fontName = my.loadFont("/hylx.ttf");
new Promise(function () {
if (fontName) {
// 打印是否解析ttf成功
console.log(fontName);
var label = new Laya.Label();
label.text = "测试文字啦啦啦啦LALALALA";
label.fontSize = 30;
label.color = "#e53d30";
label.pos(100, 100);
Laya.stage.addChild(label);
var label1 = new Laya.Label();
label1.text = "测试文字啦啦啦啦LALALALA";
// 设置ttf与文本一进行对比
label1.font = fontName;
label1.fontSize = 30;
label1.color = "#e53d30";
label1.pos(100, 200);
Laya.stage.addChild(label1);
return;
}
});
2.x中修复ttf自定义字体可以参考下图,在laya.core.js中的class CharRender_Canvas类中的getCharCanvas方法,将ctx.font = font的设置放置到ctx.save之后再去执行,使用压缩库时候同理修改libs/min/laya.core.min.js,我这里测试支付宝小游戏ok,后面没别的问题会同步到2.x的分支上去。
Snipaste_2024-07-08_16-09-35.png

 
 

要回复问题请先

商务合作
商务合作