由于我的无知,我使用BitFontCreator为unicode字符创建了可爱的字体。我计划将它用于在WinApi上输出的文本。经过长时间的生产,我发现它只能导出.c,.bin和.bmp文件。但是,这些不是WinApi的字体文件可用,我不得不使用PutPixel函数,但它输出速度太慢!我应该做些什么?我想出了一个解决方案:将.c或.bmp改为.ttf,但是如何?(有没有其他方法?)谢谢。如何将.c或.bmp更改为.ttf
-1
A
回答
1
你一般不能,bitfontcreator是一个位图字体制作工具,它实际上只是一个与“字体”无关的位图绘图,直到将图像加载到可将其切片为有意义的“字母在x/y/w/h值处找到'W':....“。
另一方面(其中TTF是两种内部风味之一)的OpenType字体是矢量轮廓真正的字体格式(因为它具有权威和详尽的规范),并且是非常复杂的个软件存在=)
什么你可以做的是导入每个字母到程序中导入位图的信,像HighLogic的FontCreator时,可以做载体抽象,所以你最终的矢量近似您位图。然后,您将花费相当多的时间来修复抽象错误,但至少在此之后您将拥有真正的现代字体。
1
无需将您的像素数据转换为“真实”字体。 PutPixel非常慢,不应该用于这样的目的。
中途解决方案是将每个字符放入一个位图中,然后绘制这些字符。
完整而快速的解决方案是在位图中抓取窗口,将字符绘制到其中,并在窗口中再次绘制修改的位图。这可以通过完整的窗口来完成(如果您需要完全重新绘制所有文本)或使用更细粒度的细粒度,例如一次一行。
相关问题
- 1. 如何将BMP转换为AVI C#
- 2. 如何更改.ttf字体的名称
- 3. 如何将Vector更改为Array或ArrayList?
- 4. 将“/”更改为“\”[C#]
- 5. 如何将Eclipse从Java更改为C++?
- 6. 如何将Postscript Type 1字体转换为.otf或.ttf?
- 7. 将System.Drawing.Graphics保存为png或bmp
- 8. 如何将LWFN转换为TTF?
- 9. 如何将ttf字体转换为pff2?
- 10. 更好的JPG或BMP?
- 11. 如何将“bmp”保存为SD卡中的bmp文件?
- 12. 如何将jpeg或bmp图像转换为原始格式
- 13. 如何将DIV元素保存为jpg或bmp文件?
- 14. 如何将.bmp或.xlsx转换为二维数组
- 15. 将联盟更改为或
- 16. C#将1bit BMP转换为3.0版
- 17. 如何以编程方式创建TTF或OTF字体[C/C++]
- 18. 如何将面板保存为BMP
- 19. 如何将UIImage保存为BMP?
- 20. 如何将.Jpeg图像转换为.Bmp
- 21. 将彩色bmp转换为灰度bmp?
- 22. 在BMP中将BMP转换为JPG
- 23. 如何使用Objective C将.jpg图像转换为.bmp格式?
- 24. 如何将IplImage opencv转换为字节数组(bmp格式)C++?
- 25. 如何在c#中写入.cs文件和/或如何将.txt更改为.cs
- 26. 将struct更改为C++类
- 27. 如何将ImageView更改或转换为对象或字符串?
- 28. 如何将\\更改为\
- 29. 将Bmp灰度读入C
- 30. c#将FileVersionInfo更改为任何文件