热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

解决Flex4中,自定义字体时Alert或其它mxUI组件无法显示中文的问题

2019独角兽企业重金招聘Python工程师标准本以为要放弃Flex了结果项目需要又要回到Flex,为了界面好看使用了自定义字体,结果报错warn

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

本以为要放弃Flex了 结果项目需要又要回到Flex,为了界面好看使用了自定义字体,结果报错 warning: incompatible embedded font 'WRYH' specified for mx.controls::Alert (Alert36) . This component requires that the embedded font be declared with embedAsCFF=false.

找了很多资料,都没解决我的问题, 最后通过 某个E国人的博文中找了问题所在,同时参考了Adobe 关于CFF的说明之后才恍然大雾

Flex 4.x 中  mx  与spark 是有很大的区别

因此spark中用了自定义字体后,不能用于mx中,因此需要将embedAsCFF设置为false;

所以为了解决这个问题,需要将一个字体申明两次(内存加倍)

@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
@namespace ml "com.maiyoule.exam.layout.*";@font-face{fontFamily:"WRYH";src:url("../fonts/msyh.ttf");embedAsCFF: true;
}
&#64;font-face{fontFamily:"WRYH_CLOSE"; /* <&#61;&#61; 重新声明一个别名 */src:url("../fonts/msyh.ttf");embedAsCFF: false; /* <&#61;&#61;&#61;设置为False 用于mx组件 */
}s|Application{fontFamily:"WRYH";
}mx|Alert{fontFamily:"WRYH_CLOSE"; /* <&#61;&#61;设置新申明的别名 */
}



到此问题解决。


转:https://my.oschina.net/u/616133/blog/270320



推荐阅读
author-avatar
佳蓁政睿9
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有