2010-05-25 100 views
3

在我的iPhone應用程序中,我想繪製幾個公式。我怎樣才能用石英2d來管理?有沒有辦法像乳膠一樣建立配方?還是有任何現有的框架?謝謝。Quartz 2d繪圖公式

回答

10

作爲an iPhone application which does just that的開發者,當我說排版等式不是一件小事。就我而言,我使用Core Animation圖層來構建解析方程的子元素。這些方程式是按層次構建的,構成它們的操作也是這樣佈置的。每個操作都包含在其父操作的圖層中,並按照該特定操作的規則進行佈局。

爲了在等式中渲染操作的視覺元素,我使用了Quartz來繪製線條,符號等,但大多數繪圖僅僅是使用NSString文本繪製擴展名在CALayer內繪製的文本。

我沒有重寫標準的CALayer渲染體系結構以從這些方程生成PDF,因爲默認情況下CALayers不會渲染爲向量元素。有關此應用程序如何在我的應用程序中工作的示例,請參閱開源Core Plot項目,該項目在其基本級別執行相同的操作。

我從等式輸出到LaTeX,這很簡單,只要您將它們解析爲分層數據結構,但是將它們從LaTeX解析到該結構中會證明有點棘手。

對於簡單的文本方程式輸入和評估,您可能會發現Graham Cox的GCMathParser有用。

+1

+1。歡迎來到[latex]標籤:希望能在這裏看到更多。 – 2010-05-27 07:02:23

2

我沒有聽說過Cocoa touch實現的真正的Tex引擎,但是有一個輕量級的Javascript公式佈局引擎:jsMath