一直致力于為公司尋找更加高效的解決方案,作為一款K12在線教育App,功能中難免會有LaTeX數(shù)學公式的顯示需求,這部分公司已經(jīng)實現(xiàn)了此功能,只是個人覺得在體驗和效率上還是不太好,今天來聊一下如何讓原生渲染LaTeX數(shù)學公式。
先了解一下LaTeX數(shù)學公式
什么是Latex?感興趣的同學可以查看百科:Latex百科。
Latex數(shù)學公式:就是通過Latex來表示一個數(shù)學公式,舉例說明:
例如:$$ \\[ \\sum_{k=1}^n k^2 = \\frac{1}{2} n (n+1).\\] $$
表示數(shù)學公式:
目前方案
由于之前一直沒有找到原生渲染latex數(shù)學公式的方案,所以之前的采用的方案比較簡單粗暴了點,直接通過Latex生成圖片的方式,然后客戶端通過自定義TextView實現(xiàn)圖文混排。
分析優(yōu)缺點:
一道題目中有可能很多數(shù)學公式,會有大量的圖片下載需求
由于是圖片下載,在弱網(wǎng)環(huán)境下會導致下載過慢
由于是下載的圖片,渲染過程慢,內存開銷相對也大
選定方案
基于目前現(xiàn)狀,一直想著尋找替換方案,最近尋找了一下解決方案,驚奇的發(fā)現(xiàn)現(xiàn)在已經(jīng)有支持Latex原生渲染的開源框架了。今天來學習使用一下。它就是:FlexibleRichTextView。
FlexibleRichTextView簡介
一個可以自行定義大部分標簽(比如你可以自己定義粗體為 <b></b>
或者
網(wǎng)友評論