Facebook 开源 Andriod 文本处理库 TextLayoutBuilder

12月16日,Facebook 新开源了一个 Andriod 文本处理库 TextLayoutBuilder。

TextLayoutBuilder 使用和 builder 模式来配置创建 Layout 所需的参数。这个 Builder 类和 TextView 的很相似。调用 build(), TextLayoutBuilder 即可根据设定的参数创建一个文本 Layout。

轻松创建文字布局。

相似风格的布局,可重用 builder。

可缓存常用文字布局。

FreeType 缓存预热。

Layout layout = new TextLayoutBuilder()
    .setTextAppearance(context, resId)
    .setText("TextLayoutBuilder makes life easy")
    .setWidth(400 /*, MEASURE_MODE_EXACTLY */)
    .build();

特性:

Builder

TextLayoutBuilder 使用 builder 模式配置创建 Layout所需的参数,设置 StaticLayout 参数的日子一动不复返了。

缓存

调用 build(),对于一样的参数,将会返回同一个 Layout,对于通用 / 常用的文字布局,这减少了重复调用的消耗。

FreeType 预热

对于 4.0+ 设备, TextLayoutBuilder 可预热 FreeType 字体的缓存。TextLayoutBuilder 在一个后台线程将这些图形绘制到一张图片上,这样可预热图片减少之后的渲染时间。

文章转载自 开源中国社区 [http://www.oschina.net]

上一篇:黑客控制 Dridex 服务器 用杀毒软件替代恶意程序


下一篇:Kubernetes Release Note 解读(1.15, 1.16)