CN104199628A - 基于QT Embedded系统的字符显示方法和系统 - Google Patents

基于QT Embedded系统的字符显示方法和系统 Download PDF

Info

Publication number
CN104199628A
CN104199628A CN201410386727.8A CN201410386727A CN104199628A CN 104199628 A CN104199628 A CN 104199628A CN 201410386727 A CN201410386727 A CN 201410386727A CN 104199628 A CN104199628 A CN 104199628A
Authority
CN
China
Prior art keywords
character
bitmap
display
request
demonstration
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
Application number
CN201410386727.8A
Other languages
English (en)
Other versions
CN104199628B (zh
Inventor
周国麟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING PEITIAN TECHNOLOGY Co Ltd
Original Assignee
BEIJING PEITIAN TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING PEITIAN TECHNOLOGY Co Ltd filed Critical BEIJING PEITIAN TECHNOLOGY Co Ltd
Priority to CN201410386727.8A priority Critical patent/CN104199628B/zh
Publication of CN104199628A publication Critical patent/CN104199628A/zh
Priority to PCT/CN2015/086103 priority patent/WO2016019861A1/zh
Application granted granted Critical
Publication of CN104199628B publication Critical patent/CN104199628B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明公开了一种基于QT Embedded系统的字符显示方法和系统,所述字符显示方法包括:接收显示字符的请求;从预存储的字符位图映射表中查找与需要显示的字符对应的位图;按照预定显示格式显示所述位图。本发明通过建立字符位图映射表,在需要显示字符时查找显示预定显示格式的位图,从而避免了现有技术中需要显示字符时高频率地计算字符的尺寸、字符对齐的影响、字符所在位置布局的影响等情况所占用的系统资源问题,能够节省系统资源,避免影响其他功能,防止系统出现断续及反应慢等现象,改善了用户体验。

Description

基于QT Embedded系统的字符显示方法和系统
技术领域
本发明涉及显示技术领域,具体是涉及一种基于QT Embedded系统的字符显示方法,还涉及一种基于QT Embedded系统的字符显示系统。 
背景技术
现有技术中,Qt Embedded系统是图形化界面开发工具Qt的嵌入式版本系统,即嵌入式图形化界面开发工具系统,其通过Qt API(Application Program Interface,应用程序接口)与Linux I/O接口以及Frame buffer(帧缓冲,标准显示设备驱动接口)直接交互,拥有较高的运行效率,而且整体采用面向对象编程,拥有良好地体系架构和编程模式。 
具体而言,QT Embedded系统用于嵌入式硬件架构的常用软件环境,其具有跨平台的优势,相同的代码可以适用于windows、linux等不同操作系统下。 
众所周知的是,在数控系统、测试仪器等设备上经常需要用到快速变化的字符显示。譬如机床的轴的坐标信息需要快速在显示屏上显示,且这种坐标信息具有格式不变、字符变化、字符个数变化等特点。而QT Embedded系统使用QLabel(Qt的标签显示类)类进行字符显示,但在频繁刷新变化的时候,QLabel会占用巨大的嵌入式系统处理器的资源。具体来说,对于QLabel类而言,QT Embedded系统在每一次刷新字符显示的时候都需要计算字符的尺寸、字符对齐的影响、字符所在位置布局的影响等情况,而这些计算在高刷新频率下会凸显其资源占用耗费的问题,甚至影响其他操作和显示的功能,用户体验差。 
发明内容
本发明主要解决现有技术字符刷新显示时占用系统资源甚至影响其他功能的技术问题,提供一种基于QT Embedded系统的字符显示方法和系统,能够节省系统资源,避免影响其他功能并提高用户体验。 
为解决上述技术问题,本发明采用的一个技术方案是:提供一种基于QT Embedded系统的字符显示方法,所述字符显示方法包括:接收显示字符的请求;从预存储的字符位图映射表中查找与需要显示的字符对应的位图;按照预定显示格式显示所述位图以响应所述显示字符的请求。 
其中,所述按照预定显示格式显示所述位图的步骤,具体包括:调用显示驱动内存Frame buffer对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。 
其中,所述从预存储的字符位图映射表中查找与需要显示的字符对应的位图的步骤包括:将所述显示字符的请求发送至QT Embedded系统的副线程,以使所述副线程从预存储的字符位图映射表中查找与所述字符对应的位图;所述按照预定显示格式显示所述位图以响应所述显示字符的请求包括:所述副线程调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。 
其中,所述将所述显示字符的请求发送至QT Embedded系统的副线程包括:将所述显示字符的请求发送至字符显示任务队列;向所述副线程发送有任务的唤醒,以使所述副线程检查所述字符显示任务队列,并按照先入先出的顺序执行所述字符显示任务队列中的请求 
其中,所述从预存储的字符位图映射表中查找与需要显示的字符对应的位图的步骤之前,还包括:按照预定字符格式制作字符的位图;建立所述字符与所述位图的字符位图映射表并存储所述位图。 
其中,所述预定显示格式包括所述字符的大小、字体、颜色和对齐方式,所述字符包括以下类型的字符中的至少一种:阿拉伯数字、英文字母、汉字、符合和特殊符号。 
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种基于QT Embedded系统的字符显示系统,所述字符显示系统包括接收模块,查找模块和描绘显示模块:所述接收模块,用于接收显示字符的请求;所述查找模块,用于从预存储的字符位图映射表中查找与需要显示的字符对应的位图;所述描绘显示模块,用于按照预定显示格式显示所述位图以响应所述显示字符的请求。 
其中,所述描绘显示模块具体用于调用显示驱动内存帧缓冲Frame buffe对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。 
其中,所述字符显示系统还包括:发送模块,用于将所述显示字符的请求发送至QT Embedded系统的副线程,以使所述副线程从预存储的字符位图映射表中查找与所述字符对应的位图;所述副线程还用于调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。 
其中,所述发送模块包括:第一发送子模块,用于将所述显示字符的请求发送至字符显示任务队列;第二发送子模块,用于向所述副线程发送有任务的唤醒,以使所述副线程检查所述字符显示任务队列,并按照先入先出的顺序执行所述字符显示任务队列中的请求。 
本发明的有益效果是:区别于现有技术的情况,本发明通过建立字符位图映射表,在接收到显示字符的请求时查找需要显示的字符对应预定显示格式的位图,从而避免了现有技术中需要显示字符时高频率地计算字符的大小、字符对齐的影响、字符所在位置布局的影响等情况所占用的系统资源问题,能够节省系统资源,避免影响其他功能,防止系统出现断续及反应慢等现象,改善了用户体验。 
附图说明
图1是本发明字符显示方法一实施方式的流程图; 
图2是本发明字符显示方法第一具体实施方式的流程图; 
图3是本发明字符显示方法第二具体实施方式的流程图; 
图4是本发明字符显示系统第一实施方式的流程图; 
图5是本发明字符显示系统第二实施方式的流程图。 
具体实施方式
参阅图1,图1是本发明字符显示方法一实施方式的流程图,本实施方式字符显示方法可以用于面向对象编程的系统中,譬如为基于QT Embedded的系统,具体可以用于数控系统、测试仪器、秒表等显示字符读数的装置上,本实施方式字符显示方法包括但不限于以下步骤。 
步骤S100,接收显示字符的请求。 
在步骤S100中,QT Embedded系统可以根据用户的具体操作、待显示列表等等方式而被动或主动地产生显示字符的请求。 
步骤S101,从预存储的字符位图映射表中查找与字符对应的位图。 
在步骤S101之前,本发明可以预先进行设置:按照预定字符格式制作字符的位图,其中每个位图对应于一个字符或者多个字符;接着,建立字符与位图的字符位图映射表并存储位图。而在步骤S101中,接收到显示字符的请求而需要显示字符时,直接根据字符位图映射表查找与字符、需要显示的字符对应的位图。 
需要说明的是,本实施方式所述的预定字符格式可以包括字符的大小、字体、颜色、背景,譬如大小为“5号”,字体为“宋体”,颜色为“红色”等等。此外,本实施方式所述的字符具体可以包括以下类型的字符中的至少一种:阿拉伯数字、英文字母、汉字、符合和特殊符号,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。相应地,位图可以为阿拉伯数字、英文字母、汉字、特殊符号和其中的任意组合,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。 
举例而言,在数控系统中,对于轴坐标变化的“快速”字符,同一个显示位置的显示方式和字符的格式可以是固定的,即字符的大小、字体、对齐方式等是不变的,且显示的字符种类也是有限的,如数字0~9、 大于10的数字、以及小数等,均是0~9的字符的排列组合。因此在数控系统中,要显示的字符是有限的、比较固定的组合。不难看出,本实施方式把这些有限的显示格式预先设置固定,每次刷新显示字符时即可以从至少一个显示格式表中自动/智能/默认选择合适的进行排列组合。同理,对于其他字符,本实施方式作类似处理即可,在本技术领域人员容易结合理解的范围内,不作赘述。 
步骤S102,按照预定显示格式显示位图以响应显示字符的请求。 
举例来说,预定显示格式可以包括:位图(字符)的对齐方式、缩放比例等内容。 
在步骤S102中,本实施方式将查找到的位图按照预定显示格式进行显示,通过“抓取”“描画”的直接方式,将位图赋值描绘到显示屏上,而无需再重新计算字体的大小、对齐和布局等,减少计算过程对系统性能和资源的占用和影响。 
值得注意的是,本实施方式可以采用一般的位图描画函数进行描画显示,譬如QT Embedded的位图描画函数等,在此不作限定。 
本实施方式使用位图的方式,具体采用位图列表存储映射关系的方式,将有限的字符以预定的字体、大小、背景显示格式等设置存储,而在需要更新显示字符、或刷新画面等时,将字符的字符串拆开成单独独立的、已经存储在位图列表里的图片格式的字符,就可以在显示屏合适的位置摆列描画出来。譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的字符方式。相应地,所描画的位图可以为阿拉伯数字、英文字母、汉字、符号和特殊符号,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。 
本发明通过建立字符位图映射表,在需要显示字符时查找并按照预定显示格式显示与需要显示的字符对应的位图,从而避免了现有技术中需要显示字符时高频率地计算字符的大小、字符对齐的影响、字符所在位置布局的影响等情况所占用的系统资源问题,能够节省系统资源,避免影响其他功能,防止系统出现断续及反应慢等现象,有效地提高了用 户体验。 
需要指出的是,上述实施方式适用于大部分的面向对象编程的系统中,然而对于Qt Embedded系统来说,如果显示时采用QT Embedded的位图描画函数,在每次描画显示时,仍需要计算当前位图和其所在布局的位置影响,这种计算往往会占用大量的系统资源。此外,QTEmbedded系统对于描画显示的操作限定在系统的主线程中,即描画位图或者显示字符的操作必须放在和系统其它主要逻辑工作的同一个线程里,如果描画刷新的操作占用过多系统资源,会明显的影响到其它的逻辑操作,比如按键的响应速度会变慢等。 
针对上述情况以解决上述技术问题,请参阅图2,图2是本发明字符显示方法第一具体实施方式的流程图,本实施方式字符显示方法包括但不限于以下几个步骤。 
步骤S200,接收显示字符的请求。 
步骤S201,从预存储的字符位图映射表中查找与需要显示的字符对应的位图。 
其中,步骤S201请参阅前面实施方式步骤S101的相关描述,在本技术领域人员理解的范围内,不作赘述。 
步骤S202,调用显示驱动内存Frame buffer对显示屏的像素点进行操作,以将位图填充在对应的Frame buffer位置上,进而以预定显示格式在显示屏上显示位图。 
在步骤S202中,本实施方式Frame buffer将与需要显示的字符对应的位图按照预定显示格式进行显示,通过“抓取”“描画”的直接方式,将位图赋值描绘到显示屏上,而无需再重新计算字体的大小、对齐和布局等,减少计算过程对系统性能和资源的占用和影响。 
本实施方式在需要更新显示字符、或刷新画面等时,通过Frame buffer操作将字符的字符串拆开成单独独立的、已经存储在位图列表里的图片格式的字符,就可以在显示屏合适的位置摆列描画出来。在本实施方式中,所描画的位图可以为以下类型的字符中的至少一种:阿拉伯数字、英文字母、汉字、符号和特殊符号,譬如“1、2、3、a、b、c、d、 正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。 
需要说明的是,本实施方式通过使用Frame buffer操作,可以将描画位图或者显示字符等的操作放在和主线程并列的另一个线程(一般为副线程)里。不难理解的是,在QT Embedded系统中,操作Frame buffer并不属于QT系统本身的功能,因此无需限制于主线程里,进一步而言,当操作Frame buffer放在另一个副线程之后,即使Frame buffer操作占用再多的资源,也不会干扰影响主线程里面的逻辑计算、响应回馈等,因此在很大程度上提高了系统的整体性能。 
需要指出的是,在图2所述的实施方式中,由于采用了另一个线程(副线程)执行Frame buffer操作描画显示位图,因此需要保证系统主线程的显示字符的请求与副线程的Frame buffer操作同步,请参阅图3,图3是本发明字符显示方法第二具体实施方式的流程图,本实施方式字符显示方法包括但不限于以下几个步骤。 
步骤S300,接收显示字符的请求。 
步骤S301,将显示字符的请求发送至QT Embedded系统的副线程,以使副线程从预存储的字符位图映射表中查找与需要显示的字符对应的位图。 
在步骤S301中,举例来说,S300中系统检测到需要显示字符时,可以首先产生并记录相应的字符显示请求。譬如当前字符显示为“209.23”,而下一时刻需要显示的字符为“210.55”,此时,系统产生并记录需要显示“210.55”的请求。 
接着,在步骤S301中,在记录显示字符的请求后,向QT Embedded系统中的副线程发送有任务的唤醒。 
在记录需要显示“210.55”的请求后,同时向副线程发送有所述“显示210.55”的唤醒,以备副线程进行跟进处理。 
其中,副线程在被唤醒后,检查显示字符的请求。 
当副线程的资源可提供工作服务时,受到唤醒并检查已记录的显示“210.55”的请求。 
需要说明的是,步骤S301中如果请求为多个,则将所述显示字符 的请求发送至字符显示任务队列;接着,向所述副线程发送有任务的唤醒,以使所述副线程检查所述字符显示任务队列,并按照先入先出的顺序执行所述字符显示任务队列中的请求。 
不难看出,通过这种方式,可以记录保存所有显示字符的请求,避免因为双线程繁忙而导致无法响应显示字符的请求甚至漏掉其中一个或多个的显示字符的请求,有效地避免繁忙时无法响应或者漏掉显示字符的请求。 
本实施方式可以预先进行设置:按照预定字符格式制作字符的位图;接着,建立字符与位图的字符位图映射表并存储位图。而在需要显示字符时,直接根据字符位图映射表查找与字符对应的位图。 
需要说明的是,本实施方式所述的预定字符格式可以包括字符的大小、字体、颜色、背景,譬如大小为“5号”,字体为“宋体”,颜色为“红色”等等。此外,本实施方式所述的字符具体可以包括阿拉伯数字、英文字母、汉字、特殊符号和其中的任意组合,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。相应地,位图可以为阿拉伯数字、英文字母、汉字、特殊符号和其中的任意组合,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。 
举例而言,在数控系统中,对于轴坐标变化的“快速”字符,同一个显示位置的显示方式可以是固定的,即字符的大小、字体、对齐方式等是不变的,且显示的字符种类也是有限的,如数字0~9、大于10的数字、以及小数等,均是0~9的字符的排列组合。因此在数控系统中,要显示的字符是有限的、比较固定的组合。不难看出,本实施方式把这些有限的显示格式预先设置固定,每次刷新显示字符时即可以从至少一个显示格式表中自动/智能/默认选择合适的进行排列组合。同理,对于其他字符,本实施方式作类似处理即可,在本技术领域人员容易结合理解的范围内,不作赘述。 
步骤S302,副线程调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将位图填充在对应的Frame buffer位置上,进而 以预定显示格式在显示屏上显示位图。 
在步骤S302中,如前所述,副线程在被唤醒后,检查该字符显示任务队列,并按照先入先出的顺序处理多个显示字符的请求,直到依序将字符显示任务队列中的所有字符的位图都以预定显示格式在显示屏上描画显示。 
综上所述,本发明实施方式的字符显示方法将字符映射为固定的位图,使得每次刷新显示时无需频繁地计算字体、大小、对齐等因素,同时,本发明通过Frame buffer操作避开QT Embedded对位图描画时对齐、布局等的计算,此外,本发明可以通过字符显示任务队列和主副线程的配合,提高响应效率并避免显示字符的请求的遗漏。结合上述多个实施方式,本发明可以有效地提高基于QT Embedded环境下的快速的字符显示的效率,同时,本发明能够有效地节省系统资源,避免影响其他功能,防止系统出现断续及反应慢等现象,改善了用户体验。 
请参阅图4,图4是本发明字符显示系统第一实施方式的流程图,本实施方式提供一种可以用于面向对象编程,譬如基于QT Embedded的字符显示系统,本实施方式的字符显示系统包括但不限于接收模块40,查找模块41和描绘显示模块42。 
接收模块40用于接收显示字符的请求。其中QT Embedded系统可以根据用户的具体操作、待显示列表等等方式而被动或主动地产生显示字符的请求。 
在本实施方式中,查找模块41可以用于根据接收模块40接收的显示字符的请求,从预存储的字符位图映射表中查找与需要显示的字符对应的位图,以响应显示字符的请求。 
其中,本实施方式可以预先进行设置:按照预定显示格式制作字符的位图;接着,建立字符与位图的字符位图映射表并存储位图。通过这种方式,查找模块41,在需要显示字符时,直接根据字符位图映射表查找与需要显示的字符对应的位图。 
需要说明的是,本实施方式所述的预定显示格式可以包括字符的大小、字体、颜色、背景,譬如大小为“5号”,字体为“宋体”,颜色为 “红色”等等。此外,本实施方式所述的字符具体可以包括阿拉伯数字、英文字母、汉字、特殊符号和其中的任意组合,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。相应地,位图可以为阿拉伯数字、英文字母、汉字、特殊符号和其中的任意组合,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。 
举例而言,在数控系统中,对于轴坐标变化的“快速”字符,同一个显示位置的显示方式可以是固定的,即字符的大小、字体、对齐方式等是不变的,且显示的字符种类也是有限的,如数字0~9、大于10的数字、以及小数等,均是0~9的字符的排列组合。因此在数控系统中,要显示的字符是有限的、比较固定的组合。不难看出,本实施方式把这些有限的显示格式预先设置固定,每次刷新显示字符时即可以从至少一个显示格式表中自动/智能/默认选择合适的进行排列组合。同理,对于其他字符,本实施方式作类似处理即可,在本技术领域人员容易结合理解的范围内,不作赘述。 
描绘显示模块42可以用于按照预定显示格式显示位图以响应显示字符的请求。本实施方式描绘显示模块42根据查找到的位图的预定显示格式进行显示,譬如通过“抓取”“描画”的直接方式,将位图赋值描绘到显示屏上,而无需再重新计算字体的大小、对齐和布局等,减少计算过程对系统性能和资源的占用和影响。 
本实施方式使用位图的方式,具体采用位图列表存储映射关系的方式,将有限的字符以预定的字体、大小、背景显示格式等设置存储,而在需要更新显示字符、或刷新画面等时,将字符的字符串拆开成单独独立的、已经存储在位图列表里的图片格式的字符,就可以在显示屏合适的位置摆列描画出来。譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的字符方式。相应地,所描画的位图可以为阿拉伯数字、英文字母、汉字、特殊符号和其中的任意组合,譬如“1、2、3、a、b、c、d、正常、异常、δ、△、a1、1正常、δ2a”等类似的单个或组合的方式。 
本发明通过建立字符位图映射表,在需要显示字符时查找显示预定显示格式的位图,从而避免了现有技术中需要显示字符时高频率地计算字符的大小、字符对齐的影响、字符所在位置布局的影响等情况所占用的系统资源问题,能够节省系统资源,避免影响其他功能,防止系统出现断续及反应慢等现象,有效地提高了用户体验。 
请参阅图5,图5是本发明字符显示系统第二实施方式的流程图,本实施方式字符显示系统包括但不限于接收模块40、发送模块50、查找模块41、描绘显示模块42和显示屏43等。 
需要说明的是,本实施方式字符显示系统可以为嵌入式图形化界面开发工具QT Embedded系统。 
接收模块40用于接收显示字符的请求。其中QT Embedded系统可以根据用户的具体操作、待显示列表等等方式而被动或主动地产生显示字符的请求。 
在本实施方式中,发送模块50可以用于将所述显示字符的请求发送至QT Embedded系统的副线程,以使所述副线程从预存储的字符位图映射表中查找与所述字符对应的位图;接着,副线程还用于调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将位图填充在对应的Frame buffer位置上,进而以预定显示格式在显示屏43上显示所述位图。 
优选的,字符显示任务队列可以为多个并按时间先后顺序记录到字符显示任务队列中,发送模块50具体可以包括:第一发送子模块,用于将显示字符的请求发送至字符显示任务队列;第二发送子模块,用于向副线程发送有任务的唤醒,以使副线程检查所述字符显示任务队列,并按照先入先出的顺序执行所述字符显示任务队列中的请求。本实施方式通过主、副线程以及字符显示任务队列的方式,可以有效地保证系统主线程的显示字符的请求与副线程的Frame buffer操作同步。 
描绘显示模块42具体用于调用显示驱动内存帧缓冲Frame buffe对显示屏43的像素点进行操作,以将位图填充在对应的Frame buffer位置上,进而以预定显示格式在显示屏43上显示位图。 
不难理解的是,本实施方式通过使用Frame buffer操作,可以将描画位图或者显示字符等的操作放在和主线程并列的另一个线程(一般为副线程)里进行执行。不难理解的是,在QT Embedded系统中,操作Frame buffer并不属于QT系统本身的功能,因此无需限制于主线程里,进一步而言,当操作Frame buffer放在另一个副线程之后,即使Frame buffer操作占用再多的资源,也不会干扰影响主线程里面的逻辑计算、响应回馈等,因此在很大程度上提高了系统的整体性能。 
此外,本实施方式字符显示系统的具体实现方式可以参阅前面实施方式字符显示方法的相关描述,在本技术领域人员容易结合理解的范围内,不再赘述。 
本发明实施方式的字符显示系统将字符映射为固定的位图,使得每次刷新显示时无需频繁地计算字体、大小、对齐等,同时,本发明通过Frame buffer操作避开QT Embedded对位图描画时对齐、布局等的计算,此外,本发明可以通过字符显示任务队列和主副线程的配合,提高响应效率并避免显示字符的请求的遗漏。结合上述多个实施方式,本发明可以有效地提高基于QT Embedded环境下的快速字符显示的效率,同时,本发明能够有效地节省系统资源,避免影响其他功能,防止系统出现断续及反应慢等现象,改善了用户体验。 
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。 

Claims (10)

1.一种基于QT Embedded系统的字符显示方法,其特征在于,所述字符显示方法包括:
接收显示字符的请求;
从预存储的字符位图映射表中查找与需要显示的字符对应的位图;
按照预定显示格式显示所述位图以响应所述显示字符的请求。
2.根据权利要求1所述的字符显示方法,其特征在于,所述按照预定显示格式显示所述位图的步骤,具体包括:
调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。
3.根据权利要求2所述的字符显示方法,其特征在于,所述从预存储的字符位图映射表中查找与需要显示的字符对应的位图的步骤包括:
将所述显示字符的请求发送至QT Embedded系统的副线程,以使所述副线程从预存储的字符位图映射表中查找与所述字符对应的位图;
所述按照预定显示格式显示所述位图以响应所述显示字符的请求包括:
所述副线程调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。
4.根据权利要求3所述的字符显示方法,其特征在于,所述将所述显示字符的请求发送至QT Embedded系统的副线程包括:
将所述显示字符的请求发送至字符显示任务队列;
向所述副线程发送有任务的唤醒,以使所述副线程检查所述字符显示任务队列,并按照先入先出的顺序执行所述字符显示任务队列中的请求。
5.根据权利要求1-4任一项所述的字符显示方法,其特征在于,所述从预存储的字符位图映射表中查找与需要显示的字符对应的位图的步骤之前,还包括:
按照预定字符格式制作字符的位图;
建立所述字符与所述位图的字符位图映射表并存储所述位图。
6.根据权利要求5所述的字符显示方法,其特征在于,所述预定字符格式包括所述字符的大小、字体、颜色,所述字符包括以下类型的字符中的至少一种:阿拉伯数字、英文字母、汉字、符号和特殊符号。
7.一种基于QT Embedded系统的字符显示系统,其特征在于,所述字符显示系统包括:
接收模块,用于接收显示字符的请求;
查找模块,用于从预存储的字符位图映射表中查找与需要显示的字符对应的位图;
描绘显示模块,用于按照预定显示格式显示所述位图以响应所述显示字符的请求。
8.根据权利要求7所述的字符显示系统,其特征在于,所述描绘显示模块具体用于调用显示驱动内存帧缓冲Frame buffe对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。
9.根据权利要求8所述的字符显示系统,其特征在于,所述字符显示系统还包括:
发送模块,用于将所述显示字符的请求发送至QT Embedded系统的副线程,以使所述副线程从预存储的字符位图映射表中查找与所述字符对应的位图;
所述副线程还用于调用显示驱动内存帧缓冲Frame buffer对显示屏的像素点进行操作,以将所述位图填充在对应的Frame buffer位置上,进而以所述预定显示格式在所述显示屏上显示所述位图。
10.根据权利要求9所述的字符显示系统,其特征在于,
所述发送模块包括:
第一发送子模块,用于将所述显示字符的请求发送至字符显示任务队列;
第二发送子模块,用于向所述副线程发送有任务的唤醒,以使所述副线程检查所述字符显示任务队列,并按照先入先出的顺序执行所述字符显示任务队列中的请求。
CN201410386727.8A 2014-08-07 2014-08-07 基于QT Embedded系统的字符显示方法和系统 Active CN104199628B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410386727.8A CN104199628B (zh) 2014-08-07 2014-08-07 基于QT Embedded系统的字符显示方法和系统
PCT/CN2015/086103 WO2016019861A1 (zh) 2014-08-07 2015-08-05 基于QT Embedded系统的字符显示方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410386727.8A CN104199628B (zh) 2014-08-07 2014-08-07 基于QT Embedded系统的字符显示方法和系统

Publications (2)

Publication Number Publication Date
CN104199628A true CN104199628A (zh) 2014-12-10
CN104199628B CN104199628B (zh) 2019-08-27

Family

ID=52084926

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410386727.8A Active CN104199628B (zh) 2014-08-07 2014-08-07 基于QT Embedded系统的字符显示方法和系统

Country Status (2)

Country Link
CN (1) CN104199628B (zh)
WO (1) WO2016019861A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016019861A1 (zh) * 2014-08-07 2016-02-11 北京配天技术有限公司 基于QT Embedded系统的字符显示方法和系统
CN105957136A (zh) * 2016-04-19 2016-09-21 广州视源电子科技股份有限公司 艺术字效果绘制方法及其系统
CN108196848A (zh) * 2018-01-08 2018-06-22 武汉斗鱼网络科技有限公司 界面嵌入显示方法、装置、用户终端及可读存储介质
CN109240628A (zh) * 2018-08-05 2019-01-18 深圳市技达信息技术有限公司 计算字符、字符串等的显示宽高的方法、装置及计算机可读存储介质
CN112198786A (zh) * 2020-04-27 2021-01-08 昇显微电子(苏州)有限公司 一种数字时钟的实现方法和装置
CN113183759A (zh) * 2021-07-01 2021-07-30 智道网联科技(北京)有限公司 一种仪表盘字符的显示方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5801720A (en) * 1996-02-20 1998-09-01 National Semiconductor Corporation Data transfer from a graphics subsystem to system memory
CN101271389A (zh) * 2008-04-08 2008-09-24 江苏科技大学 嵌入式藏文智能信息处理方法
CN101833936A (zh) * 2009-12-22 2010-09-15 康佳集团股份有限公司 一种移动终端及其界面的显示方法和装置
CN102662612A (zh) * 2012-02-29 2012-09-12 浪潮(北京)电子信息产业有限公司 使用Qt库显示MRC格式的图片文件的方法和系统
CN103678261A (zh) * 2013-12-26 2014-03-26 深圳市开立科技有限公司 一种快速显示ttf字体的方法、装置及设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104199628B (zh) * 2014-08-07 2019-08-27 北京配天技术有限公司 基于QT Embedded系统的字符显示方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5801720A (en) * 1996-02-20 1998-09-01 National Semiconductor Corporation Data transfer from a graphics subsystem to system memory
CN101271389A (zh) * 2008-04-08 2008-09-24 江苏科技大学 嵌入式藏文智能信息处理方法
CN101833936A (zh) * 2009-12-22 2010-09-15 康佳集团股份有限公司 一种移动终端及其界面的显示方法和装置
CN102662612A (zh) * 2012-02-29 2012-09-12 浪潮(北京)电子信息产业有限公司 使用Qt库显示MRC格式的图片文件的方法和系统
CN103678261A (zh) * 2013-12-26 2014-03-26 深圳市开立科技有限公司 一种快速显示ttf字体的方法、装置及设备

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016019861A1 (zh) * 2014-08-07 2016-02-11 北京配天技术有限公司 基于QT Embedded系统的字符显示方法和系统
CN105957136A (zh) * 2016-04-19 2016-09-21 广州视源电子科技股份有限公司 艺术字效果绘制方法及其系统
CN105957136B (zh) * 2016-04-19 2019-05-07 广州视源电子科技股份有限公司 艺术字效果绘制方法及其系统
CN108196848A (zh) * 2018-01-08 2018-06-22 武汉斗鱼网络科技有限公司 界面嵌入显示方法、装置、用户终端及可读存储介质
CN108196848B (zh) * 2018-01-08 2021-04-27 武汉斗鱼网络科技有限公司 界面嵌入显示方法、装置、用户终端及可读存储介质
CN109240628A (zh) * 2018-08-05 2019-01-18 深圳市技达信息技术有限公司 计算字符、字符串等的显示宽高的方法、装置及计算机可读存储介质
CN112198786A (zh) * 2020-04-27 2021-01-08 昇显微电子(苏州)有限公司 一种数字时钟的实现方法和装置
CN113183759A (zh) * 2021-07-01 2021-07-30 智道网联科技(北京)有限公司 一种仪表盘字符的显示方法及装置

Also Published As

Publication number Publication date
WO2016019861A1 (zh) 2016-02-11
CN104199628B (zh) 2019-08-27

Similar Documents

Publication Publication Date Title
CN104199628A (zh) 基于QT Embedded系统的字符显示方法和系统
US9679344B2 (en) Server-based fast remote display on client devices
US20220060537A1 (en) Remote and local predictions
CN103544059B (zh) 一种应用切换时等待缓冲效果的实现方法及系统
US20090254866A1 (en) Method and system for displaying a multitude of objects on a display
CN110427182A (zh) 一种模板式建设app方法以及装置
CN106559579A (zh) 移动终端和cpu/gpu调度参数更新方法
CN104735631A (zh) 同步操作短信数据的方法及系统
CN102637125A (zh) 宫格界面的显示方法及移动终端
CN107340886B (zh) 一种软键盘状态确定方法、装置、介质及终端
CN103237135A (zh) 一种手机十字滑屏操作方法
CN111414085B (zh) 一种麒麟移动操作系统的输入法运行方法、系统及介质
CN102799337A (zh) 触控手机解锁方法和装置
CN113722037B (zh) 一种用户界面的刷新方法、装置、电子设备及存储介质
CN106933931A (zh) 一种网页数据的显示方法及装置
CN102855128A (zh) 基于安卓内核的界面系统的实现方法
CN105550245A (zh) 基于Android平台网络图片加载及缓存的优化系统及方法
US10437920B2 (en) Aided translation method and device thereof
CN102096574B (zh) 一种多窗口拼接显示方法
CN113297313B (zh) 表格数据展示方法、装置、电子设备及存储介质
US11544140B2 (en) Method and apparatus for generating error reporting content of deep learning framework
CN104468505A (zh) 一种安全审计日志播放方法及装置
CN101419594A (zh) Gis地图图元管理装置
CN101833448A (zh) 一种基于buiw平台的信息条显示的方法及装置
CN110309454B (zh) 一种界面显示方法、装置、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant