【移动应用开发技术】android中怎么解决中文字体向上偏移_第1页
【移动应用开发技术】android中怎么解决中文字体向上偏移_第2页
【移动应用开发技术】android中怎么解决中文字体向上偏移_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【移动应用开发技术】android中怎么解决中文字体向上偏移

这篇文章给大家介绍android中怎么解决中文字体向上偏移,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1.bug出现目前在开发webapp,在调试的时候,发现项目里面的中文有一点向上偏移。具体表现为:使用开发者工具去查看元素,元素的真实高度和位置与文字不同。列如,一个span的font-size和line-height都设置为16px,在调试时,元素的高度确实是16px,但是,中文的高度看起来并不止16px,而且显示的位置明显超出了元素的尺寸范围,向上偏移。开始的时候还以为是样式导致的,于是尝试各种修改css,但是完全没有用。后来在网上看到用“定位”或者“上边距”来强制文字的位置,但是发现这个方法太麻烦了,最终放弃这个方案。后来想到使用的是ubuntu,怀疑可能是系统默认字体的原因导致了这个问题。于是下载了一个字体文件(用的是“思源黑体”)。然后配置全局字体,发现可以解决这个问题。2.第二个问题出现虽然使用自定义字体解决了中文文字偏移的问题,但是由于字体文件太大导致性能很不理想。无论是将字体文件放到服务器还是使用cdn都不理想。最终找到了fontmin这个插件。这个插件的原理是将字体文件中的字符集进行筛选,生成的新的字体文件中,只包含要使用到的文字字符集。3.最终的方案虽然fontmin可以进行字符集筛选,但是项目中到底需要哪些中文文字是不确定的。但没有关系,经过实验,使用一个只有0这个字符集的字体文件同样可以解决我们最初的问题。下面来看实现步骤。3.1字体下载到网上下载一个中文字体,这里我使用的是googlefonts。先测试一下,直接引用这个字体后,是否可以解决字体偏移。可以的话,进行下一步。3.2安装fontmin这里不推荐全局安装,在项目里面安装即可。npm

install

fontmin

-D然后编写配置文件。这里我是写在项目根目录的。//

fontmin-config.js

var

Fontmin

=

require("fontmin")

var

srcPath

=

"./src/assets/fonts/my-font.ttf"

//

字体源文件

var

destPath

=

"./src/assets/font-output/"

//

输出路径

var

text

=

"0"

//

筛选的字符集

var

fontmin

=

new

Fontmin()

.src(srcPath)

//

输入配置

.use(

Fontmin.glyph({

text:

text

})

)

.dest(destPath)

//

输出配置

fontmin.run(function(err,

files,

stream)

{

if

(err)

{

console.error(err)

}

console.log("done")

})然后执行cd

your-project-dir

node

./fontmin-config.js3.3配置css//

global.css

@font-face

{

font-family:

"my-font";

src:

url("../fonts/my-font.ttf");

}

html,body{

font-family:

"my-font",

sans-serif;

}关于and

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论