【发布时间】:2012-10-10 22:24:34
【问题描述】:
我从 dafont 存储库中以 TTF 格式收集了一些 10 像素高的位图字体。但是,我无法从它们中提取实际的位图数据,因为它们似乎是矢量形式,并且在渲染时我无法弄清楚点大小和像素大小之间的对应关系。我需要有关软件工具、库或方法的建议,以获取与字母形式对应的准确的每像素位图数据。
解决问题的示例字体是http://www.dafont.com/commodore-64-pixelized.font
我的目标是使用这些位图字体中的一种或多种来控制基于 Arduino 的视觉持久性 (POV) 显示,作为 http://shrimping.it 项目的一部分。
POV 设备使用一排 LED 来在空中绘制文本,方法是在设备左右移动时使 LED 闪烁。一个著名的例子是 Adafruit 的 MiniPOV http://www.ladyada.net/make/minipov3/
要编写微控制器代码来闪烁 LED,我需要从字体中获取逐像素信息,换句话说,我需要一个方案来从我提供的 TTF 格式文件中提取数据避免必须为每个字符和每种字体手动执行此操作。
到目前为止,我一直在尝试处理 (http://processing.org),但我看不到如何选择点大小来呈现 TTF,以便绘制字体与像素的底层网格。一旦我有了这个,我就可以得到信息,但我似乎无法到达那里。 Processing 报告的 textAscent 和 textDescent 值似乎是垃圾,至少对于我尝试过的字体而言。
我正在测试的字体是 Advocut、Andina、Aux DotBitC、BM tube、Commodore 64 Pixelised、Homespun BRK、Nayupixel、SG05 和 Visitor。如果您需要查看原始数据以更好地理解问题,您可以通过在 dafont.com 上搜索来自行检索这些数据。
【问题讨论】:
标签: fonts bitmap processing pixels truetype