flutter_tex_js

一个基于 KaTeX 的轻量级 Flutter TeX 插件,KaTeX 是一个流行且功能齐全的 JavaScript TeX 渲染库。

flutter_tex_js 用于 Orgro

观看 演示视频

此插件有何不同?

截至 2020 年 7 月,Flutter 上已经有其他几个 TeX 包/插件,但其中大多数要么 a) 非常笨重,依赖 webview_flutter,要么 b) 非常不成熟,对常见的 TeX 语法支持不佳。

此插件旨在折衷:它在底层使用单个原生 WebView,在该 WebView 中将 TeX 标记渲染为 PNG。然后,它将 PNG 字节发送回 Dart 世界,并在那里将结果显示为图像。

支持的平台

  • Android 4.1 (SDK 16) 及更高版本
  • iOS 11 及更高版本*
    • *您可以将插件包含在 iOS 9+ 上,但它仅在 11+ 上渲染。在 iOS 9 和 10 上,TexImage 小部件将按原样显示提供的文本。

设置

Android

如果您的应用使用 Kotlin,请确保它是 v1.3.60 或更高版本(请参阅 `build.gradle` 文件中的 `ext.kotlin_version`)。默认值为 v1.3.50,但此版本存在 已知问题,因此如果您从未更新过 Kotlin 版本,请务必更新。

iOS

无需设置。

用法

import 'package:flutter_tex_js/flutter_tex_js.dart';

class MyMathWidget extends StatelessWidget {
  Widget build(BuildContext context) {
    return TexImage(r'a=\pm\sqrt{b^2+c^2} \int_\infty^\beta d\gamma');
  }
}

GitHub

查看 Github