Egret引擎外部字体的解决方案
最新官方文档太老了
http://developer.egret.com/cn/github/egret-docs/Engine2D/textField/textStyle/index.html
还在使用egret.registerFontMapping(),这个API早就不支持了。
官方论坛上也有多个帖子在询问
https://bbs.egret.com/forum.php?mod=viewthread&tid=54983&highlight=%E5%AD%97%E4%BD%93
https://bbs.egret.com/forum.php?mod=viewthread&tid=52751&highlight=%E5%AD%97%E4%BD%93
经过多次来回试验,终于找到可行的解决方案。在下列版本上,用小米,锤子,oppo的多款手机测试通过
引擎版本: 5.2.16 ~5.2.20(当前最新版本)
native android版本: 0.1.16和0.1.17(当前最新版本)
先概括一下:在web和native两个平台上,支持外部字体的方法不同。
我们把要使用的字体放到resource目录下, 比如名字是:testFont.TTF
1、在web上支持的方法。修改index文件,增加一个一种字体:
<style>
html, body {
-ms-touch-action: none;
background: #000000;
padding: 0;
border: 0;
margin: 0;
height: 100%;
}
</style>
<style type="text/css"> /* 在默认的style后面加一个字体style就可以了。 */
@font-face {
font-family: 'Saira SemiCondensed';
src:url('./resource/testFont.TTF') format('truetype');
font-weight: normal;
font-style: normal;
}
div
{
font-family: "Saira SemiCondensed";
}
</style>
然后在引擎的label上,用fontFamily="Saira SemiCondensed", 就可以使用这个字体了.。可以在exml中直接定义,很方便。
2、在native android 上支持的方法。
在label,使用代码如下:
let myLabel: eui.Label
myLabe.fontFamily = "resource/testFont.TTF";
3、把上面两个方案结合起来。
上面这两种方案是不兼容的。native的方案直接用浏览器访问,字体会非常小,怪异。加上判断即可。注意判断native版本,要使用 egret.RuntimeType.RUNTIME2,而不是egret.RuntimeType.NATIVE
let myLabel: eui.Label
if (egret.Capabilities.runtimeType == egret.RuntimeType.RUNTIME2) {
myLabel.fontFamily = "resource/testFont.TTF";
}
Egret引擎外部字体的解决方案相关推荐
- egret引入外部字体
由于默认的字体类型都不满足我们的ui设计要求,我们经常需要引入一些外部的字体,这里记录一下egret如何引入外部字体,之前百度和谷歌下来,方式都是一样的,就是在index.html中引入字体样 ...
- java安卓字体_Android中添加外部字体库和竖直排列字体
一.在Android开发中会遇到系统提供的字体并不能满足自己对字体的设计需要,这就需要引进外部字体库了.下面简述一下如何引入外部字体库. 1>在自己工程文件目录下新建一个assets文件夹,在a ...
- egret与php相连,JavaScript_Mac OS X 系统下安装和部署Egret引擎开发环境, 概述
Egret基于TypeScript开 - phpStudy...
Mac OS X 系统下安装和部署Egret引擎开发环境 概述 Egret基于TypeScript开发的,而TypeScript编译工具tsc是基于Node.js开发的.所以在安装过程中,我们先需要对 ...
- 白鹭安装node_Mac OS X 系统下安装和部署Egret引擎开发环境
概述 Egret基于TypeScript开发的,而TypeScript编译工具tsc是基于Node.js开发的.所以在安装过程中,我们先需要对于基础支持工具进行安装.需要安装的软件如下: Node.j ...
- CSS字体:Webfont在线字体与外部字体及操作系统预装字体使用指南
前言 熟知,从HTML4时代把图标做在一张图上使用css background来提高页面加载速度到"扁平化UI"趋势的到来,再到"手机UI"简洁化设计的大浪潮的 ...
- 在微信小程序使用外部字体
有了解过微信小程序的朋友都应该知道,微信小程序其实说白了就是一个浏览器,一个基于webkit内核的浏览器,我们浏览特定的小程序其实就是在浏览特定的网页,但是问题是这个浏览器和同样基于webkit内核的 ...
- 中文版Chrome浏览器不支持12px以下字体的解决方案
中文版Chrome浏览器不支持12px以下字体的解决方案 Chrome 27之前的中文版桌面浏览器会默认设定页面的最小字号是12px,英文版则没有限制,主要是因为chrome认为汉字小于12px就会增 ...
- 【微信小程序】真机调试引用的外部字体不生效问题
项目场景: 前提:之前的在H5和开发者工具里面都正常: 问题描述 问题:在H5和开发者工具里面字体引用都正常,但是真机调试出现问题. 在H5和开发者工具里面字体引用不正常的参考我的上一篇文章: 解决引 ...
- egret发布的HTML5项目怎么打开,Egret引擎开发指南之发布项目
在Egret中,使用发布功能也非常的简单.你只需要使用如下命令即可: egret publish HelloWorld 此命令中egret publish为发布命令,HelloWorld是你当前项目的 ...
最新文章
- 在IAR 中出现the stack plug-in failed to set a breakpoint on main
- 分组显示的ListView分页加载数据
- Table Store: 海量结构化数据实时备份实战
- 【ElasticSearch】es ResourceWatcherService 的 初始化 启动 源码解析
- 北京最值得逛的50个地方:后海、798、簋街...
- 2019年1月13日【回家】
- 微信demo小游戏:飞机大战从无到有
- QT 学习之饼状图实现
- js实现word生成书签_javascript下用ActiveXObject控件替换word书签,将内容导
- 【python--爬虫】彼岸图网高清壁纸爬虫
- Adversarial Generation of Continuous Images 阅读笔记
- 携程Java后台开发面经
- 微信公众号第三方平台开发PYTHON教程 PART 5
- 重新编译CDH版本hadoop报错:Non-resolvable parent POM: Could not transfer artifact com.
- 微信朋友圈信息流可能采用算法排序吗?
- 分享35套极其精美的高清桌面壁纸免费下载
- 对向传播神经网络(CPN)
- Echart颜色设置
- VTK8.2.0安装步骤
- 一句shell命令搞定代码行数统计
热门文章
- git拉取分支中指定文件到本地
- 移相全桥的控制模型的建立和仿真
- git进行rebase操作报错提示“hint: Waiting for your editor to close the file... ”
- [转]Google Protocol Buffers 之.Net应用
- 关于不定方程解的个数的问题
- 和肖哥在一起学hcnp的日子
- 深大uooc大学生心理健康章节答案第十章
- Mycat启动出现的报错字段及解决方法
- Python 动态定义变量名
- netty自定义channel id