Navigation

    全志在线开发者论坛

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • 在线文档
    • 社区主页

    LVGL拼音输入法插件(lv_100ask_pinyin_ime)

    GUI
    1
    1
    1279
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      biubiu LV 5 last edited by biubiu

      lv_100ask_pinyin_ime

      演示视频:https://www.bilibili.com/video/BV1DY41147xX

      介绍

      lv_100ask_pinyin_ime 是在 lv_keyboard 的基础上编写的一个自定义部件(创建接口为: lv_100ask_pinyin_ime_create(lv_obj_t *parent)); ),它和 lv_keyboard 没有什么区别,只是增加了支持中文拼音输入法的功能。

      所以将其称为:支持中文拼音输入法的LVGL键盘(lv_keyboard)部件增强插件。

      正常来说,只要是lvgl能运行的环境 lv_100ask_pinyin_ime 也能够运行!影响因素主要有两点:使用的字库文件大小和使用的词库大小。

      lv_100ask_pinyin_ime 使用起来非常简单,后续自定义拓展功能也很方便,更多功能敬请期待。

      lv_100ask_pinyin_ime特性:

      • 资源占用低
      • 支持自定义词库
      • 支持自定义样式(候选栏、键盘)
      • 支持简拼
      • 支持双拼(TODO)
      • 可加载词库文件(TODO)
      • 自动更新词库(TODO)
      • 九宫格模式(TODO)

      使用方法

      参考 lv_lib_100ask/test/lv_100ask_pinyin_ime_test 的示例。

      自定义词库

      如果不想使用内置的拼音词库,可以使用自定义的词库。
      或者觉得内置的拼音词库消耗的内存比较大,也可以使用自定义的词库。

      自定义词库非常简单。

      • 首先,在 lv_lib_100ask_conf.h 中将 LV_100ASK_PINYIN_IME_ZH_CN_PIN_YIN_DICT 设置为 0
      • 然后,按照下面这个格式编写词库。

      词库格式

      必须按照下面的格式,编写自己的词库:

      lv_100ask_pinyin_dict_t your_pinyin_dict[] = {
                  { "a", "啊阿呵吖" },
                  { "ai", "埃挨哎唉哀皑蔼矮碍爱隘癌艾" },
                  { "ba", "芭捌叭吧笆八疤巴拔跋靶把坝霸罢爸扒耙" },
                  { "cai", "猜裁材才财睬踩采彩菜蔡" },
                  /* ...... */
                  { "zuo", "昨左佐做作坐座撮琢柞"},
                  {NULL, NULL}
      
      

      最后一项必须要以 '{NULL, NULL}' 结尾,否则将无法正常工作。

      应用新词库

      按照上面的词库格式编写好词库之后,只需要调用这个函数即可设置使用你的词库:

          lv_obj_t * pinyin_ime = lv_100ask_pinyin_ime_create(lv_scr_act());
          lv_100ask_pinyin_ime_set_dict(pinyin_ime, your_pinyin_dict);
      

      注意: 必须在设置好词库之后再使用 lv_100ask_pinyin_ime

      模拟器体验

      基于codeblocks 20.03+windows10编译:lv_100ask_pinyin_ime_beta-v2.0.zip

      代码

      github: https://github.com/100askTeam/lv_lib_100ask/tree/master/src/lv_100ask_pinyin_ime
      gitee: https://gitee.com/weidongshan/lv_lib_100ask/tree/master/src/lv_100ask_pinyin_ime


      参考

      • https://bbs.aw-ol.com/topic/1328/分享个26键的lvgl-8拼音输入法-作者-xfdr0805?_=1654683986760
      1 Reply Last reply Reply Quote Share 0
      • Moved from 其它全志芯片讨论区 by  whycan whycan 
      • 1 / 1
      • First post
        Last post

      Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

      行为准则 | 用户协议 | 隐私权政策