在Haskell中光栅化TrueType字体

在Haskell中光栅化TrueType字体,haskell,bitmap,rendering,truetype,rasterizing,Haskell,Bitmap,Rendering,Truetype,Rasterizing,我想构建一个函数,它接受给定的Unicode字符和给定的TrueType字体,并将相应的字形光栅化为二维1位/像素位图 类似于此: 光栅化:字体->字符->大小->位图 光栅化字体字符大小=。。。 要求 光栅化功能应: 生成最大宽度w和高度h的位图,以便w Int 位图->(Int,Int)->Bool 其中位b(x,y)应计算为真如果(且仅当)设置了索引位置(x,y)处位图b中的位 问题: 是否有任何Haskell库已经可以做到这一点或类似的事情 例子 计算表达式“光栅化”字体乌托邦标准

我想构建一个函数,它接受给定的Unicode字符和给定的TrueType字体,并将相应的字形光栅化为二维1位/像素位图

类似于此:

光栅化:字体->字符->大小->位图 光栅化字体字符大小=。。。 要求 光栅化
功能应:

  • 生成最大宽度
    w
    和高度
    h
    的位图,以便
    w Int
    位图->(Int,Int)->Bool
    
    其中
    位b(x,y)
    应计算为
    如果(且仅当)设置了索引位置
    (x,y)
    处位图
    b
    中的位

    问题: 是否有任何Haskell库已经可以做到这一点或类似的事情

    例子 计算表达式“光栅化”字体乌托邦标准“o”64
将生成位图
b
,如果渲染该位图,其外观将类似于以下图像(以800%的比例查看,带有网格),其中
(宽度b,高度b)=(60,64)

笔记
  • 我已经尝试过使用,但任何获取像素数据的尝试似乎都会导致分割错误,即使使用与测试包所用版本类似的GHC(6.12)版本编译时也是如此。(如果有人感兴趣,我可以提供更多有关segfaulting代码的详细信息。)
  • 我知道存在在OpenGL上下文中呈现TrueType字体的库,但我不知道如何访问像素数据

  • 关于2,只需渲染到纹理即可获得像素数据。