当前XAMARIN在IOS以及ANDROID上没有完整的FreeType绑定,如果使用自己的游戏引擎, 那么就要有一套FreeType绑定才好。目前比较成熟的SharpFont算是比较好的绑定库,拿下代码稍加修改就可以适应IOS\ANDROID及WINDOWS下的使用,但是这里面有个问题,FREETYPE的头文件里面类型定义有许多没有太好的考虑32、64位兼容问题,许多地方用了LONG定义,这个在32位系统下还好说,SHARPFONT可以好好适应,但是在64位平台下就完全乱套了,C#下的类型只有一个IntPtr是随之平台大小变化的,而不能直接用int或者long。看着SHARPFONT里面各种类封装,我放弃了,需要动的地方太多了,不合算。所以看到了另外一个FREETYPE绑定TaoFramework.FreeType.这个TaoFramework就是曾经大名鼎鼎的OpenGL的C#绑定库,现在是OpenTK了。其中的FREETYPE绑定库只有一个文件,C风格,没有额外封装,与原生FreeType API一一对应,所以改起来相对简单些,也建议大家如果有需求的话可以照这个下手。随后我会附上我自己的修改版本。
时间: 2024-10-28 21:08:15