在MADP项目中,如何适配生僻字对于使用Weex和H5开发的应用来说是一个重要问题。生僻字的适配主要涉及输入和显示两个方面。对于需要录入生僻字的情况,我们需要在项目中集成相应的键盘,包括原生键盘和H5键盘。
通常情况下,很少有开源的生僻字键盘方案可用。因此,项目组可以考虑采购适用于生僻字的键盘。
在Weex工程中,需要分别针对iOS和安卓原生端进行适配。具体步骤如下:
iOS原生端适配
首先,在Weex工程中集成适配生僻字的SDK。这个SDK应该提供相关的标签和方法,以便Weex可以调用。集成SDK的具体方法可以参考iOS原生开发的相关文档。
安卓原生端适配
对于安卓原生端,同样需要集成适配生僻字的SDK。这个SDK应该提供与iOS端相似的功能,包括标签和方法的暴露。集成SDK的具体方法可以参考安卓原生开发的相关文档。
对于H5工程,我们需要集成适配生僻字的键盘JS。以下是具体的步骤:
集成键盘JS
在H5工程中,引入适配生僻字的键盘JS文件。这个JS文件应该提供相应的方法和功能,以便在项目中使用。可以通过在HTML文件中添加标签来引入该JS文件。
键盘的使用
在项目中,根据需要的场景使用适配生僻字的键盘。可以通过监听输入框的事件,在需要输入生僻字的时候调用键盘进行输入。具体的使用方法可以参考键盘JS的文档或示例代码
显示生僻字需要使用相应的生僻字字体库。目前市面上存在一些免费商用的字体库,例如阿里巴巴普惠字体库。如果项目中已采购键盘,则可以使用对应的字体库。
在MADP后管的main文件夹下新建font文件夹,并将生僻字字体库文件上传至该文件夹。
在App.vue文件中加载自定义字体。
<script>
const domModule = weex.requireModule('dom')
export default {
created () {
this.addRule()
},
methods: {
addRule(){
domModule.addRule('fontFace', {
'fontFamily': "iconfont1",
'src': "url('/font/JinbiaoSong.ttf')"
});
}
}
}
在需要展示生僻字的text标签中,设置class对应的font-family样式。
.menu_text{
font-family: iconfont2;
}
原理与Weex类似,先加载生僻字字体库,然后在需要展示的标签中设置class对应的字体font-family样式。
@font-face {
font-family: "iconfont2";
src: url("/font/JinbiaoSong.ttf") format('truetype');;
}
.menu_text {
font-family: iconfont2;
}
如果生僻字字体库文件较大,建议将字体库文件放到客户端预制包中,以提高加载和渲染速度。
当需要加载第三方链接或协议时,文件中包含生僻字,需注意以下事项: