Facebook 开源 Andriod 文本处理库 TextLayoutBuilder

王练
 王练
发布于 2016年12月19日
收藏 41

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]
本文标题:Facebook 开源 Andriod 文本处理库 TextLayoutBuilder
加载中

最新评论(4

萦水欷心
instagram 的那一套?
http://instagram-engineering.tumblr.com/post/114508858967/improving-comment-rendering-on-android
巴拉迪维
巴拉迪维
好东西
linxCoder
linxCoder






b
Conanx
Conanx
不知道对中文的支持怎么样?
返回顶部
顶部