CN111221596A - 字体渲染方法、装置及计算机可读存储介质 - Google Patents
字体渲染方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111221596A CN111221596A CN201811405467.9A CN201811405467A CN111221596A CN 111221596 A CN111221596 A CN 111221596A CN 201811405467 A CN201811405467 A CN 201811405467A CN 111221596 A CN111221596 A CN 111221596A
- Authority
- CN
- China
- Prior art keywords
- font
- rendering
- animation
- color
- information
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 173
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000000694 effects Effects 0.000 claims abstract description 152
- 238000004590 computer program Methods 0.000 claims description 21
- 239000012634 fragment Substances 0.000 claims description 20
- 239000007787 solid Substances 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000004927 fusion Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 230000001788 irregular Effects 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 239000003086 colorant Substances 0.000 description 2
- 238000004020 luminiscence type Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
Images
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Generation (AREA)
Abstract
本发明提供了一种字体渲染方法、装置及计算机可读存储介质。其中,字体渲染方法,包括:接收需要渲染的字符串,读取字体文件;解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;根据字体位图、彩色信息与运动属性信息生成动画单元;对动画单元进行渲染。通过本发明的字体渲染方法,打破了传统字体只能静态显示的呆板印象,让字能动起来,并且不同行列的字可以显示不同动态彩色效果,风格更个性化、多样化、酷炫化,并且可根据用户输入即时呈现动态彩色字体效果,极大地满足了用户的个性化需求,提升了用户体验。
Description
技术领域
本发明涉及文字处理技术领域,具体而言,涉及一种字体渲染方法,一种字体渲染装置,及一种计算机可读存储介质。
背景技术
最开始无论是移动设备还是其他计算机设备上,字体文件都是以标准格式存在的,诸如TTF、OTF格式等,系统字体只能显示成黑色,黑色对信息交互的多样性、个性化支持的不是太好,比较呆板。随着技术的进一步发展,标准格式的彩色字也可以在一些移动设备上进行显示了,一旦用户的个性化得到了一些满足之后,更多个性化的需求也会随之而来。目前,市面上存在的将字体渲染成动态彩色的技术基本都是在CPU中进行处理,由于运算量大,不适合在低性能终端设备上使用,也做不出来效果比较酷炫的动态彩色,而且这类字体动态彩色渲染技术所依据的彩色字体文件是自定义格式,不能依据现有计算机设备的字体安装接口进行安装。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一方面在于提出了一种字体渲染方法。
本发明的另一方面在于提出了一种字体渲染装置。
本发明的再一方面在于提出了一种计算机可读存储介质。
有鉴于此,本发明提出了一种字体渲染方法,包括:接收需要渲染的字符串,读取字体文件;解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;根据字体位图、彩色信息与运动属性信息生成动画单元;对动画单元进行渲染。
根据本发明的字体渲染方法,接收需要渲染的字符串,例如从客户端接收用户输入的字符串,读取字体文件,对该字体文件进行解析,获得与字符串相对应的字体位图、彩色信息及运动属性信息,将字体位图、彩色信息及运动属性信息进行数据融合,形成动画单元,其中动画的频率可以是固定的帧间隔或者不规律的帧间隔,再对动画单元进行渲染,渲染后输出即得到动态彩色字体效果。通过本发明的字体渲染方法,打破了传统字体只能静态显示的呆板印象,让字能动起来,并且不同行列的字可以显示不同动态彩色效果,风格更个性化、多样化、酷炫化,并且可根据用户输入即时呈现动态彩色字体效果,极大地满足了用户的个性化需求,提升了用户体验。
在上述技术方案中,优选地,在根据字体位图、彩色信息与运动属性信息生成动画单元的步骤之前,还包括:对运动属性信息进行插值运算;插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光。
在该技术方案中,在对字体位图、彩色信息与运动属性信息进行数据融合之前,对每个运动属性进行了插值运算,使字体的运动效果更流畅、平滑,并实现对图像的变换,如缩放、旋转、位移、颜色、透明度、描边、阴影、发光等,从而保证字体的多样化、个性化、酷炫化,并增强视觉效果。
在上述任一技术方案中,优选地,对动画单元进行渲染的步骤,具体包括:通过GPU对动画单元的每帧数据进行帧图层渲染,并进行颜色填充;其中,帧图层渲染包括:背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括以下任一项或其组合:渐变、纹理、纯色、动画。
在该技术方案中,本发明基于OpenGL(Open Graphics Library开放图形库)技术,采用GPU(Graphics Processing Unit,图形处理器)对动画单元进行渲染,OpenGL是一个与硬件无关的软件接口,在各种平台之间都能进行移植,因此,不管是系统级的接入还是应用级的接入都能很好的进行兼容。具体而言,将动画单元以每帧的数据格式送抵至GPU进行帧图层渲染,同时进行颜色填充,渲染完成后,从GPU中提取帧图层数据,在内存形成帧位图数据,将帧位图数据输出至外部应用进行效果呈现。帧图层渲染过程包括背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括但不限于渐变、纹理、纯色、动画中的任一项或其组合。本发明基于OpenGL技术,利用了GPU进行字体渲染和动画渲染,提高了渲染速度,节省了系统资源的消耗,保证了系统的流畅性,同时适用于低性能终端,并且能够获得更多样、酷炫的动态彩色效果,极大满足用户对字体效果的个性化需求,还可通过计算机设备的字体安装接口来安装字体文件,进一步提高了用户的体验。
在上述任一技术方案中,优选地,字体文件包括标准黑白字TrueType格式字体文件,以及以下任一项或其组合:图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表;运动属性信息包括以下任一项或其组合:单字笔画动画、段落动画、段落特效、单字动画、段落单字动画;字符串由至少一个字符组成,字符包括以下任一项或其组合:中文字符、阿拉伯字符、英文字符。
在该技术方案中,字体文件是在标准黑白字TrueType格式字体文件基础上进行扩展得到的,在保留了标准格式的字体文件的表结构,增加了图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表等,通过解析字体文件可获得用户输入的字符串的动态属性信息、彩色信息及字体位图,其中字符串由至少一个字符组成、字符串不限于中文字符、阿拉伯字符、英文字符中的一种或几种的组合,动态属性信息包括但不限于单字笔画动画、段落动画、段落特效、单字动画、段落单字动画,这样的动态属性信息支持段落动画、展示整体字的效果,支持段落特效、展示字之外的整体效果,支持段落单字动画、展示字在整体中的运动效果,支持单字动画、展示单字本身的运动效果,支持单字笔画运动、展示单字最小颗粒度笔画的运动效果,从而保证了字体多样、酷炫的动态彩色效果。
在上述任一技术方案中,优选地,字体渲染方法,还包括:在接收到复制动态彩色字体的命令时,将动态彩色字体还原成字符串并进行粘贴。
在该技术方案中,用户可以复制已经呈现出来的动态彩色字体效果,复制后还原成之前输入的文字。然后根据自己的需要可以重新进行编辑或者粘贴到记事本等,进一步进行文字处理。
本发明还提出了一种字体渲染装置,包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序以:接收需要渲染的字符串,读取字体文件;解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;根据字体位图、彩色信息与运动属性信息生成动画单元;对动画单元进行渲染。
根据本发明的字体渲染装置,接收需要渲染的字符串,例如从客户端接收用户输入的字符串,读取字体文件,对该字体文件进行解析,获得与字符串相对应的字体位图、彩色信息及运动属性信息,将字体位图、彩色信息及运动属性信息进行数据融合,形成动画单元,其中动画的频率可以是固定的帧间隔或者不规律的帧间隔,再对动画单元进行渲染,渲染后输出即得到动态彩色字体效果。通过本发明的字体渲染装置,打破了传统字体只能静态显示的呆板印象,让字能动起来,并且不同行列的字可以显示不同动态彩色效果,风格更个性化、多样化、酷炫化,并且可根据用户输入即时呈现动态彩色字体效果,极大地满足了用户的个性化需求,提升了用户体验。
在上述技术方案中,优选地,处理器,还用于执行计算机程序以:在根据字体位图、彩色信息与运动属性信息生成动画单元的步骤之前,对运动属性信息进行插值运算;插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光。
在该技术方案中,在对字体位图、彩色信息与运动属性信息进行数据融合之前,对每个运动属性进行了插值运算,使字体的运动效果更流畅、平滑,并实现对图像的变换,如缩放、旋转、位移、颜色、透明度、描边、阴影、发光等,从而保证字体的多样化、个性化、酷炫化,并增强视觉效果。
在上述任一技术方案中,优选地,处理器,具体用于执行计算机程序以:通过GPU对动画单元的每帧数据进行帧图层渲染,并进行颜色填充;其中,帧图层渲染包括:背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括以下任一项或其组合:渐变、纹理、纯色、动画。
在该技术方案中,本发明基于OpenGL技术,采用GPU对动画单元进行渲染,OpenGL是一个与硬件无关的软件接口,在各种平台之间都能进行移植,因此,不管是系统级的接入还是应用级的接入都能很好的进行兼容。具体而言,将动画单元以每帧的数据格式送抵至GPU进行帧图层渲染,同时进行颜色填充,渲染完成后,从GPU中提取帧图层数据,在内存形成帧位图数据,将帧位图数据输出至外部应用进行效果呈现。帧图层渲染过程包括背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括但不限于渐变、纹理、纯色、动画中的任一项或其组合。本发明基于OpenGL技术,利用了GPU进行字体渲染和动画渲染,提高了渲染速度,节省了系统资源的消耗,保证了系统的流畅性,同时适用于低性能终端,并且能够获得更多样、酷炫的动态彩色效果,极大满足用户对字体效果的个性化需求,还可通过计算机设备的字体安装接口来安装字体文件,进一步提高了用户的体验。
在上述任一技术方案中,优选地,字体文件包括标准黑白字TrueType格式字体文件,以及以下任一项或其组合:图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表;运动属性信息包括以下任一项或其组合:单字笔画动画、段落动画、段落特效、单字动画、段落单字动画;字符串由至少一个字符组成,字符包括以下任一项或其组合:中文字符、阿拉伯字符、英文字符。
在该技术方案中,字体文件是在标准黑白字TrueType格式字体文件基础上进行扩展得到的,在保留了标准格式的字体文件的表结构,增加了图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表等,通过解析字体文件可获得用户输入的字符串的动态属性信息、彩色信息及字体位图,其中字符串由至少一个字符组成、字符串不限于中文字符、阿拉伯字符、英文字符中的一种或几种的组合,动态属性信息包括但不限于单字笔画动画、段落动画、段落特效、单字动画、段落单字动画,这样的动态属性信息支持段落动画、展示整体字的效果,支持段落特效、展示字之外的整体效果,支持段落单字动画、展示字在整体中的运动效果,支持单字动画、展示单字本身的运动效果,支持单字笔画运动、展示单字最小颗粒度笔画的运动效果,从而保证了字体多样、酷炫的动态彩色效果。
在上述任一技术方案中,优选地,处理器,还用于执行计算机程序以:在接收到复制动态彩色字体的命令时,将动态彩色字体还原成字符串并进行粘贴。
在该技术方案中,用户可以复制已经呈现出来的动态彩色字体效果,复制后还原成之前输入的文字。然后根据自己的需要可以重新进行编辑或者粘贴到记事本等,进一步进行文字处理。
本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现了如上述技术方案中任一项所述的字体渲染方法的步骤。
根据本发明的计算机可读存储介质,其上存储的计算机程序被处理器执行时实现了如上述技术方案中任一项的字体渲染方法的步骤,因而该计算机可读存储介质能够实现该字体渲染方法的全部有益效果。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了根据本发明的一个实施例的字体渲染方法的流程示意图;
图2示出了根据本发明的另一个实施例的字体渲染方法的流程示意图;
图3示出了根据本发明的再一个实施例的字体渲染方法的流程示意图;
图4示出了根据本发明的又一个实施例的字体渲染方法的流程示意图;
图5示出了根据本发明的一个实施例的字体渲染装置的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
如图1所示,根据本发明的一个实施例的字体渲染方法的流程示意图。其中,该字体渲染方法,包括:
步骤102,接收需要渲染的字符串,读取字体文件;
步骤104,解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;
步骤106,根据字体位图、彩色信息与运动属性信息生成动画单元;
步骤108,对动画单元进行渲染。
本发明实施例的字体渲染方法,接收需要渲染的字符串,例如从客户端接收用户输入的字符串,读取字体文件,对该字体文件进行解析,获得与字符串相对应的字体位图、彩色信息及运动属性信息,将字体位图、彩色信息及运动属性信息进行数据融合,形成动画单元,其中动画的频率可以是固定的帧间隔或者不规律的帧间隔,再对动画单元进行渲染,渲染后输出即得到动态彩色字体效果。通过本发明的字体渲染方法,打破了传统字体只能静态显示的呆板印象,让字能动起来,并且不同行列的字可以显示不同动态彩色效果,风格更个性化、多样化、酷炫化,并且可根据用户输入即时呈现动态彩色字体效果,极大地满足了用户的个性化需求,提升了用户体验。
如图2所示,根据本发明的另一个实施例的字体渲染方法的流程示意图。其中,该字体渲染方法,包括:
步骤202,接收需要渲染的字符串,读取字体文件;
步骤204,解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;
步骤206,对运动属性信息进行插值运算;插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光;
步骤208,根据字体位图、彩色信息与运动属性信息生成动画单元;
步骤210,对动画单元进行渲染。
在该实施例中,在对字体位图、彩色信息与运动属性信息进行数据融合之前,对每个运动属性进行了插值运算,使字体的运动效果更流畅、平滑,并实现对图像的变换,如缩放、旋转、位移、颜色、透明度、描边、阴影、发光等,从而保证字体的多样化、个性化、酷炫化,并增强视觉效果。
如图3所示,根据本发明的再一个实施例的字体渲染方法的流程示意图。其中,该字体渲染方法,包括:
步骤302,接收需要渲染的字符串,读取字体文件;
步骤304,解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;
步骤306,对运动属性信息进行插值运算;插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光;
步骤308,根据字体位图、彩色信息与运动属性信息生成动画单元;
步骤310,通过GPU对动画单元的每帧数据进行帧图层渲染,并进行颜色填充,其中,帧图层渲染包括:背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括以下任一项或其组合:渐变、纹理、纯色、动画。
在该实施例中,本发明基于OpenGL技术,采用GPU对动画单元进行渲染,OpenGL是一个与硬件无关的软件接口,在各种平台之间都能进行移植,因此,不管是系统级的接入还是应用级的接入都能很好的进行兼容。具体而言,将动画单元以每帧的数据格式送抵至GPU进行帧图层渲染,同时进行颜色填充,渲染完成后,从GPU中提取帧图层数据,在内存形成帧位图数据,将帧位图数据输出至外部应用进行效果呈现。帧图层渲染过程包括背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括但不限于渐变、纹理、纯色、动画中的任一项或其组合。本发明基于OpenGL技术,利用了GPU进行字体渲染和动画渲染,提高了渲染速度,节省了系统资源的消耗,保证了系统的流畅性,同时适用于低性能终端,并且能够获得更多样、酷炫的动态彩色效果,极大满足用户对字体效果的个性化需求,还可通过计算机设备的字体安装接口来安装字体文件,进一步提高了用户的体验。
在上述任一实施例中,优选地,字体文件包括标准黑白字TrueType格式字体文件,以及以下任一项或其组合:图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表;运动属性信息包括以下任一项或其组合:单字笔画动画、段落动画、段落特效、单字动画、段落单字动画;字符串由至少一个字符组成,字符包括以下任一项或其组合:中文字符、阿拉伯字符、英文字符。
在该实施例中,字体文件是在标准黑白字TrueType格式字体文件基础上进行扩展得到的,在保留了标准格式的字体文件的表结构,增加了图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表等,通过解析字体文件可获得用户输入的字符串的动态属性信息、彩色信息及字体位图,其中字符串由至少一个字符组成、字符串不限于中文字符、阿拉伯字符、英文字符中的一种或几种的组合,动态属性信息包括但不限于单字笔画动画、段落动画、段落特效、单字动画、段落单字动画,这样的动态属性信息支持段落动画、展示整体字的效果,支持段落特效、展示字之外的整体效果,支持段落单字动画、展示字在整体中的运动效果,支持单字动画、展示单字本身的运动效果,支持单字笔画运动、展示单字最小颗粒度笔画的运动效果,从而保证了字体多样、酷炫的动态彩色效果。
如图4所示,根据本发明的又一个实施例的字体渲染方法的流程示意图。其中,该字体渲染方法,包括:
步骤402,接收需要渲染的字符串,读取字体文件;
步骤404,解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;
步骤406,对运动属性信息进行插值运算;插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光;
步骤408,根据字体位图、彩色信息与运动属性信息生成动画单元;
步骤410,对动画单元进行渲染,呈现动态彩色字体效果;
步骤412,在接收到复制动态彩色字体的命令时,将动态彩色字体还原成字符串并进行粘贴。
在该实施例中,用户可以复制已经呈现出来的动态彩色字体效果,复制后还原成之前输入的文字。然后根据自己的需要可以重新进行编辑或者粘贴到记事本等,进一步进行文字处理。
如图5所示,根据本发明的一个实施例的字体渲染装置的示意框图。其中,该字体渲染装置500,包括:
存储器502,用于存储计算机程序;
处理器504,用于执行计算机程序以:接收需要渲染的字符串,读取字体文件;解析字体文件,获得字符串对应的字体位图、彩色信息与运动属性信息;根据字体位图、彩色信息与运动属性信息生成动画单元;对动画单元进行渲染。
本发明实施例的字体渲染装置500,接收需要渲染的字符串,例如从客户端接收用户输入的字符串,读取字体文件,对该字体文件进行解析,获得与字符串相对应的字体位图、彩色信息及运动属性信息,将字体位图、彩色信息及运动属性信息进行数据融合,形成动画单元,其中动画的频率可以是固定的帧间隔或者不规律的帧间隔,再对动画单元进行渲染,渲染后输出即得到动态彩色字体效果。通过本发明的字体渲染装置500,打破了传统字体只能静态显示的呆板印象,让字能动起来,并且不同行列的字可以显示不同动态彩色效果,风格更个性化、多样化、酷炫化,并且可根据用户输入即时呈现动态彩色字体效果,极大地满足了用户的个性化需求,提升了用户体验。
在本发明的一个实施例中,优选地,处理器504,还用于执行计算机程序以:在根据字体位图、彩色信息与运动属性信息生成动画单元的步骤之前,对运动属性信息进行插值运算;插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光。
在该实施例中,在对字体位图、彩色信息与运动属性信息进行数据融合之前,对每个运动属性进行了插值运算,使字体的运动效果更流畅、平滑,并实现对图像的变换,如缩放、旋转、位移、颜色、透明度、描边、阴影、发光等,从而保证字体的多样化、个性化、酷炫化,并增强视觉效果。
在本发明的一个实施例中,优选地,处理器504,具体用于执行计算机程序以:通过GPU对动画单元的每帧数据进行帧图层渲染,并进行颜色填充;其中,帧图层渲染包括:背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括以下任一项或其组合:渐变、纹理、纯色、动画。
在该实施例中,本发明基于OpenGL技术,采用GPU对动画单元进行渲染,OpenGL是一个与硬件无关的软件接口,在各种平台之间都能进行移植,因此,不管是系统级的接入还是应用级的接入都能很好的进行兼容。具体而言,将动画单元以每帧的数据格式送抵至GPU进行帧图层渲染,同时进行颜色填充,渲染完成后,从GPU中提取帧图层数据,在内存形成帧位图数据,将帧位图数据输出至外部应用进行效果呈现。帧图层渲染过程包括背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;颜色填充的方式包括但不限于渐变、纹理、纯色、动画中的任一项或其组合。本发明基于OpenGL技术,利用了GPU进行字体渲染和动画渲染,提高了渲染速度,节省了系统资源的消耗,保证了系统的流畅性,同时适用于低性能终端,并且能够获得更多样、酷炫的动态彩色效果,极大满足用户对字体效果的个性化需求,还可通过计算机设备的字体安装接口来安装字体文件,进一步提高了用户的体验。
在本发明的一个实施例中,优选地,字体文件包括标准黑白字TrueType格式字体文件,以及以下任一项或其组合:图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表;运动属性信息包括以下任一项或其组合:单字笔画动画、段落动画、段落特效、单字动画、段落单字动画;字符串由至少一个字符组成,字符包括以下任一项或其组合:中文字符、阿拉伯字符、英文字符。
在该实施例中,字体文件是在标准黑白字TrueType格式字体文件基础上进行扩展得到的,在保留了标准格式的字体文件的表结构,增加了图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表等,通过解析字体文件可获得用户输入的字符串的动态属性信息、彩色信息及字体位图,其中字符串由至少一个字符组成、字符串不限于中文字符、阿拉伯字符、英文字符中的一种或几种的组合,动态属性信息包括但不限于单字笔画动画、段落动画、段落特效、单字动画、段落单字动画,这样的动态属性信息支持段落动画、展示整体字的效果,支持段落特效、展示字之外的整体效果,支持段落单字动画、展示字在整体中的运动效果,支持单字动画、展示单字本身的运动效果,支持单字笔画运动、展示单字最小颗粒度笔画的运动效果,从而保证了字体多样、酷炫的动态彩色效果。
在本发明的一个实施例中,优选地,处理器504,还用于执行计算机程序以:在接收到复制动态彩色字体的命令时,将动态彩色字体还原成字符串并进行粘贴。
在该实施例中,用户可以复制已经呈现出来的动态彩色字体效果,复制后还原成之前输入的文字。然后根据自己的需要可以重新进行编辑或者粘贴到记事本等,进一步进行文字处理。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现了如上述实施例中任一项所述的字体渲染方法的步骤。
本发明实施例的计算机可读存储介质,其上存储的计算机程序被处理器执行时实现了如上述实施例中任一项的字体渲染方法的步骤,因而该计算机可读存储介质能够实现该字体渲染方法的全部有益效果。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种字体渲染方法,其特征在于,包括:
接收需要渲染的字符串,读取字体文件;
解析所述字体文件,获得所述字符串对应的字体位图、彩色信息与运动属性信息;
根据所述字体位图、所述彩色信息与所述运动属性信息生成动画单元;
对所述动画单元进行渲染。
2.根据权利要求1所述的字体渲染方法,其特征在于,在根据所述字体位图、所述彩色信息与所述运动属性信息生成动画单元的步骤之前,还包括:
对所述运动属性信息进行插值运算;
所述插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光。
3.根据权利要求1所述的字体渲染方法,其特征在于,对所述动画单元进行渲染的步骤,具体包括:
通过GPU对所述动画单元的每帧数据进行帧图层渲染,并进行颜色填充;其中,所述帧图层渲染包括:背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;
所述颜色填充的方式包括以下任一项或其组合:渐变、纹理、纯色、动画。
4.根据权利要求1至3中任一项所述的字体渲染方法,其特征在于,
所述字体文件包括标准黑白字TrueType格式字体文件,以及以下任一项或其组合:图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表;
所述运动属性信息包括以下任一项或其组合:单字笔画动画、段落动画、段落特效、单字动画、段落单字动画;
所述字符串由至少一个字符组成,所述字符包括以下任一项或其组合:中文字符、阿拉伯字符、英文字符。
5.根据权利要求1至3中任一项所述的字体渲染方法,其特征在于,还包括:在接收到复制所述动态彩色字体的命令时,将所述动态彩色字体还原成所述字符串并进行粘贴。
6.一种字体渲染装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以:接收需要渲染的字符串,读取字体文件;
解析所述字体文件,获得所述字符串对应的字体位图、彩色信息与运动属性信息;
根据所述字体位图、所述彩色信息与所述运动属性信息生成动画单元;
对所述动画单元进行渲染。
7.根据权利要求6所述的字体渲染装置,其特征在于,所述处理器,还用于执行所述计算机程序以:
在根据所述字体位图、所述彩色信息与所述运动属性信息生成动画单元的步骤之前,对所述运动属性信息进行插值运算;
所述插值运算包括以下任一项或其组合:缩放,旋转,位移、颜色、透明度、描边、阴影、发光。
8.根据权利要求6所述的字体渲染装置,其特征在于,所述处理器,具体用于执行所述计算机程序以:
通过GPU对所述动画单元的每帧数据进行帧图层渲染,并进行颜色填充;其中,所述帧图层渲染包括:背景效果绘制、单字图像效果绘制、整体图像效果绘制、字体效果绘制、前景效果绘制;
所述颜色填充的方式包括以下任一项或其组合:渐变、纹理、纯色、动画。
9.根据权利要求6至8中任一项所述的字体渲染装置,其特征在于,
所述字体文件包括标准黑白字TrueType格式字体文件,以及以下任一项或其组合:图片表、整库渲染信息表、整字渲染信息表、轮廓渲染信息表、相关索引表、图片偏移量表、整字渲染记录偏移量表、轮廓渲染记录偏移量表、动画效果表、动画效果偏移量表、片元着色器代码表、段落片元着色器属性表、动态字全局信息表、单字轮廓动画效果数据表;
所述运动属性信息包括以下任一项或其组合:单字笔画动画、段落动画、段落特效、单字动画、段落单字动画;
所述字符串由至少一个字符组成,所述字符包括以下任一项或其组合:中文字符、阿拉伯字符、英文字符。
10.根据权利要求6至8中任一项所述的字体渲染装置,其特征在于,所述处理器,还用于执行所述计算机程序以:
在接收到复制所述动态彩色字体的命令时,将所述动态彩色字体还原成所述字符串并进行粘贴。
11.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现了如权利要求1至5中任一项所述的字体渲染方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811405467.9A CN111221596B (zh) | 2018-11-23 | 2018-11-23 | 字体渲染方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811405467.9A CN111221596B (zh) | 2018-11-23 | 2018-11-23 | 字体渲染方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111221596A true CN111221596A (zh) | 2020-06-02 |
CN111221596B CN111221596B (zh) | 2024-04-09 |
Family
ID=70813426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811405467.9A Active CN111221596B (zh) | 2018-11-23 | 2018-11-23 | 字体渲染方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111221596B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112232023A (zh) * | 2020-10-21 | 2021-01-15 | 苏州速显微电子科技有限公司 | 一种在线位图字体生成系统及方法 |
CN113392268A (zh) * | 2021-03-31 | 2021-09-14 | 百果园技术(新加坡)有限公司 | 一种特效文本渲染方法、装置、电子设备及存储介质 |
WO2022100095A1 (zh) * | 2020-11-13 | 2022-05-19 | 深圳市前海手绘科技文化有限公司 | 一种基于文字排版的手绘素材制作方法与装置 |
CN114827718A (zh) * | 2022-06-27 | 2022-07-29 | 全时云商务服务股份有限公司 | 云会议中实时视频合屏文字自适应对齐显示的方法和装置 |
CN115272535A (zh) * | 2022-08-19 | 2022-11-01 | 杭州新迪数字工程系统有限公司 | Web下DWG图纸字体一致性绘制方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771034A (en) * | 1995-01-23 | 1998-06-23 | Microsoft Corporation | Font format |
CN101483723A (zh) * | 2008-01-11 | 2009-07-15 | 新奥特(北京)视频技术有限公司 | 一种基于多样性应用的电视字幕播出设备性能保障的方法 |
CN101833542A (zh) * | 2010-04-21 | 2010-09-15 | 中兴通讯股份有限公司 | 一种用户界面字体渲染方法及装置 |
CN102122502A (zh) * | 2011-03-15 | 2011-07-13 | 深圳芯邦科技股份有限公司 | 一种三维字体显示方法以及相关装置 |
CN107277616A (zh) * | 2017-07-21 | 2017-10-20 | 广州爱拍网络科技有限公司 | 视频特效渲染方法、装置及终端 |
US20180253883A1 (en) * | 2017-03-03 | 2018-09-06 | Microsoft Technology Licensing, Llc | Animated glyph based on multi-axis variable font |
-
2018
- 2018-11-23 CN CN201811405467.9A patent/CN111221596B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771034A (en) * | 1995-01-23 | 1998-06-23 | Microsoft Corporation | Font format |
CN101483723A (zh) * | 2008-01-11 | 2009-07-15 | 新奥特(北京)视频技术有限公司 | 一种基于多样性应用的电视字幕播出设备性能保障的方法 |
CN101833542A (zh) * | 2010-04-21 | 2010-09-15 | 中兴通讯股份有限公司 | 一种用户界面字体渲染方法及装置 |
CN102122502A (zh) * | 2011-03-15 | 2011-07-13 | 深圳芯邦科技股份有限公司 | 一种三维字体显示方法以及相关装置 |
US20180253883A1 (en) * | 2017-03-03 | 2018-09-06 | Microsoft Technology Licensing, Llc | Animated glyph based on multi-axis variable font |
CN107277616A (zh) * | 2017-07-21 | 2017-10-20 | 广州爱拍网络科技有限公司 | 视频特效渲染方法、装置及终端 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112232023A (zh) * | 2020-10-21 | 2021-01-15 | 苏州速显微电子科技有限公司 | 一种在线位图字体生成系统及方法 |
WO2022100095A1 (zh) * | 2020-11-13 | 2022-05-19 | 深圳市前海手绘科技文化有限公司 | 一种基于文字排版的手绘素材制作方法与装置 |
CN113392268A (zh) * | 2021-03-31 | 2021-09-14 | 百果园技术(新加坡)有限公司 | 一种特效文本渲染方法、装置、电子设备及存储介质 |
CN114827718A (zh) * | 2022-06-27 | 2022-07-29 | 全时云商务服务股份有限公司 | 云会议中实时视频合屏文字自适应对齐显示的方法和装置 |
CN114827718B (zh) * | 2022-06-27 | 2022-10-28 | 全时云商务服务股份有限公司 | 云会议中实时视频合屏文字自适应对齐显示的方法和装置 |
CN115272535A (zh) * | 2022-08-19 | 2022-11-01 | 杭州新迪数字工程系统有限公司 | Web下DWG图纸字体一致性绘制方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111221596B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210240913A1 (en) | Font rendering method and apparatus, and computer-readable storage medium | |
CN111221596B (zh) | 字体渲染方法、装置及计算机可读存储介质 | |
US11344806B2 (en) | Method for rendering game, and method, apparatus and device for generating game resource file | |
CN109801347B (zh) | 一种可编辑图像模板的生成方法、装置、设备和介质 | |
EP2805258B1 (en) | Low resolution placeholder content for document navigation | |
CN107015788B (zh) | 在移动设备上动画展现图像的方法和装置 | |
CN108959392B (zh) | 在3d模型上展示富文本的方法、装置及设备 | |
CN104298504A (zh) | 基于FreeType字体引擎的实现字体绘制的方法 | |
CN112052050B (zh) | 一种分享图片生成方法、系统及存储介质和终端设备 | |
CN108961361B (zh) | 生成特效文字图像的方法及系统、计算机设备 | |
US10311060B2 (en) | Glyph management in texture atlases | |
US9153193B2 (en) | Primitive rendering using a single primitive type | |
US8818092B1 (en) | Multi-threaded text rendering | |
CN112560397B (zh) | 绘制方法、装置、终端设备及存储介质 | |
CN117376660A (zh) | 字幕元素的渲染方法、装置、设备、介质及程序产品 | |
CN115391692A (zh) | 视频处理方法和装置 | |
CN111399788B (zh) | 媒体文件播放方法和媒体文件播放装置 | |
CA2969778A1 (en) | Glyph management in texture atlases | |
US8223123B1 (en) | Hardware accelerated caret rendering | |
CN113486271A (zh) | 一种图像主色调的确定方法、装置以及电子终端 | |
CN113704530A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN114942854A (zh) | 一种gif动图的截图方法和相关设备 | |
CN113850051A (zh) | 一种字体贴图的动态生成方法、装置、及可读存储介质 | |
CN115390803A (zh) | 一种基于mapbox-gl的图形绘制方法及相关设备 | |
CN113901164A (zh) | 一种基于GeoJSON的WebGIS渲染管理方法及系统 |
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 |