我正在使用ESP32。通过ESP32 MCU接口S7735 LCD,我将ESP_IDF用作IDE。
对于TFT_LCD,我使用“ https://github.com/loboris/ESP32_TFT_library”,并且使用了给定的字体。我尝试了给定的字体及其工作正常,如果要使用自定义字体,只需将字体文件放入spiffs / fonts文件夹并刷新到ESP32。
在上述步骤中,如果我在.ttf中闪烁自定义字体,我将遵循但不会反映任何字体样式。我也尝试将.ttf转换为.fon字体,但.fon格式适用于Window / Dos。对于LCD,我需要一个.fon(二进制)。
对于给定的特定文件,我没有获得使用哪种字体扩展名。请建议兼容的字体扩展名和链接,我也可以轻松下载。
static const char *file_fonts[3] = {"/spiffs/fonts/DotMatrix_M.fon", "/spiffs/fonts/Ubuntu.fon", "/spiffs/fonts/Grotesk24x48.fon"};
main / tft_demo.c中的上面给出了该行,并且该字体使用了给定的路径。
我需要与我的驱动程序兼容的字体文件解决方案。 请建议我使用新的自定义字体。
答案 0 :(得分:0)
字体格式是专有的简单位图。文件扩展名.fon是通用的,不告诉您任何有关实际格式的信息。
您链接的库的/tools
文件夹中包含一个工具,用于将TTF字体转换为作为C代码数据数组生成的位图,您只需将其链接到项目即可添加字体。
从自述文件中:
将任何ttf字体转换为可以包含的c源文件的程序 在ESP32 tft库中。
这是Windows程序,但可以在Linux下与wine一起使用:
用法:
ttf2c_vc2003.exe <point-size> <input-file> <output-file> [<start_char> <end_char>]
或者,在Linux下:
wine ./ttf2c_vc2003.exe <point-size> <input-file> <output-file> [<start_char> <end_char>]
自述文件中还有更多内容-需要进行一些手动编辑。该文件夹包含Vera和DejaVu Sans的示例。