渲染TTF字体的曲线

时间:2011-04-01 08:17:22

标签: algorithm fonts rendering true-type-fonts curves

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

到目前为止我所知道的:

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

    感谢。

1 个答案:

答案 0 :(得分:1)

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