CN113326406A - 一种lvgl上的多语种切换方法及装置 - Google Patents
一种lvgl上的多语种切换方法及装置 Download PDFInfo
- Publication number
- CN113326406A CN113326406A CN202110558124.1A CN202110558124A CN113326406A CN 113326406 A CN113326406 A CN 113326406A CN 202110558124 A CN202110558124 A CN 202110558124A CN 113326406 A CN113326406 A CN 113326406A
- Authority
- CN
- China
- Prior art keywords
- text
- variable
- language
- user interface
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 238000003491 array Methods 0.000 claims abstract description 21
- 230000001172 regenerating effect Effects 0.000 claims description 6
- 238000013519 translation Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000014616 translation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Machine Translation (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种LVGL上的多语种切换方法。用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号;不同语种的字符串由不同的数组管理;在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号。采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组。电子设备根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容。当电子设备检测到第一变量的取值发生变动,则通知当前用户界面的各文本控件更新当前用户界面中的文本内容。本申请实现了在LVGL系统框架上切换语种并实时更新用户界面的显示文本。
Description
技术领域
本申请涉及一种电子设备上切换用户界面的显示语种的方法。
背景技术
目前采用嵌入式系统(embedded system)的电子设备使用的GUI(graphical userinterface,图形用户界面)方案主要有两种,高端的电子设备使用安卓(Android)GUI系统框架,低端的电子设备则使用miniGUI系统框架。安卓GUI系统框架的代码量大,无法在存储空间有限的电子设备中保存。miniGUI系统框架的功能老旧,画面效果不够丰富,而且代码体积还是不够小。
LVGL(Light and Versatile Graphics Library,轻量通用图形库)是一种新的GUI系统框架,具有代码量小、易于开发UI(user interface,用户界面)的优点,仅用16MB的闪存(flash)空间就能加载电子设备的固件(firmware)。但是LVGL系统框架目前不提供多语种的实时切换功能。LVGL系统框架中,新建文本控件时才能指定用哪个语种的字符串,一旦文本控件建立后就无法更改之前所指定的语种的字符串。
发明内容
本申请所要解决的技术问题是在LVGL系统框架中增加多语种切换的方法,在文本控件建立后也能实时切换语种并实时显示切换后的语种。
为解决上述技术问题,本申请提出了一种LVGL上的多语种切换方法,包括如下步骤。步骤S1:用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号;不同语种的字符串由不同的数组管理;在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号。步骤S2:采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组。所述步骤S1、步骤S2的顺序或者任一在前,或者同时进行。步骤S3:电子设备根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容,所述电子设备采用LVGL作为GUI系统框架。步骤S4:当电子设备检测到第一变量的取值发生变动,则通知当前用户界面的各文本控件更新当前用户界面中的文本内容;更新方式是:(1)获取当前用户界面中的文本内容在第一变量的原取值对应的数组中的文本序列号;(2)在第一变量的新取值对应的数组中搜索相同文本序列号的字符串;(3)根据搜索到的字符串重新生成当前用户界面中的文本内容。
进一步地,所述步骤S1中,各数组中具有相同的文本序列号的字符串是相对应的——这是指它们具有相同含义,只是不同语种的翻译。
优选地,所述步骤S1中,用第一数组管理中文的所有字符串,用第二数组管理英文的所有字符串。
进一步地,所述步骤S2中,第一变量的取值是由用户在电子设备的用户界面中所选择的语种确定的。
优选地,所述步骤S2中,电子设备的选择语种的用户界面有两个选项:中文、英文;当用户选择中文时,该第一变量为第一取值;当用户选择英文时,该用户变量为第二取值。
进一步地,所述步骤S4中,除当前用户界面以外的其他用户界面中的文本内容,根据所述步骤S3,当进入到某个用户界面时,根据第一变量的当前取值对应的数组中的文本序列号生成。
进一步地,所述电子设备关机前将第一变量的当前取值保存在非易失性存储器中。
进一步地,所述电子设备下次开机时从非易失性存储器中读取第一变量的取值,重新赋予给第一变量,以使本次开机用户界面所显示的语种与上次关机前一致。
本申请还提出了一种LVGL上的多语种切换装置,包括语种管理单元、语种指定单元、文本生成单元、文本更新单元。所述语种管理单元用来采用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号;不同语种的字符串由不同的数组管理;在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号。所述语种指定单元用来采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组。所述文本生成单元用来根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容。所述文本更新单元用来在检测到第一变量的取值发生变动时,通知当前用户界面的各文本控件更新当前用户界面中的文本内容;更新方式是:(1)获取当前用户界面中的文本内容在第一变量的原取值对应的数组中的文本序列号;(2)在第一变量的新取值对应的数组中搜索相同文本序列号的字符串;(3)根据搜索到的字符串重新生成当前用户界面中的文本内容。
本申请取得的技术效果是:在LVGL的GUI架构上实现了多语种切换并实时刷新用户界面的功能,满足了采用LVGL作为GUI系统框架的电子设备的功能需求。
附图说明
图1是本申请提出的LVGL上的多语种切换方法的流程示意图。
图2是本申请提出的LVGL上的多语种切换装置的流程示意图。
图中附图标记说明:语种管理单元1、语种指定单元2、文本生成单元3、文本更新单元4。
具体实施方式
请参阅图1,本申请提出的LVGL上的多语种切换方法包括如下步骤。
步骤S1:用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号。不同语种的字符串由不同的数组管理。在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号。换而言之,各数组中具有相同的文本序列号的字符串是相对应的——这是指它们具有相同含义,只是不同语种的翻译。
步骤S2:采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组。
所述步骤S1、步骤S2的顺序没有严格限制,任一在前或同时进行,都是可行的。
步骤S3:电子设备根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容,所述电子设备采用LVGL作为GUI系统框架。
步骤S4:当电子设备检测到第一变量的取值发生变动,则通知当前用户界面的各文本控件更新当前用户界面中的文本内容。更新方式是:(1)获取当前用户界面中的文本内容在第一变量的原取值对应的数组中的文本序列号。(2)在第一变量的新取值对应的数组中搜索相同文本序列号的字符串。(3)根据搜索到的字符串重新生成当前用户界面中的文本内容。
作为示例,所述步骤S1中,用第一数组管理中文的所有字符串,用第二数组管理英文的所有字符串。
所述步骤S2中,第一变量的取值是由用户在电子设备的用户界面中所选择的语种确定的。例如电子设备的选择语种的用户界面有两个选项:中文、英文。用户选择中文时,该第一变量为第一取值;用户选择英文时,该用户变量为第二取值。
所述步骤S4中,除当前用户界面以外的其他用户界面中的文本内容,按照步骤S3的内容,当进入到某个用户界面时,根据第一变量的当前取值对应的数组中的文本序列号生成。因此当电子设备检测到第一变量发生变动,所有用户界面中的文本内容都将进行相应的显示语种的切换。
优选地,所述电子设备关机前将第一变量的当前取值保存在非易失性存储器中。
优选地,所述电子设备下次开机时从非易失性存储器中读取第一变量的取值,重新赋予给第一变量,以使本次开机用户界面所显示的语种与上次关机前一致。
请参阅图2,本申请提出的LVGL上的多语种切换装置包括语种管理单元1、语种指定单元2、文本生成单元3、文本更新单元4。图2所示装置与图1所示方法相对应。
所述语种管理单元1用来采用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号。不同语种的字符串由不同的数组管理。在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号。
所述语种指定单元2用来采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组。
所述文本生成单元3用来根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容。
所述文本更新单元4用来在检测到第一变量的取值发生变动时,通知当前用户界面的各文本控件更新当前用户界面中的文本内容。更新方式是:(1)获取当前用户界面中的文本内容在第一变量的原取值对应的数组中的文本序列号。(2)在第一变量的新取值对应的数组中搜索相同文本序列号的字符串。(3)根据搜索到的字符串重新生成当前用户界面中的文本内容。
本申请实现了在LVGL系统框架上切换语种并实时更新用户界面的显示文本。
以上仅为本申请的优选实施例,并不用于限定本申请。对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种LVGL上的多语种切换方法,其特征是,包括如下步骤;
步骤S1:用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号;不同语种的字符串由不同的数组管理;在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号;
步骤S2:采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组;
所述步骤S1、步骤S2的顺序或者任一在前,或者同时进行;
步骤S3:电子设备根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容,所述电子设备采用LVGL作为GUI系统框架;
步骤S4:当电子设备检测到第一变量的取值发生变动,则通知当前用户界面的各文本控件更新当前用户界面中的文本内容;更新方式是:(1)获取当前用户界面中的文本内容在第一变量的原取值对应的数组中的文本序列号;(2)在第一变量的新取值对应的数组中搜索相同文本序列号的字符串;(3)根据搜索到的字符串重新生成当前用户界面中的文本内容。
2.根据权利要求1所述的LVGL上的多语种切换方法,其特征是,所述步骤S1中,各数组中具有相同的文本序列号的字符串是相对应的——这是指它们具有相同含义,只是不同语种的翻译。
3.根据权利要求1所述的LVGL上的多语种切换方法,其特征是,所述步骤S1中,用第一数组管理中文的所有字符串,用第二数组管理英文的所有字符串。
4.根据权利要求1所述的LVGL上的多语种切换方法,其特征是,所述步骤S2中,第一变量的取值是由用户在电子设备的用户界面中所选择的语种确定的。
5.根据权利要求4所述的LVGL上的多语种切换方法,其特征是,所述步骤S2中,电子设备的选择语种的用户界面有两个选项:中文、英文;当用户选择中文时,该第一变量为第一取值;当用户选择英文时,该用户变量为第二取值。
6.根据权利要求1所述的LVGL上的多语种切换方法,其特征是,所述步骤S4中,除当前用户界面以外的其他用户界面中的文本内容,根据所述步骤S3,当进入到某个用户界面时,根据第一变量的当前取值对应的数组中的文本序列号生成。
7.根据权利要求1所述的LVGL上的多语种切换方法,其特征是,所述电子设备关机前将第一变量的当前取值保存在非易失性存储器中。
8.根据权利要求7所述的LVGL上的多语种切换方法,其特征是,所述电子设备下次开机时从非易失性存储器中读取第一变量的取值,重新赋予给第一变量,以使本次开机用户界面所显示的语种与上次关机前一致。
9.一种LVGL上的多语种切换装置,其特征是,包括语种管理单元、语种指定单元、文本生成单元、文本更新单元;
所述语种管理单元用来采用一个数组管理一个语种的所有字符串,该数组为对应语种的所有字符串设定各不相同的文本序列号;不同语种的字符串由不同的数组管理;在不同的数组中,不同语种的相同含义的字符串采用相同的文本序列号;
所述语种指定单元用来采用第一变量记录用户指定的语种,第一变量的不同取值对应于管理语种的不同数组;
所述文本生成单元用来根据第一变量的当前取值对应的数组中的文本序列号生成当前用户界面中的文本内容;
所述文本更新单元用来在检测到第一变量的取值发生变动时,通知当前用户界面的各文本控件更新当前用户界面中的文本内容;更新方式是:(1)获取当前用户界面中的文本内容在第一变量的原取值对应的数组中的文本序列号;(2)在第一变量的新取值对应的数组中搜索相同文本序列号的字符串;(3)根据搜索到的字符串重新生成当前用户界面中的文本内容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558124.1A CN113326406B (zh) | 2021-05-21 | 2021-05-21 | 一种lvgl上的多语种切换方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558124.1A CN113326406B (zh) | 2021-05-21 | 2021-05-21 | 一种lvgl上的多语种切换方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113326406A true CN113326406A (zh) | 2021-08-31 |
CN113326406B CN113326406B (zh) | 2023-08-01 |
Family
ID=77416321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110558124.1A Active CN113326406B (zh) | 2021-05-21 | 2021-05-21 | 一种lvgl上的多语种切换方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113326406B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117892727A (zh) * | 2024-03-14 | 2024-04-16 | 中国电子科技集团公司第三十研究所 | 一种实时文本数据流去重系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007310746A (ja) * | 2006-05-19 | 2007-11-29 | Nagaoka Univ Of Technology | 文章更新量評価プログラム |
CN101276272A (zh) * | 2007-03-28 | 2008-10-01 | 凌阳科技股份有限公司 | 支持多语用户界面的系统及其方法 |
US20080276166A1 (en) * | 2007-05-01 | 2008-11-06 | Microsoft Corporation | Automatic switching fonts on multilingual text runs |
CN111061525A (zh) * | 2018-10-16 | 2020-04-24 | 福建天泉教育科技有限公司 | 国际化界面切换方法、存储介质 |
-
2021
- 2021-05-21 CN CN202110558124.1A patent/CN113326406B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007310746A (ja) * | 2006-05-19 | 2007-11-29 | Nagaoka Univ Of Technology | 文章更新量評価プログラム |
CN101276272A (zh) * | 2007-03-28 | 2008-10-01 | 凌阳科技股份有限公司 | 支持多语用户界面的系统及其方法 |
US20080276166A1 (en) * | 2007-05-01 | 2008-11-06 | Microsoft Corporation | Automatic switching fonts on multilingual text runs |
CN111061525A (zh) * | 2018-10-16 | 2020-04-24 | 福建天泉教育科技有限公司 | 国际化界面切换方法、存储介质 |
Non-Patent Citations (1)
Title |
---|
党婷阁;常淑娟;: "基于数据库技术的多语种切换方案设计与实现", 现代电子技术, no. 20 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117892727A (zh) * | 2024-03-14 | 2024-04-16 | 中国电子科技集团公司第三十研究所 | 一种实时文本数据流去重系统及方法 |
CN117892727B (zh) * | 2024-03-14 | 2024-05-17 | 中国电子科技集团公司第三十研究所 | 一种实时文本数据流去重系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113326406B (zh) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107172454B (zh) | 一种视频推荐方法、介质、装置和计算设备 | |
US20070245339A1 (en) | Creating documentation screenshots on demand | |
CN100543732C (zh) | 用于同步软件应用程序和web网站之间用户界面语言的方法和系统 | |
CN104951364A (zh) | 一种基于Android平台的语言切换方法及系统 | |
CN104020950A (zh) | 基于触摸屏的输入方法和包含触摸屏的输入装置 | |
KR20160054629A (ko) | 사용자 인터페이스들 및 입력 컨트롤들을 적응시키는 방법 | |
WO2014173141A1 (en) | Method of switching desktop subjects of mobile terminal and its switching apparatus | |
CN103533448B (zh) | 智能电视的光标控制方法和光标控制装置 | |
CN101876907A (zh) | 人机交互界面的多语言实现方法及装置 | |
CN103809983A (zh) | 一种修改bios setup界面的方法 | |
KR20160118846A (ko) | 단어 학습을 제공하는 방법과 시스템 및 기록 매체 | |
CN104199917A (zh) | 一种网页页面内容的翻译方法、装置以及客户端 | |
CN113326406B (zh) | 一种lvgl上的多语种切换方法及装置 | |
CN105468440B (zh) | 一种信息展示方法、装置及电子设备 | |
CN104378692A (zh) | 一种处理视频字幕的方法及装置 | |
CN108052212A (zh) | 一种输入文字的方法、终端及计算机可读介质 | |
CN112836156A (zh) | 页面切换方法、装置、电子设备及计算机可读存储介质 | |
CN105159673A (zh) | 一种设置控件样式的方法和装置 | |
CN101595470A (zh) | 用于管理系统规范的方法和装置 | |
EP2827299A2 (en) | Electronic device and image data displaying method | |
CN101252650A (zh) | 电视机osd生成与显示控制装置及方法 | |
AU2020288833B2 (en) | Techniques for text rendering using font patching | |
KR20200002490A (ko) | 입력 어플리케이션을 이용한 번역 서비스 제공 방법 및 이를 이용하는 단말장치 | |
KR101645674B1 (ko) | 자동완성 후보 단어 제공 방법 및 장치 | |
CN111124406A (zh) | 静态页面语言切换方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |