CN101540054B - 字符渲染系统 - Google Patents
字符渲染系统 Download PDFInfo
- Publication number
- CN101540054B CN101540054B CN2008101472771A CN200810147277A CN101540054B CN 101540054 B CN101540054 B CN 101540054B CN 2008101472771 A CN2008101472771 A CN 2008101472771A CN 200810147277 A CN200810147277 A CN 200810147277A CN 101540054 B CN101540054 B CN 101540054B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- character
- bezier
- edge pixel
- pixel data
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明提供一种字符渲染系统,包含:存储器,用于储存字符的多个贝塞尔曲线关键点与边缘像素数据;快取单元,耦接至存储器;贝塞尔曲线分解单元,耦接至快取单元,用于利用基于对应字符的贝塞尔曲线关键点分解多个贝塞尔曲线来产生对应字符的多个片段;抗混淆单元,耦接于贝塞尔曲线分解单元与存储器之间,用于通过对对应字符的片段执行抗混淆操作以产生字符的边缘像素数据;以及扫描转换单元,耦接至存储器,用于通过对字符的边缘像素数据执行扫描转换操作以产生字符的影像数据。本发明提供一种字符渲染系统,可以根据不同功率显示不同质量的字符。
Description
技术领域
本发明有关于一种字符渲染(character rendering)系统,更具体地,是关于一种低功率/功率感知(power-aware),高速以及高质量/质量自适应(quality-adaptive)的字符渲染系统。
背景技术
近年来电子装置发展迅速,手持式信息装置(,informationappliance,IA),如移动电话,机顶盒(set-top box),个人数字助理,MP3媒体播放器以及MP4媒体播放器等,都非常流行。几乎每一信息装置都有显示屏幕,用来显示响应信息给使用者操作。通常,由于小尺寸的信息装置具有较小功率与较小的储存器容量,在小尺寸的信息装置显示屏幕上的字符比在台式显示屏幕上的要小。另外,为了改进显示质量,轮廓字体(outline fonts)的使用越来越流行,因为它比位图字体(bitmap fonts)有更高的缩放灵活性。但是,相较于位图字体,轮廓字体需要更复杂(supplicated)的渲染技术与大量的计算。因此,具有低功率/功率感知,低储存器容量,高速,以及高质量/质量自适应的系统特征的轮廓字体的字符渲染系统不断被开发出来。
发明内容
为了解决轮廓字体渲染的技术问题,本发明提供一种字符渲染系统,可以根据不同功率显示不同质量的字符。
本发明提供一种字符渲染系统,用于渲染字符,包含:存储器,用于储存字符的多个贝塞尔曲线关键点与边缘像素数据;快取单元,耦接至存储器,用于储存部分贝塞尔曲线关键点;贝塞尔曲线分解单元,耦接至快取单元,用于通过基于对应于字符的贝塞尔曲线关键点分解多个贝塞尔曲线来产生对应于字符的多个片段,其中贝塞尔曲线分解单元从快取单元获取对应于字符的贝塞尔曲线关键点;抗混淆单 元,耦接于贝塞尔曲线分解单元与存储器之间,用于通过对对应于字符的片段执行抗混淆操作以产生字符的边缘像素数据;以及扫描转换单元,耦接至存储器,用于通过对字符的边缘像素数据执行扫描转换操作以产生字符的影像数据。
本发明另提供一种字符渲染系统,用于渲染字符,包含:存储器,用于储存字符的多个贝塞尔曲线关键点与边缘像素数据;贝塞尔曲线分解单元,耦接至存储器,用于通过基于对应于字符的贝塞尔曲线关键点分解多个贝塞尔曲线来产生对应字符的多个片段;抗混淆单元,耦接至贝塞尔曲线分解单元,用于通过对对应于字符的上述多个片段的数据执行抗混淆操作以产生字符的边缘像素数据;编码器,耦接于抗混淆单元与存储器之间,用于通过编码字符的边缘像素数据产生字符的已编码边缘像素数据;译码器,耦接至存储器,用于通过译码字符的已编码边缘像素数据以还原字符的边缘像素数据;以及扫描转换单元,耦接至译码器,用于通过对字符的边缘像素数据执行扫描转换操作以产生字符的影像数据。
本发明另提供一种字符渲染系统,用于渲染字符,包含:存储器,用于储存字符的多个贝塞尔曲线关键点与边缘像素数据;贝塞尔曲线平行分解模块,耦接至存储器,用于通过基于对应于字符的贝塞尔曲线关键点分解多个贝塞尔曲线以产生对应于字符的多个片段,贝塞尔曲线平行分解模块,包含:多个贝塞尔曲线分解单元,每一贝塞尔曲线分解单元基于贝塞尔曲线关键点分解对应于字符的贝塞尔曲线其中之一,以产生对应字符的部分片段,其中贝塞尔曲线平行分解模块根据字符的贝塞尔曲线分配接收的贝塞尔曲线关键点给贝塞尔曲线分解单元;传送控制器,包含多个输入端口与多个输出端口,输入端口分别耦接至贝塞尔曲线分解单元,用于接收对应字符的片段的数据,其中传送控制器分配接收的对应字符的片段的数据给输出端口;平行抗混淆模块,耦接于传送控制器与存储器之间,通过对对应于字符的片段的数据执行平行抗混淆操作,以产生字符的边缘像素数据,其中对应于字符的片段的数据是从传送控制器的输出端口接收,平行抗混淆模块包含:多个抗混淆单元,分别耦接至传送控制器的输出端口,每一抗混淆单元通过对从传送控制器的相应输出端口接收的对应字符的 片段的数据的部分执行抗混淆操作,以产生部分字符的边缘像素数据;以及扫描转换单元,耦接至存储器,用于通过对对应于字符的边缘像素数据执行扫描转换操作以产生字符的影像数据。
本发明另提供一种字符渲染系统,用于渲染字符,包含:存储器,用于储存字符的多个贝塞尔关键点与边缘像素数据;贝塞尔曲线分解单元,耦接至存储器,用于基于贝塞尔曲线关键点分解对应于字符的多个贝塞尔曲线以产生对应字符的多个片段;边缘像素计算模块,耦接于贝塞尔曲线分解单元与存储器之间,用于基于功率指示信号由对应于字符的片段数据产生字符的边缘像素数据,边缘像素计算模块包含:二值处理单元,用于当功率指示信号指示低功率模式时,对对应于字符的片段的数据执行二值边缘判断操作以产生字符的边缘像素数据;以及灰度处理单元,用于当功率指示信号指示高功率模式时,对对应于字符的片段的数据执行灰度抗混淆操作以产生字符的边缘像素数据;以及扫描转换单元,耦接至存储器,用于通过对字符的边缘像素数据执行扫描转换操作以产生字符的影像数据。
本发明另提供一种字符渲染系统,用于渲染字符,包含:存储器,用于储存字符的多个贝塞尔曲线关键点与边缘像素数据;贝塞尔曲线分解单元,耦接至存储器,用于通过基于对对应于字符的贝塞尔曲线关键点分解多个贝塞尔曲线以产生对应字符的多个片段;边缘像素计算模块,耦接于上述贝塞尔曲线分解单元与存储器之间,用于根据像素分割数组维数对对应于字符的片段的数据执行抗混淆操作产生字符的边缘像素数据,边缘像素计算模块包含:数组维数调整器,用于根据功率指示信号调整像素分割数组维数,其中边缘像素计算模块将字符的每一边缘像素划分为多个子像素并根据像素分割数组维数产生字符的边缘像素数据;以及扫描转换单元,耦接至存储器,用于通过对字符的边缘像素数据执行扫描转换操作以产生字符的影像数据。
利用本发明能够相较现有技术的字符渲染系统以更高速度及更低的功耗来渲染高质量的字符;另外,字符渲染系统能在高功率模式下显示高质量字符,在低功率模式下显示低质量字符。
附图说明
图1显示根据本发明的第一实施方式的字符渲染系统的示意图。
图2a与图2b显示根据本发明的两个适应性贝塞尔曲线分解流程。
图3a与图3b显示根据本发明的两个存储器库分割(bank splitting)的示意图。
图4显示根据本发明的第二实施方式的字符渲染系统的示意图。
图5显示根据本发明的第三实施方式的字符渲染系统的示意图。
图6显示根据本发明的第四实施方式的字符渲染系统的示意图。
图7显示了根据本发明的数组维数调整器545在低功率与高功率模式下对具有黑点区域的字符“A”的操作的示意图。
具体实施方式
在说明书及权利要求书当中使用了某些词汇来称呼特定的元件。本领域的技术人员应可理解,硬件制造商可能会用不同的名词来称呼同一个元件。本说明书及权利要求书并不以名称的差异来作为区分元件的方式,而是以元件在功能上的差异来作为区分的准则。在通篇说明书及权利要求书当中所提及的“包含”是开放式的用语,故应解释成“包含但不限定于”。此外,“耦接”一词在此是包含任何直接及间接的电气连接手段。因此,若文中描述第一装置耦接于第二装置,则代表第一装置可直接电气连接于第二装置,或通过其它装置或连接手段间接地电气连接到第二装置。
下面将参考附图详细描述本发明的较佳实施方式。需要注意的是,本发明并不仅限于此。
图1显示根据本发明的第一实施方式的字符渲染系统210的示意图。字符渲染系统210包含存储器220,快取单元250,贝塞尔曲线分解(Bezier curve decomposition)单元230,抗混淆单元(anti-aliasing)240,缓冲器260,以及扫描转换单元280。字符渲染系统210可耦接至处理器201以接收如字体尺寸等字符显示数据。另外,字符渲染系统210可接收功率指示信号(power indication signal),功率指示信号用以控制系统操作的控制参数。字符渲染系统210也可耦接至影像存储器290,以提供要显示在屏幕295上的字符的影像数据,其中影像数据是通过影像存储器290传送。
存储器220储存多个贝塞尔曲线关键点221与边缘像素数据(edgepixel data)223。贝塞尔曲线关键点221用来产生对应于字符轮廓的贝塞尔曲线,边缘像素数据223用来执行扫描转换流程。存储器220可为动态随机存取存储器(DRAM)。贝塞尔曲线关键点221包含贝塞尔曲线起点(start points),终点(end points)及贝塞尔曲线控制点(controlpoints)。
快取单元250耦接于存储器220与贝塞尔曲线分解单元230之间,储存从存储器220获取的部分贝塞尔曲线关键点。快取单元250可为静态随机存取存储器(SRAM)。快取单元250中储存的部分贝塞尔曲线关键点可对应于多个常用字符,因而常用字符的字符渲染过程可被加速。另外,因为快取单元250仅储存贝塞尔曲线的关键点,要比位图格式的字符小,所以快取单元250中储存的数据量比以位图格式储存字符的位图快取要小的多。
贝塞尔曲线分解单元230根据贝塞尔曲线关键点分解对应字符的多个贝塞尔曲线,以产生对应字符的多个片段(segment)。贝塞尔曲线分解单元230分解的片段的数目可基于功率指示信号调整。也就是说,贝塞尔曲线分解单元230根据功率指示信号对贝塞尔曲线执行适应性分解过程,以产生相对应的质量等级的片段。图2a与图2b显示根据本发明的两个适应性贝塞尔曲线分解流程。图2a显示对贝塞尔曲线20执行适应性贝塞尔曲线分解流程,以于低功率及低质量模式下产生两个片段21与22。图2b显示对贝塞尔曲线25执行适应性贝塞尔曲线分解流程,以于高功率及高质量模式下产生四个片段26-29。贝塞尔曲线20大致等同于贝塞尔曲线25。可以明显看出,同样的贝塞尔曲线在高功率及高质量模式下分解得到的片段比在低功率低质量模式下分解得到的片段多。
在较佳实施方式中,从贝塞尔曲线分解的片段的数目是根据功率指示信号来调整。当功率指示信号指示低功率模式时,从贝塞尔曲线分解的片段被调整为小数目以进行节省功率的渲染操作;而当功率指示信号指示高功率模式时,从贝塞尔曲线分解的片段被调整为大数目以进行高质量的渲染操作。当要显示的字符为常用字符之一时,贝塞尔曲线分解单元230所用的贝塞尔曲线关键点从快取单元250获取。 相反的,当要显示的字符不在常用字符集合(collection)中时,贝塞尔曲线分解单元230所用的贝塞尔曲线关键点从存储器21获取。需要注意的是,快取单元250中储存的关键点可更新(update)为新的常用字符(newly frequently used),而并不固定为既定的字符集(character set)。
抗混淆单元240,耦接至贝塞尔曲线分解单元230,对相应字符的片段执行抗混淆操作以产生字符的对应边缘像素数据。扫描转换单元280,耦接至存储器220与缓冲器260,对字符的边缘像素数据执行扫描转换操作以产生要显示在屏幕295上的字符的影像数据。缓冲器260,耦接于抗混淆单元240与扫描转换单元280之间,其可为SRAM。缓冲器260为将字符的边缘像素数据从抗混淆单元240传送至扫描转换单元280提供了辅助手段(auxiliary means)。也就是说,字符的边缘像素数据通过存储器220或缓冲器260从抗混淆单元240传送至扫描转换单元280。
当缓冲器260能够容纳(accommodate)字符的边缘像素数据时,字符的边缘像素数据通过缓冲器260从抗混淆单元240传送至扫描转换单元280,以通过减少对存储器220的数据读取来加速字符渲染流程并节省功率消耗。更进一步,字符的边缘像素数据可包含多个边缘像素数据存储器库(bank)。
请参考图3a与图3b,其显示根据本发明的两个存储器库分割(bank splitting)的示意图。图3a显示字符“A”的存储器库分割流程,其是用以产生五个边缘像素数据存储器库并顺序发送(sequentiallyforward)至缓冲器260。具有黑点区域(dotted region)的字符“A”被划分为五个存储器库(bank)31-35,并且抗混淆单元240对五个存储器库31-35中每一个执行抗混淆操作以产生对应的边缘像素数据存储器库并发送至缓冲器260,其中每一边缘像素数据存储器库对应至各个存储器库的轮廓。也就是说,所有五个边缘像素数据存储器库都通过缓冲器260顺序从抗混淆单元240传送至扫描转换单元280。相应地,扫描转换单元280在接收每一边缘像素数据存储器库时执行扫描转换操作。因为仅仅储存要渲染的字符之一或几个数据存储器库所对应的边缘像素数据,可有效利用缓冲器260并从而大幅减小存储器220的大小及读取存储器220的带宽与次数,因此具有低功率消耗的性能。 图3b显示另一存储器库分割流程,其是将字符”A”分割为四个存储器库36-39。类似的,抗混淆单元240对四个存储器库36-39中每一存储器库执行抗混淆操作以产生对应的边缘像素数据存储器库,边缘像素数据存储器库是根据其大小来选择通过缓冲器260或是存储器220顺序传送至扫描转换单元280。因此,由于将字符的边缘像素数据分割为多个边缘像素数据存储器库,边缘像素数据存储器库或其部分可储存于缓冲器260中而非存储器220中,以用于传送给扫描转换单元280,从而降低了存储器带宽。需要注意的是,可根据设计需要调整字符数据存储器库的数目,例如根据缓冲器260的大小。
简而言之,字符渲染系统210能够比现有技术的字符渲染系统110以更高速度及更低的功耗来渲染高质量的字符。另外,字符渲染系统210在适应性贝塞尔曲线分解流程的基础上能够执行质量适应性(quality-adaptive)的字符渲染,因此可在高功率模式下显示高质量字符,在低功率模式下显示低质量字符。
图4显示根据本发明的第二实施方式的字符渲染系统310。字符渲染系统310包含存储器320,快取单元350,贝塞尔曲线分解单元330,抗混淆单元340,编码器365,译码器367,缓冲器360,以及扫描转换单元380。字符渲染系统310与图1中的字符渲染系统210相类似,差别在于增加了编码器365与译码器367。编码器365,耦接于抗混淆单元340与存储器320之间,通过将抗混淆单元340产生的字符的边缘像素数据编码并压缩来产生已编码字符的边缘像素数据。存储器320储存字符的已编码边缘像素数据323与多个贝塞尔曲线关键点321,关键点321是用来产生对应字符轮廓的贝塞尔曲线。因为字符的已编码边缘像素数据323的大小比字符原始的边缘像素数据小很多,可减小字符渲染系统310所用的存储器320的大小。因此减少了存储器320的数据传送,也减少了读取存储器320的功率消耗。译码器367耦接于存储器320与扫描转换单元380之间,用来通过译码存储器320接收的字符的已编码边缘像素数据323来还原(recover)字符的边缘像素数据。需要注意的是,本领域内技术人员应可了解,根据设计需要,编码器365可以采用不同的压缩方法,例如Lempel-Ziv压缩与可变长度编码(Variable-Length Coding,VLC)。
缓冲器360,耦接于编码器365与译码器367之间,提供除了通过存储器320之外的辅助手段以从编码器365传送字符的已编码像素数据至译码器367。当缓冲器360能够容纳字符的已编码边缘像素数据时,字符的已编码边缘像素数据通过缓冲器360从编码器365传送至译码器367,如此便通过减少对存储器320的数据读取加速了字符渲染流程并且节省了功率消耗。
更进一步,字符的边缘像素数据可包含对应于字符的一个存储器库的多个边缘数据存储器库。边缘像素数据存储器库是由编码器365编码以产生多个已编码的边缘像素数据存储器库。类似的,根据已编码边缘像素数据存储器库的大小,已编码边缘像素数据存储器库可通过缓冲器360被顺序从编码器365传送至译码器367,以减小存储器大小与带宽以及功率消耗。
字符渲染系统310的其它组件的配置与功能都与图1中字符渲染系统210对应组件类似,为了简洁起见,省略字符渲染系统310的进一步描述。
简而言之,相较于现有的字符渲染系统,字符渲染系统310基于此编码/译码机制,能够以更高的速度与更低的功率消耗及更小的存储器大小来渲染高质量字符。字符渲染系统310也能够基于适应性贝塞尔曲线分解流程执行质量适应性(quality-adaptive)的字符渲染操作,以于高功率模式下显示高质量字符,于低功率质量下显示低质量字符。
图5显示根据本发明的第三实施方式的字符渲染系统410的示意图。字符渲染系统410包含存储器420,快取单元450,贝塞尔曲线平行分解模块430,传送控制器470,平行抗混淆模块440,缓冲器460,以及扫描转换单元480。字符渲染系统410与图1中的字符渲染系统210类似,除了贝塞尔曲线平行分解模块430,传送控制器470与平行抗混淆模块440,将在下文详细描述这些组件。其它并未特别说明的组件执行与图1中同样的功能,因此这里不再赘述。
贝塞尔曲线平行分解模块430用于通过基于对应的贝塞尔曲线关键点分解对应于字符的多个贝塞尔曲线来产生对应于字符的轮廓的多个片段。贝塞尔曲线平行分解模块430包含多个贝塞尔曲线分解单元435_1、435_2-435_n。每一贝塞尔曲线分解单元435_1、435_2-435_n 根据对应的贝塞尔曲线关键点分解其中一条贝塞尔曲线,用以产生对应字符的片段的部分。
由于贝塞尔曲线分解单元435_1、435_2-435_n的存在,降低了功率消耗,这是因为运算晶体管导致的延迟与使用的电压成比例关系,模块工作电压与平行贝塞尔分解单元的数目大致上(substantially)成反比例关系。举例来说,如果有四个平行贝塞尔曲线分解单元,模块的工作电压就能够降低至单一贝塞尔曲线分解单元的四分之一,以达到同样的计算输出(computing throughput)。另外,因为模块的功率消耗与模块工作电压的平方成正比例,所以总的模块功率消耗与平行贝塞尔曲线分解单元的数目成反比例。
贝塞尔曲线平行分解模块430也将对应于字符的贝塞尔曲线的接收的贝塞尔曲线关键点分配(dispense)给贝塞尔曲线分解单元435_1、435_2-435_n。举例来说,当渲染字符时,贝塞尔曲线分解单元435_1对贝塞尔曲线其中之一执行分解操作,其中贝塞尔曲线对应于由贝塞尔曲线平行分解模块430所分配(distributed)的对应贝塞尔曲线关键点的字符。完成分解流程之后,贝塞尔曲线平行分解模块430会将一些其它贝塞尔曲线关键点提供(furnish)给贝塞尔曲线分解单元435_1,使得对应于字符的另一贝塞尔曲线可在贝塞尔曲线分解单元435_1空闲(idle)时被分解。因此,可采用平行处理方式分解对应于字符的贝塞尔曲线来加速分解操作。
另外,可基于功率指示信号来调整由每一贝塞尔曲线分解单元435_1、435_2-435_n分解的贝塞尔曲线分解片段的数目。也就是说,贝塞尔曲线分解单元435_1、435_2-435_n根据功率指示信号对贝塞尔曲线执行适应性分解操作,以产生相应质量级别的片段。在较佳实施方式中,当功率指示信号指示低功率模式时,将贝塞尔曲线分解片段的数目变小以用于功率节省渲染操作;当功率指示信号指示高功率时,将贝塞尔曲线分解片段的数目变大以用于高质量渲染操作。
传送控制器470包含多个输入端口与输出端口。传送控制器470的输入端口分别耦接至贝塞尔曲线分解单元435_1、435_2-435_n,以接收对应字符的片段数据。而输出端口耦接至平行抗混淆模块440。传送控制器470将对应字符片段的接收的数据分配(distribute)给输出 端口。
平行抗混淆模块440包含多个抗混淆单元445_1、445_2-445_m以及缓冲器446。抗混淆单元445_1、445_2-445_m分别耦接至传送控制器470的输出端口。每一上述多个抗混淆单元445_1、445_2-445_m从传送控制器470相应的输出端口接收对应字符的片段的部分数据,并对其执行抗混淆操作以产生字符的边缘像素数据的部分。
举例来说,当渲染字符时,抗混淆单元445_1对对应于字符的片段的部分数据执行抗混淆操作以产生字符的边缘像素数据的部分,其中字符的片段的部分数据是由传送控制器470分配。当抗混淆操作结束后,传送控制器470会将一些对应字符的片段的其它部分数据提供(furnish)给抗混淆单元445_1,使得当抗混淆单元445_1空闲时,其可产生字符边缘像素数据的一些其它部分。因此,平行抗混淆模块440以平行处理的方式对对应于字符的片段数据执行抗混淆操作,以加速抗混淆操作。
类似的,总的模块功率消耗与抗混淆单元的数目成反比例关系,其取决于前述的模块功率消耗与工作电压有关。
缓冲器446耦接至抗混淆单元445_1、445_2-445_m,以基于平行接收模式接收字符的边缘像素数据,而基于串行传送模式输出字符的边缘像素数据。扫描转换单元480,耦接至存储器420与缓冲器460,对字符的边缘像素数据执行扫描转换操作以产生要显示在屏幕495上的字符的影像数据。
简而言之,相较现有字符渲染系统,字符渲染系统410能够基于平行处理机制以更高的速度与更低的功率消耗来渲染高质量的字符,从而能使电压下降(down scaling)。另外,字符渲染系统410能够基于适应性的平行贝塞尔曲线分解操作来执行质量适应性(quality-adaptive)渲染操作,使得高功率模式下显示高质量字符,而低功率模式下显示低质量字符。
图6显示根据本发明的第四实施方式的字符渲染系统510。字符渲染系统510包含存储器520,快取单元550,贝塞尔曲线分解单元530,边缘像素计算模块540,缓冲器560,以及扫描转换单元580。字符渲染系统510与图1中所示的字符渲染系统210相似,差别在于 抗混淆单元240被替换为边缘像素计算模块540。边缘像素计算模块540包含二值(bi-level)处理单元541,灰度(gray-level)处理单元543,以及数组维度调整器(array dimension adjuster)545。二值处理单元541对对应于字符的片段数据执行二值边缘判断(bi-level edge judgment)操作,以产生字符的边缘像素数据,用以当功率指示信号指示低功率模式时执行高速低质量的字符渲染操作。灰度处理单元543对对应于字符的片段数据执行灰度抗混淆操作,以产生字符的边缘像素数据,用以当功率指示信号指示高功率模式时执行高质量字符渲染操作。
数组维数调整器545根据功率指示信号调整像素分割数组(pixeldivision array)的维数。也就是说,字符的每一边缘像素基于大像素分割数组维数划分为多个子像素(sub-pixel),用于计算相应的边缘像素数据,以便当功率指示信号指示高功率模式时执行高质量字符渲染操作,其中像素分割数组维数是由数组维数调整器545调节(regulate)。另外,字符的每一边缘像素基于小像素数组维数划分为多个子像素,用于计算相应的边缘像素数据,以便当功率指示信号指示低功率模式时执行高速及低质量的字符渲染操作,其中像素分割数组维数是由数组维数调整器545调节。举例来说,请参考图7,图7显示了根据本发明的数组维数调整器545在低功率与高功率模式下对具有黑点区域的字符“A”的操作。如图所示,在低功率模式下,数组维数调整器545基于3×3的像素分割数组维数将字符“A”的边缘像素81划分为9个子像素,而在高功率模式下,数组维数调整器545基于6×6的像素分割维数将字符”A”的另一边缘像素82划分为36个子像素。
在实施方式中,灰度处理单元543基于像素分割数组维数根据功率指示信号对对应于字符的片段数据执行灰度抗混淆操作,用以计算相应边缘像素数据。也就是说,当功率指示信号指示高功率模式时,灰度处理单元543基于大像素分割数组维数对对应于字符的片段数据执行高精度(high-precision)灰度抗混淆操作,用以计算相应边缘像素数据;同时,当功率指示信号指示低功率模式时,灰度处理器543基于小像素分割数组维数对对应于字符的片段数据执行低精度灰度抗混淆操作,用以计算相应边缘像素数据。
在另外实施方式中,当功率指示信号指示低功率模式时,二值处 理单元541对对应于字符的片段数据执行二值边缘判断(bi-level edgejudgment)处理,用以计算相应的边缘像素数据。当功率指示信号指示中等功率模式时,灰度处理单元543基于小像素分割数组维数对对应于字符的片段数据执行低精度灰度抗混淆操作,用以计算相应的边缘像素数据。当功率指示信号指示高功率模式时,灰度处理单元543基于大像素分割数组维数对对应于字符的片段数据执行高精度灰度抗混淆操作,用以计算相应的边缘像素数据。
字符渲染系统510中的其它组件的配置与功能与图1中显示的字符渲染系统210的相应组件类似,为了简洁起见,省略字符渲染系统510的进一步描述。
简而言之,相较于现有字符渲染系统,字符渲染系统510能以更低的功率消耗、更高的速度渲染高质量的字符。字符渲染系统510基于适应性贝塞尔曲线分解操作与适应性边缘像素计算处理能够执行质量适应性(quality-adaptive)字符渲染操作,使得在不同功率模式下显示不同质量的字符。
总而言之,本发明所揭示的字符渲染系统相较于现有技术的字符渲染系统能以更低的功率消耗来执行高质量的字符渲染操作。并且,本发明所揭露的字符渲染系统以更小的存储器大小来执行功率感知(power-aware)与功率适应性的字符渲染操作,用以在不同的功率模式下显示不同质量的字符。
本发明虽用较佳实施方式说明如上,然而其并非用来限定本发明的范围,任何本领域中技术人员,在不脱离本发明的精神和范围内,做的任何更动与改变,都在本发明的保护范围内,具体以权利要求界定的范围为准。
Claims (25)
1.一种字符渲染系统,用于渲染字符,包含:
存储器,用于储存上述字符的多个贝塞尔曲线关键点与边缘像素数据;
快取单元,耦接至上述存储器,用于储存部分上述多个贝塞尔曲线关键点;
贝塞尔曲线分解单元,耦接至上述快取单元,用于通过基于对应于上述字符的多个贝塞尔曲线关键点分解多个贝塞尔曲线来产生对应于上述字符的多个片段,其中上述贝塞尔曲线分解单元从上述快取单元获取对应上述字符的上述多个贝塞尔曲线关键点;
抗混淆单元,耦接于上述贝塞尔曲线分解单元与上述存储器之间,用于通过对对应于上述字符的上述多个片段执行抗混淆操作来产生上述字符的上述边缘像素数据;以及
扫描转换单元,耦接至上述存储器,用于通过对上述字符的上述边缘像素数据执行扫描转换操作以产生上述字符的影像数据。
2.如权利要求1所述的字符渲染系统,其特征在于,上述多个贝塞尔曲线关键点包含贝塞尔曲线终点与贝塞尔曲线控制点,且部分上述多个贝塞尔曲线关键点对应多个常用字符。
3.如权利要求1所述的字符渲染系统,其特征在于,上述贝塞尔曲线分解单元对上述多个贝塞尔曲线执行适应性分解操作,用以根据功率指示信号产生相应质量等级的上述多个片段。
4.如权利要求1所述的字符渲染系统,其特征在于,上述存储器是动态随机存取存储器,以及上述快取单元包含静态随机存取存储器。
5.如权利要求1所述的字符渲染系统,其特征在于,更包含:
缓冲器,耦接于上述抗混淆单元与上述扫描转换单元之间,用于储存由上述抗混淆单元产生的上述字符的上述边缘像素数据,其中上述字符的上述边缘像素数据包含多个边缘像素数据存储器库,并且每一上述多个边缘像素数据存储器库对应上述字符的多个数据库其中之一,以及每一上述多个边缘像素数据存储器库是通过上述缓冲器或上述存储器从上述抗混淆单元传送至上述扫描转换单元。
6.一种字符渲染系统,用于渲染字符,包含:
存储器,用于储存上述字符的多个贝塞尔曲线关键点与边缘像素数据;
贝塞尔曲线分解单元,耦接至上述存储器,用于通过基于对应于上述字符的上述多个贝塞尔曲线关键点分解多个贝塞尔曲线来产生对应于上述字符的多个片段;
抗混淆单元,耦接至上述贝塞尔曲线分解单元,用于通过对对应于上述字符的上述多个片段的数据执行抗混淆操作以产生上述字符的上述边缘像素数据;
编码器,耦接于上述抗混淆单元与上述存储器之间,用于利用编码上述字符的上述边缘像素数据产生上述字符的已编码边缘像素数据;
译码器,耦接至上述存储器,用于通过译码上述字符的上述已编码边缘像素数据以还原上述字符的上述边缘像素数据;以及
扫描转换单元,耦接至上述译码器,用于通过对上述字符的上述边缘像素数据执行扫描转换操作以产生上述字符的影像数据。
7.如权利要求6所述的字符渲染系统,其特征在于,上述存储器是动态随机存取存储器,上述多个贝塞尔曲线关键点包含贝塞尔曲线终点与贝塞尔曲线控制点,以及上述贝塞尔曲线分解单元对上述多个贝塞尔曲线执行适应性分解操作以根据功率指示信号产生相应质量等级的上述多个片段。
8.如权利要求6所述的字符渲染系统,其特征在于,更包含:
缓冲器,耦接于上述编码器与上述译码器之间,用于储存上述字符的上述已编码边缘像素数据,其中上述字符的上述边缘像素数据包含多个边缘像素数据存储器库,上述编码器编码上述多个边缘像素数据存储器库以产生多个已编码边缘像素数据存储器库,每一上述多个已编码边缘像素数据存储器库对应上述字符的多个存储器库其中之一并且是通过上述缓冲器或上述存储器从上述编码器传送至上述译码器。
9.如权利要求6所述的字符渲染系统,其特征在于,更包含:
缓冲器,耦接于上述编码器与上述译码器之间,用于储存上述字符的上述已编码边缘像素数据,其中上述字符的上述已编码边缘像素数据是通过上述缓冲器或上述存储器从上述编码器传送至上述译码器。
10.如权利要求6所述的字符渲染系统,其特征在于,更包含:
快取单元,耦接于上述存储器与上述贝塞尔曲线分解单元之间,用于储存部分上述多个贝塞尔曲线关键点,其中上述贝塞尔曲线分解单元从上述快取单元或上述存储器获取对应于上述字符的上述多个贝塞尔曲线关键点。
11.一种字符渲染系统,用于渲染字符,包含:
存储器,用于储存上述字符的多个贝塞尔曲线关键点与边缘像素数据;
贝塞尔曲线平行分解模块,耦接至上述存储器,用于通过基于对应于上述字符的上述多个贝塞尔曲线关键点分解多个贝塞尔曲线以产生对应上述字符的多个片段,上述贝塞尔曲线平行分解模块,包含:
多个贝塞尔曲线分解单元,每一上述多个贝塞尔曲线分解单元基于相应的贝塞尔曲线关键点分解对应于上述字符的上述多个贝塞尔曲线其中之一,以产生对应于上述字符的部分上述多个片段,其中上述贝塞尔曲线平行分解模块将对应于上述字符的上述多个贝塞尔曲线的上述多个贝塞尔曲线关键点分配给上述多个贝塞尔曲线分解单元;
传送控制器,包含多个输入端口与多个输出端口,上述多个输入端口分别耦接至上述多个贝塞尔曲线分解单元,用于接收对应上述字符的上述多个片段的数据,其中上述传送控制器将接收的对应于上述字符的上述多个片段的数据分配给上述多个输出端口;
平行抗混淆模块,耦接于上述传送控制器与上述存储器之间,通过对对应于上述字符的上述多个片段的数据执行平行抗混淆操作,以产生上述字符的上述边缘像素数据,其中是从上述传送控制器的输出端口接收对应于上述字符的上述多个片段的数据,上述平行抗混淆模块包含:
多个抗混淆单元,分别耦接至上述传送控制器的上述多个输出端口,每一上述多个抗混淆单元通过对从上述传送控制器的相应输出端口接收的对应于上述字符的上述多个片段的部分数据执行抗混淆操作,以产生部分上述字符的上述边缘像素数据;以及
扫描转换单元,耦接至上述存储器,用于通过对对应于上述字符的上述边缘像素数据执行扫描转换操作以产生上述字符的影像数据。
12.如权利要求11所述的字符渲染系统,其特征在于,上述贝塞尔曲线平行分解模块对上述多个贝塞尔曲线执行平行适应性分解操作以根据功率指示信号产生相应质量等级的上述多个片段。
13.如权利要求11所述的字符渲染系统,其特征在于,更包含:
缓冲器,耦接于上述平行抗混淆模块与上述扫描转换单元之间,用于储存由上述平行抗混淆模块产生的上述字符的上述边缘像素数据,其中上述字符的上述边缘像素数据包含多个边缘像素数据存储器库,每一上述多个边缘像素数据存储器库对应上述字符的多个存储器库其中之一,且通过上述缓冲器或上述存储器从上述平行抗混淆模块传送至上述扫描转换单元。
14.如权利要求11所述的字符渲染系统,其特征在于,上述平行抗混淆模块更包含:
缓冲器,耦接至上述抗混淆单元,用于接收部分上述字符的上述边缘像素数据且将上述字符的上述边缘像素数据顺序输出。
15.如权利要求11所述的字符渲染系统,其特征在于,更包含:
快取单元,耦接于上述存储器与上述贝塞尔曲线平行分解模块之间,用于储存部分上述多个贝塞尔曲线关键点,其中上述贝塞尔曲线平行分解模块从上述快取单元或上述存储器获取对应于上述字符的上述多个贝塞尔曲线关键点。
16.一种字符渲染系统,用于渲染字符,包含:
存储器,用于储存上述字符的多个贝塞尔关键点与边缘像素数据;
贝塞尔曲线分解单元,耦接至上述存储器,用于基于上述多个贝塞尔曲线关键点分解对应于上述字符的多个贝塞尔曲线以产生对应于上述字符的多个片段;
边缘像素计算模块,耦接于上述贝塞尔曲线分解单元与上述存储器之间,用于基于功率指示信号由对应于上述字符的上述多个片段的数据产生上述字符的上述边缘像素数据,上述边缘像素计算模块包含:
二值处理单元,用于当上述功率指示信号指示低功率模式时,对对应于上述字符的上述多个片段的数据执行二值边缘判断操作以产生上述字符的上述边缘像素数据;以及
灰度处理单元,用于当上述功率指示信号指示高功率模式时,对对应于上述字符的上述多个片段的数据执行灰度抗混淆操作以产生上述字符的上述边缘像素数据;以及
扫描转换单元,耦接至上述存储器,用于通过对上述字符的上述边缘像素数据执行扫描转换操作以产生上述字符的影像数据。
17.如权利要求16所述的字符渲染系统,其特征在于,上述贝塞尔曲线分解单元根据上述功率指示信号对上述多个贝塞尔曲线执行适应性分解操作以产生相应质量等级的上述多个片段。
18.如权利要求16所述的字符渲染系统,其特征在于,更包含:
缓冲器,耦接于上述边缘像素计算模块与上述扫描转换单元之间,用于储存上述边缘像素计算模块产生的上述字符的上述边缘像素数据,其中上述字符的上述边缘像素数据包含多个边缘像素数据存储器库,且每一上述多个边缘数据存储器库对应上述字符的多个存储器库其中之一,并且通过上述缓冲器或上述存储器将每一上述多个边缘数据存储器库从上述边缘像素计算模块传送至上述扫描转换单元。
19.如权利要求16所述的字符渲染系统,其特征在于,更包含:
快取单元,耦接于上述存储器与上述贝塞尔曲线分解单元之间,用于储存部分上述多个贝塞尔曲线关键点,其中上述贝塞尔曲线分解单元从上述快取单元或上述存储器获取对应上述字符的上述多个贝塞尔曲线关键点。
20.一种字符渲染系统,用于渲染字符,包含:
存储器,用于储存上述字符的多个贝塞尔曲线关键点与边缘像素数据;
贝塞尔曲线分解单元,耦接至上述存储器,用于通过基于对对应于上述字符的上述多个贝塞尔曲线关键点分解多个贝塞尔曲线以产生对应上述字符的多个片段;
边缘像素计算模块,耦接于上述贝塞尔曲线分解单元与上述存储器之间,用于根据像素分割数组维数对对应于上述字符的上述多个片段的数据执行抗混淆操作产生上述字符的上述边缘像素数据,上述边缘像素计算模块包含:
数组维数调整器,用于根据功率指示信号调整上述像素分割数组维数,其中上述边缘像素计算模块将上述字符的每一边缘像素划分为多个子像素并根据上述像素分割数组维数产生上述字符的上述边缘像素数据;以及
扫描转换单元,耦接至上述存储器,用于通过对上述字符的上述边缘像素数据执行扫描转换操作以产生上述字符的影像数据。
21.如权利要求20所述的字符渲染系统,其特征在于,当上述功率指示信号指示高功率模式时,上述数组维数调整器调整用于产生上述字符的上述边缘像素数据的大像素分割数组维数;以及当上述功率指示信号指示低功率模式时,上述数组维数调整器调整用于产生上述字符的上述边缘像素数据的小像素分割数组维数。
22.如权利要求21所述的字符渲染系统,其特征在于,上述边缘像素计算模块更包含:
二值处理单元,用于根据上述功率指示信号对对应于上述字符的上述多个片段的数据执行二值边缘判断操作,以基于上述像素分割数组维数产生上述字符的上述边缘像素数据,其中当上述功率指示信号指示上述高功率模式时,上述二值处理单元基于上述大像素分割数组维数执行高精度二值抗混淆操作,以及当上述功率指示信号指示上述低功率模式时,上述二值抗混处理单元基于上述小像素分割数组维数执行低精度二值抗混淆操作。
23.如权利要求21所述的字符渲染系统,其特征在于,上述边缘像素计算模块更包含:
灰度处理单元,用于对对应上述字符的上述多个片段的上述数据执行灰度抗混淆操作以根据上述功率指示信号产生基于上述像素分割数组维数的上述字符的上述边缘像素数据,其中当上述功率指示信号指示上述高功率模式时,上述灰度处理单元基于上述大像素分割数组维数执行高精度灰度抗混淆处理,且当上述功率指示信号指示上述低功率模式时,上述灰度处理单元基于上述小像素分割数组维数执行低精度灰度抗混淆操作。
24.如权利要求20所述的字符渲染系统,其特征在于,上述贝塞尔曲线分解单元根据上述功率指示信号对上述多个贝塞尔曲线执行适应性分解操作以产生相应质量等级的上述多个片段。
25.如权利要求20所述的字符渲染系统,其特征在于,更包含:
快取单元,耦接于上述存储器与上述贝塞尔曲线分解单元之间,用于储存部分上述多个贝塞尔曲线关键点,其中上述贝塞尔曲线分解单元从上述快取单元或上述存储器获取对应上述字符的上述多个贝塞尔曲线关键点;以及
缓冲器,耦接于上述边缘像素计算模块与上述扫描转换单元之间,用于储存上述字符的上述边缘像素数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/052,736 US20090237406A1 (en) | 2008-03-21 | 2008-03-21 | Character rendering system |
US12/052,736 | 2008-03-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101540054A CN101540054A (zh) | 2009-09-23 |
CN101540054B true CN101540054B (zh) | 2012-01-11 |
Family
ID=41088424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101472771A Expired - Fee Related CN101540054B (zh) | 2008-03-21 | 2008-08-26 | 字符渲染系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090237406A1 (zh) |
CN (1) | CN101540054B (zh) |
TW (1) | TWI400666B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2164176A1 (en) * | 2008-09-12 | 2010-03-17 | Thomson Licensing | Method for lossless compressing prefix-suffix-codes, method for decompressing a bit sequence representing integers or symbols encoded in compressed prefix-suffix-codes and storage medium or signal carrying compressed prefix-suffix-codes |
JP2010111088A (ja) * | 2008-11-10 | 2010-05-20 | Seiko Epson Corp | 画像形成装置 |
JP5290915B2 (ja) * | 2009-09-03 | 2013-09-18 | キヤノン株式会社 | 画像処理装置、画像処理方法及びプログラム |
US20120050293A1 (en) * | 2010-08-25 | 2012-03-01 | Apple, Inc. | Dynamically smoothing a curve |
CN102074221B (zh) * | 2011-01-06 | 2012-08-22 | 深圳芯邦科技股份有限公司 | 一种字符显示方法及装置 |
CN103578450B (zh) * | 2012-07-31 | 2016-02-03 | 国民技术股份有限公司 | 一种字符显示方法、字符显示装置及安全认证装置 |
CN102881033B (zh) * | 2012-08-06 | 2018-06-19 | 西安科技大学 | 自适应曲线的生成方法及装置 |
TWI575389B (zh) * | 2015-06-10 | 2017-03-21 | 文鼎科技開發股份有限公司 | 字體變形方法 |
CN106055069A (zh) * | 2016-05-23 | 2016-10-26 | 广东欧珀移动通信有限公司 | 一种移动终端的省电控制方法、装置和移动终端 |
US10482577B2 (en) | 2016-07-27 | 2019-11-19 | Adobe Inc. | Dynamic spread anti-aliasing |
CN107862054A (zh) * | 2017-11-09 | 2018-03-30 | 安徽教育网络出版有限公司 | 一种样式渲染方法 |
CN111328415B (zh) * | 2017-11-16 | 2022-03-01 | 辛纳普蒂克斯公司 | 显示驱动器 |
CN114895992A (zh) * | 2021-12-29 | 2022-08-12 | 厦门安胜网络科技有限公司 | 一种基于数据切片化的组件数据渲染方法及相关设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1382285A (zh) * | 1999-11-05 | 2002-11-27 | 摩托罗拉公司 | 图形书写识别用户界面 |
CN101046888A (zh) * | 2006-03-30 | 2007-10-03 | 株式会社东芝 | 渲染装置和方法,以及形状数据生成装置和方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5301267A (en) * | 1991-09-27 | 1994-04-05 | Adobe Systems Incorporated | Intelligent font rendering co-processor |
US5638503A (en) * | 1994-07-07 | 1997-06-10 | Adobe Systems, Inc. | Method and apparatus for generating bitmaps from outlines containing bezier curves |
US20020080143A1 (en) * | 2000-11-08 | 2002-06-27 | Morgan David L. | Rendering non-interactive three-dimensional content |
US6894701B2 (en) * | 2002-05-14 | 2005-05-17 | Microsoft Corporation | Type size dependent anti-aliasing in sub-pixel precision rendering systems |
-
2008
- 2008-03-21 US US12/052,736 patent/US20090237406A1/en not_active Abandoned
- 2008-08-18 TW TW097131408A patent/TWI400666B/zh not_active IP Right Cessation
- 2008-08-26 CN CN2008101472771A patent/CN101540054B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1382285A (zh) * | 1999-11-05 | 2002-11-27 | 摩托罗拉公司 | 图形书写识别用户界面 |
CN101046888A (zh) * | 2006-03-30 | 2007-10-03 | 株式会社东芝 | 渲染装置和方法,以及形状数据生成装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20090237406A1 (en) | 2009-09-24 |
TWI400666B (zh) | 2013-07-01 |
CN101540054A (zh) | 2009-09-23 |
TW200941399A (en) | 2009-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101540054B (zh) | 字符渲染系统 | |
EP0773666A3 (en) | Image coding method and system for providing reduced bit rate artihmetic codes | |
CN102523444B (zh) | 一种单色位图压缩方法及其系统 | |
US20090102850A1 (en) | Error Diffusion for Display Frame Buffer Power Saving | |
CN101794566B (zh) | 移动终端中确定待显示字符的字模数据的方法及相关装置 | |
KR100612759B1 (ko) | 디지털 잉크를 압축하는 방법 | |
EP0492941A2 (en) | Image processing apparatus | |
CN100380296C (zh) | 电子设备的文本输入 | |
CN1203455C (zh) | 具有动画制作电路的屏幕驱动器 | |
KR100327924B1 (ko) | 표의 문자 압축 | |
JP2005055825A (ja) | 画像表示装置、画像表示方法及び画像表示プログラム | |
CN113326677A (zh) | 字幕渲染方法及装置、设备、计算机可读存储介质 | |
US6246800B1 (en) | Loss-less compression and decompression of bitmaps using strokes | |
US7146058B2 (en) | Compression of images using object maps | |
CN103426386B (zh) | 显示装置及其控制方法 | |
CN101052109B (zh) | 防闪字库处理方法、系统及其应用芯片 | |
US20240160296A1 (en) | Electronic apparatus and method of controlling the same | |
CN1960548A (zh) | 便携终端及其中文字显示方法 | |
CN202257895U (zh) | 一种电脑机顶盒遥控器 | |
CN102096903A (zh) | 一种页面光栅化文字平滑处理方法及系统 | |
CN101344888A (zh) | 生成编码频、输入字符编码的方法、装置和输入文字装置 | |
JP2006259662A (ja) | ビットマップビット筆画データを拡縮することによりビットマップ文字を形成する方法 | |
CN101408803A (zh) | 一种向终端设备输入盲文的方法及终端设备 | |
Win et al. | A Survey on Semantic Communications System Based on Multi-modal Data | |
KR100443694B1 (ko) | 전자 잉크 데이터 형성 방법 및 이를 이용한 데이터 통신방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120111 Termination date: 20200826 |
|
CF01 | Termination of patent right due to non-payment of annual fee |