Taitank 是一个支持 Flex 的跨平台的轻量级的 C++ 排版引擎。设计重点在于如何高性能的实现布局系统,并且在不影响业务使用的前提下,精简对历史属性的支持。
到目前为止,腾讯内已经有了 27 款流行 App 在业务中接入了 Taitank 排版引擎,包括手机QQ、手机QQ浏览器、腾讯视频,QQ音乐等,每日触达数亿用户。
特征
-
高性能。Taitank 布局引擎通过算法流程优化、布局边界优化、缓存优化等多方面措施来提高布局系统的性能,大幅度的提高了布局引擎的性能。
-
标准支持。TDF 团队最终的目标是服务前端开发者,利用完善的前端生态并使得前端开发者能够无成本接入。Taitank 排版引擎实现了完整的 Flex 布局。
-
易用性。TDF 提供了一套模拟器,可以在浏览器中快速验证布局结果,方便开发和使用者的接入。
-
跨平台。Taitank 布局引擎支持多平台使用,并且可以在nodejs和浏览器中直接使用。
Project structure
├── CMakeLists.txt # 编译脚本。
├── assets # 资源文件。
├── benchmark # benchmark。
├── examples # taitank layout 例子。
├── javascript # wasm layout 代码。
├── src # taitank layout 源代码。
├── tests # taitank layout 测试用例。
└── toolchain # 编译工具链。