在我的 iPhone 应用程序中,我想绘制一些公式。我如何使用quartz 2d 来管理它?有没有办法像 latex 一样构建公式?或者有没有现成的框架?谢谢。
最佳答案
作为an iPhone application which does just that的开发者,相信我,排版方程不是一件小事。就我而言,我使用核心动画层来构造解析方程的子元素。方程是分层构造的,并且组成它们的运算也是如此布置的。每个操作都包含在其父操作的层中,并按照该特定操作的规则进行布局。
为了渲染方程中运算的视觉元素,我使用 Quartz 来绘制线条、符号等,但大多数绘图只是使用 NSString 文本绘制扩展在 CALayer 中绘制的文本。
我确实覆盖了标准 CALayer 渲染架构,以便根据这些方程生成 PDF,因为 CALayer 默认情况下不会渲染为矢量元素。有关此渲染如何在我的应用程序中工作的示例,请参阅开源 Core Plot项目,它在基础级别执行相同的操作。
我确实将方程输出到 LaTeX,一旦将它们解析为分层数据结构,这就非常简单,但事实证明,将它们从 LaTeX 解析为该结构有点棘手。
对于简单的文本方程输入和评估,您可能会找到 Graham Cox 的 GCMathParser才能有用。
关于iphone - 使用 Quartz 2d 绘制公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2907045/