标题真的说明了一切。我需要帮助从一组独立的图像文件创建自定义字体,或者从C#中以网格方式设置一系列字符的一个图像来创建自定义字体。我到处搜索,没有找到任何有用的资源。如果您有任何建议,请提前致谢。C# - 从图像或图像集创建字体
1
A
回答
2
1
这是20年前完成的事情,在可以自由缩放的轮廓字体技术(如TrueType)可用之前完成。其中一些字体仍然在您的机器上,即c:\ windows \ fonts中的.fon文件。它们实际上包含字体中字母的位图,对于字体支持的每个单独字体高度,通常大约有256个字体。
.NET中不存在对这些字体的支持,因此不要考虑创建其中的一种。在一般情况下,不使用TrueType字体的缺点是:
- 只在某一点可用大小
- 没有像样的Unicode支持
- 不同的代码页需要不同的字体
- 的字距和字形不支持悬
- 没有抗锯齿的支持
- 没有ClearType的支持
工具可用于创建您自己的TrueType字体。获取正确的东西并不是一件容易的事情,TrueType的其中一个亮点就是'暗示',当字体以小的点尺寸呈现时,它们会改变字母的形状,以便它们仍然清晰易读。 Verdana是一个非常好的暗示的示例性字体。
Anyhoo,为了追求您的方法,您需要创建一个位图,其中包含您愿意支持的所有字母,例如水平排列。订购它们的最好方法是在靠近你的代码页中选择字母,如西欧和美洲地区常见的Windows 1252。
事情很简单,如果字体是固定音高,每个字母将以字母宽度的倍数开始。按比例间隔的字体需要一个单独的查找表,指定每个字母开始的像素偏移量。例如,使用System.Drawing,您可以使用Graphics.DrawImage(图像,矩形,矩形,graphicsunit)重载,在其中设置矩形,以便复制要呈现的字母。使用Encoding.GetBytes()将字符串转换为字体位图中的索引。
相关问题
- 1. Qt如何从图像创建字体?
- 2. 字体或图像?
- 3. 从字节创建图像[]
- 4. 从图像创建位图
- 5. 从图形创建图像
- 6. 从裁剪图像创建新图像
- 7. 从2张图像创建图像
- 8. 从十进制数据在C#中创建图像或图形?
- 9. C#创建梯度图像
- 10. 从流图像创建视频c#
- 11. 从文件programmaticaly创建图像asp.net C#
- 12. 从c#中的HTML创建图像“src”#
- 13. 从字节创建和保存图像[]
- 14. 从字符串创建GWT图像
- 15. 从图像创建gdoc(OCR)
- 16. 从图像创建视频
- 17. 从图像创建矢量
- 18. 从表格创建图像
- 19. 从图像创建.flv
- 20. 从nsIBinaryInputStream创建图像
- 21. 创建图像
- 22. 创建图像
- 23. Novacode Docx从位图创建图像
- 24. 从单个视图图像重建立体图像
- 25. 的Java SWT:从图像获取像素的子集创建
- 26. 从Tkinter图像收集数据后创建一个python字典
- 27. 从很多小图创建大图像
- 28. WP7:从位图图像创建电影
- 29. 从大图像动态创建缩略图预览图像
- 30. CSS字体图像