当前位置: 首页 > news >正文

襄阳网站建设哪个好长尾关键词挖掘熊猫

襄阳网站建设哪个好,长尾关键词挖掘熊猫,学校官网主页网页设计,汽车网站建设制作费用目录 前置篇章: 一.问题背景 二.失败方案 三.成功方案 1.Gui guider的源码结构 2.手动生成字体 3.Keil中配置相关文件 ​编辑 4.修改文字 四.字体样式函数说明 前置篇章: 【LVGL快速入门(二)】LVGL开源框架入门教程之框架使用(UI界面设计)_lvgl…

目录

前置篇章:

一.问题背景

二.失败方案

三.成功方案

        1.Gui guider的源码结构

2.手动生成字体

3.Keil中配置相关文件

​编辑

4.修改文字

四.字体样式函数说明


前置篇章:

【LVGL快速入门(二)】LVGL开源框架入门教程之框架使用(UI界面设计)_lvgl 菜鸟教程-CSDN博客

一.问题背景

        笔者最近在学习LVGL框架,同时准备使用该框架作为课程设计的一部分,于是需要从静态显示进阶到动态显示以及事件交互。一方面由于笔者是初次接触LVGL,对它并不熟悉,另一方面由于其网络上的针对性具体资料太少,所以学习效率很低。

        由于上一篇文章笔者完成了很基础的静态界面设计和移植。于是此次便向原有工程上先进行试验,先将原有文本改成可以动态变化的文本。

二.失败方案

        笔者一开始选择使用设置Label属性中的setText函数对文本进行设置,在主函数中加入这个函数以为能够修改文本值:

lv_label_set_text(guider_ui.screen_label_1, "6");

        结果:

         除了屏幕中的一个白框之外,文本全部消失不见。

        然后笔者又换了很多不同的位置,无论是将这句放到主函数还是界面ui函数中,显示均不能正常。无关乎位置以及数量,修改之后显示的均为白框。

        最后笔者观察发现为字库问题,后验证了成功方案。

三.成功方案

        1.Gui guider的源码结构

        首先我们要清楚的是GUI guider这个设计工具生成出来的源码结构构成。其生成的src文件夹下包含两个文件夹:

        

        其中:

  • custom文件夹包含由用户进行自由操作的文件,主要完成用户特定的功能实现。
  • generated文件夹包含由Gui guider生成的源文件,其中部分是用户设计的界面数据,部分是字库数据和控件数据,还有一些接入LVGL的接口
    这个文件夹下包含的就是我们设计且使用了的字库文件(即UI界面上的文字数据)这个文件包含了我们用户生成的字库文件(生成但未使用),也就是说我们再使用某个自定义字体文字时需要先手动生成,这里也是笔者踩坑的地方。 这里包含的是用户设计的界面函数这里包含的是Gui guider工具生成所有源码的外部接口,调用这里的函数即可绘制界面。

2.手动生成字体

        前面强调过,在我们使用某个字体时(特别是自己导入的自定义字体)一定一定要先在Gui guider中生成字体。

        输入想要生成的字体后看到以下提示即为成功:

        生成的字库文件全部在这个文件夹里:

3.Keil中配置相关文件

        向管理器中添加我们生成的字库文件:

        点开文件能很清楚地看到我们自己生成的文字数据:

        一般来说UI中已经设计使用的字体都会在gui_guider.h中进行声明,如:

//声明图片
LV_IMG_DECLARE(_cloudblack_alpha_160x128);
LV_IMG_DECLARE(_1693149324150_alpha_58x57);//声明文字
LV_FONT_DECLARE(lv_font_YunFeng_24)
LV_FONT_DECLARE(lv_font_montserratMedium_16)

        函数原型为:

#define LV_FONT_DECLARE(font_name) extern const lv_font_t font_name;

        如果想要使用刚刚生成的文字的话需要在这里手动声明:

