2

您能否指出一种有效的算法来渲染填充 TTF 字体中使用的曲线?我将数据加载为点的轮廓,所以我只是想知道绘制曲线的有效方法。我也非常希望它支持平滑。

到目前为止我所知道的:

  1. TTF 使用贝塞尔曲线和样条曲线
  2. TTF 将它的点分类为定义线的点和定义曲线的点,后者要么在所讨论的曲线上,要么在我们的曲线上(控制点)
  3. 可以从曲线轮廓制作多边形,其中弯曲部分由像素大小的线条组成。
  4. 可以使用这个多边形来渲染填充的轮廓,如果还使用数据作为浮点数而不是整数,则可以实现字体平滑。

那么你能给我指点什么指南吗?

谢谢。

4

1 回答 1

1

如果您已经拥有矢量数据,则必须使用一些扫描线填充算法对其进行栅格化。为了平滑将像素划分为 n x n 块,对字符进行光栅化并计算与填充的子像素数量相对应的灰度值。然而,我认为处理贝塞尔曲线和样条曲线并不容易。如果可能的话,我会使用像 freetype 或类似的库。

于 2011-04-01T13:48:39.850 回答