网站建设数据录入网络营销案例分析论文
一、第三方库文档
3rd party libraries(第三方库) — LVGL 文档
FreeType 中文字库
SDL 模拟器使用freetype中文字库
1.开启字库
2.安装freetype 字库
sudo apt-get update sudo apt-get install libfreetype6-dev
3.修改makefile 添加字库
4.显示中文字体
修改TTF字体文件
把中文字体拷贝到LVGL工程中
//修改为自己的中文字体 .ttf文件 👉./lvgl/examples/libs/freetype/simhei.ttflv_font_t * font = lv_freetype_font_create("./lvgl/examples/libs/freetype/simhei.ttf",LV_FREETYPE_FONT_RENDER_MODE_BITMAP, 24, LV_FREETYPE_FONT_STYLE_NORMAL);
/*** Create a freetype font.* @param pathname font file path.* @param render_mode font render mode(see @lv_freetype_font_render_mode_t for details).* @param size font size.* @param style font style(see lv_freetype_font_style_t for details).* @return Created font, or NULL on failure.*/
lv_font_t * lv_freetype_font_create(const char * pathname, lv_freetype_font_render_mode_t render_mode, uint32_t size,lv_freetype_font_style_t style);
pathname:字体文件路径
render_mode : 渲染模式 👉LV_FREETYPE_FONT_RENDER_MODE_BITMAP 位图渲染模式 size:字体大小 style:字体样式 👉LV_FREETYPE_FONT_STYLE_NORMAL 普通样式 返回值: 成功 字体对象指针 失败 NULL
demo例子
/*Create a font*/lv_font_t * font = lv_freetype_font_create("./lvgl/examples/libs/freetype/simhei.ttf",LV_FREETYPE_FONT_RENDER_MODE_BITMAP, 24, LV_FREETYPE_FONT_STYLE_NORMAL);if(!font) {LV_LOG_ERROR("freetype font create failed.");return;}/*Create style with the new font*/static lv_style_t style; // 创建样式lv_style_init(&style); // 初始化样式lv_style_set_text_font(&style, font); // 添加字体样式lv_style_set_text_align(&style, LV_TEXT_ALIGN_CENTER); // 设置字体居中/*Create a label with the new style*/lv_obj_t * label = lv_label_create(lv_screen_active()); // 创建一个标签lv_obj_add_style(label, &style, 0); // 给标签添加字体样式lv_label_set_text(label, "我爱中国! I Love China"); // 设置表的内容lv_obj_center(label);
二、ARM 使用freetype 字库
1. 下载 freetype 字库源码&交叉编译源码
20.移植Freetype字体库_freetype移植-CSDN博客 (有兴趣自己操作一下)
2.或者找一个配置好的库
1.解压交叉编译好的 freetype & zlib 字库到LVGL 工程中tar -xvf freetype_tmp.tar.gz -C ~/lv_port_linux/
3.修改Makefile 链接arm 版本的字库
4.下载到开发板中运行
出现错误
解决方法
把freetype_tmp/lib 中的所有文件下载到开发板中
下载字库文件
出现错误
解决方法
👉/usr/share/fonts/DroidSansFallback.ttf 开发板默认字库文件,如果不想用该文件自己下载新的字库lv_font_t * font = lv_freetype_font_create("/usr/share/fonts/DroidSansFallback.ttf",LV_FREETYPE_FONT_RENDER_MODE_BITMAP, 24, LV_FREETYPE_FONT_STYLE_NORMAL);
至此,希望看完这篇文章的你有所收获,我是Bardb,译音八分贝,道友,下期见!