4.修改文字

        完成以上工作后我们就可以在我们自己的代码里自由修改文字了。

lv_label_set_text(ui->screen_label_1, "难逃爱意");
lv_obj_set_style_text_font(ui->screen_label_1, &lv_font_YunFeng_24, LV_PART_MAIN|LV_STATE_DEFAULT);

四.字体样式函数说明

        最后对setup_scr_screen.c中的以下有关文字的函数做一个说明:

  • lv_obj_set_style_bg_opa(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置背景的不透明度(opa)为0,即完全透明。LV_PART_MAIN指定样式应用于整个对象,LV_STATE_DEFAULT指定样式应用于对象的默认状态。
  • lv_obj_set_style_border_width(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置边框的宽度为0,这意味着对象不会有边框。同样,样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_radius(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置对象的圆角半径为0,这意味着对象不会有圆角。该样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_shadow_width(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置对象阴影的宽度为0,即对象不会有阴影。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_text_color(ui->screen_label_1, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置文本颜色为白色(十六进制值为0xffffff)。该样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_text_font(ui->screen_label_1, &lv_font_YunFeng_24, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置文本字体为lv_font_YunFeng_24,这是LVGL支持的字体之一。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_text_opa(ui->screen_label_1, 255, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置文本的不透明度为255,即文本完全不透明。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_text_letter_space(ui->screen_label_1, 2, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置文本中字母之间的间距为2个像素。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_text_line_space(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置文本行之间的间距为0个像素。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_text_align(ui->screen_label_1, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置文本对齐方式为居中对齐。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_pad_top(ui->screen_label_1, 8, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置对象顶部内边距为8个像素。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_pad_right(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置对象右侧内边距为0个像素。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_pad_bottom(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置对象底部内边距为0个像素。样式应用于整个对象并在默认状态下生效。
  • lv_obj_set_style_pad_left(ui->screen_label_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

    • 设置对象左侧内边距为0个像素。样式应用于整个对象并在默认状态下生效。
http://www.ds6.com.cn/news/122978.html

相关文章:

  • 青岛网站建设服务公司seo编辑的工作内容
  • 怎样用自己的电脑做网站软文撰写
  • sem推广竞价全域seo
  • 用护卫神做共享网站seo网络推广哪家专业
  • 门户网站制作定做营销型网站建设优化建站
  • 个人快速建站常德网站seo
  • 商城网站制作需要多少费用河南seo外包
  • 网站后台上传图片大小关键词推广是什么意思
  • 做美食的网站可以放些小图片2021年最为成功的营销案例
  • 重庆装修公司全包价格免费的seo优化工具
  • 广州派出所门户网站培训学校加盟费用
  • 学校 网站建设招聘优化公司组织架构
  • 新版网站上线上海牛巨微seo关键词优化
  • 网站分为哪些部分组成部分组成网站排名优化服务公司
  • 查找网站后台的软件手机端搜索引擎排名
  • 做网站要好多钱网络营销企业案例分析
  • 西安网站建设托管沈阳cms建站模板
  • 正规的佛山网站建设开发一款app软件需要多少钱
  • 服装网站建设优点与缺点搜索引擎营销优化策略有哪些
  • 长沙中建设计院网站收录查询站长工具
  • 竞价在什么网站上做杭州云优化信息技术有限公司
  • 网站设计怎么做视频网络推广渠道公司
  • 做网站襄樊cilimao磁力猫最新版地址
  • 建设项目环境影响登记网站湖北平台seo什么意思
  • 怎么给网站有一字做标记seo挂机赚钱
  • 共享vps可以做网站吗网络服务费计入什么科目
  • 论坛网站模板下载百度网站收录提交入口全攻略
  • 重庆市建设工程交易中心网站商家推广平台有哪些
  • 湖南城乡和建设厅网站谷歌官网入口手机版
  • 高密住房和城乡建设局网站seo怎么发文章 seo发布工具