CN101131687A - 产生字型的方法 - Google Patents

产生字型的方法 Download PDF

Info

Publication number
CN101131687A
CN101131687A CN 200610121548 CN200610121548A CN101131687A CN 101131687 A CN101131687 A CN 101131687A CN 200610121548 CN200610121548 CN 200610121548 CN 200610121548 A CN200610121548 A CN 200610121548A CN 101131687 A CN101131687 A CN 101131687A
Authority
CN
China
Prior art keywords
stroke
font
code
point
character
Prior art date
Application number
CN 200610121548
Other languages
English (en)
Inventor
吴福生
黄逸辉
Original Assignee
文鼎科技开发股份有限公司
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 文鼎科技开发股份有限公司 filed Critical 文鼎科技开发股份有限公司
Priority to CN 200610121548 priority Critical patent/CN101131687A/zh
Publication of CN101131687A publication Critical patent/CN101131687A/zh

Links

Abstract

产生字型包含记录一笔划的关键点、起始点与结束点,及相对应于该笔划的一笔划程序根据该笔划的关键点、起始点与结束点来绘制出该笔划的单线结构。在绘制出该笔划的单线结构后,再调整该笔划的粗细。

Description

产生字型的方法技术领域本发明提供一种产生字型的方法,尤其指一种提升小字型显示质量的方法。背景技术目前的高质量中文字型大都使用笔划组字技术来完成,笔划组字技术将 每一个字的字型视为是一个由许多笔划组成的结构性图形,而每一笔划则是 由该笔划的外形轮廓所构成的子图形来代表。中文字的笔划种类并不多,但 是在不同的字中或是一个字的不同部位,即使是相同笔划也会有长、短、胖、 瘦或是角度的差异。但是如果属于同一种笔划,例如「一」,即使是有这些 差异,它们的外形轮廓特征也多半是相同的。因此如杲代表一个笔划的长、 短、角度以及位置的关键点以及代表一个笔划不同部位胖、瘦的宽度值能被 个别的标定出来,则一个笔划的外形轮廓就可以很容易的用一个笔划程序计 算出来并加以绘制。基本上,每一种笔划都设有预定个数的关键点及宽度值,而且每一种笔 划都可用一个笔划程序来绘制该笔划。笔划程序是用「图形描述语言J(graphic description language)写成的,它可才艮据给定的各个关4建点及 宽度值将一个笔划的外形轮廓绘制在一个方框内,而一个字的字型就是将它 所有的笔划由各笔划的笔划程序逐一绘制在一个方框内所构成。请参考图l;图1为先前笔划对照表10的数据结构。笔划对照表10包含各 个笔划的笔划码14,以及对应于各个笔划的笔划程序12。在绘制笔划时,系 统会依据一个笔划的笔划码来取出相对应的笔划程序,然后再利用该笔划程 序依据该笔划的关键点及宽度值将该笔划的外形轮廓绘制在一个方框内。请参考图2及图3;图2为笔划20的外形轮廓以及各个关键点及宽度值的位 置,而图3为笔划20的数据结构24。笔划20设有三个关键点(xl, yl)、 (x2, y2)和(x3, y3)以及两个宽度值wl和w2,因此数据结构24包含有笔划20的笔划 码(ID7)以及各个关键点和宽度值。

请参考图4;图4为先前字型描述档28的数据结构。字型描述档28是用来 记录每一个字型是由那些笔划所组成,以及每个笔划的笔划码、关鍵点和宽 度值等笔划数据。字型描述档28包含有一索引表30以及每个字的笔划描述表 32。索引表30内含有每个字型的字码(WID)以及相对应的笔划描述表32的地 址。而笔划描述表32则是由一字型的各个笔划的数据结构所组成,就如同图3 所示的数据结构24,其内含有各个笔划的笔划数据:笔划码、关键点和宽度 值。这些笔划数据是依照一个预定的顺序来排列,例如像是写字时所用的笔 顺。在绘制一个字型的时候,只要找出该字型的字码,系统就会利用字型描 述档28的索引表30将该字型的笔划描述表32找出,然后再配合前述的笔划对 照表10将该字型的所有笔划逐一绘制在一个方框内以完成该字型的外框,最 后利用涂黑程序将该字型涂黑,即完成该字型的绘制。请参阅图5;图5为先前技术使用笔划组字技术显示小字型的示意图。笔 划组字技术用于显示小的字型时,各笔划之间的距离可能太近或太宽,造成 小字型的显示质量较差。发明内容本发明公开一种产生字型的方法,包含建立一笔划对照表,其包含多个 笔划码,及多个笔划程序,相对应于该多个笔划码,每一笔划码有其所对应 的起始点及结束点;建立多个笔划描述表,用来描述多个文字,每一笔划描 述表包含对应于一文字的笔划码,以及相对应于该文字的各笔划码的多个关 键点;根据一字型码,取得对应于该字型码的笔划描述表;根据对应于该字 型码的笔划描述表中的笔划码,其所对应的多个关键点、笔划程序、起始点 及结束点,绘制对应于该字型码的文字。附图说明图1为先前笔划对照表的数据结构。图2为先前技术中一笔划的外形轮廓以及各个关键点及宽度值的示意图。图3为图2笔划的数据结构的示意图。图4为先前字型描述档的数据结构的示意图。图5为先前技术使用笔划组字技术显示小字型的示意图。

图6至图10为选择笔划的起始点与结束点的示意图。图11为本发明所绘制出各字型的单线结构的示意图。图12至图14为调整笔划粗细的示意图。图15与图16分别为本发明以图12与图14的方式调整笔划粗细后的字 型的示意图。图17为本发明笔划的数据结构的示意图。图18为本发明笔划对照表的示意图。第19图为本发明字型描述档的数据结构的示意图。图20为本发明绘制字型的流程图。主要元件符号说明12 笔划程序 14 笔划码20 笔划 30 索引表46 起始点 47 结束点10、 40 笔划对照表 24、 44 笔划数据结构 28、 48 字型描述裆 32、 42 笔划描述表 具体实施方式本发明产生字型的单线结构后,再调整该字型各笔划的粗细,以达到显示高质量的小字型。首先,取得每一个笔划的单线结构的起始点(initial point)与结束点 (end point)。利用现有组字技术中的字型数据,如笔划外框字型(其为外框 内已至少部份涂黑的笔划)或纯外框字型(其为外框内未涂黑,而仅有外框的 笔划),这些字型是可以调整其大小的, 一般来说,大约使用300至500个笔 划即可组出一套中文繁体的字型数据。将这些笔划的粗细设定为零并绘制出 来,即可得到笔划的单线结构,如何选取笔划的单线结构的起始点与结束点, 在后有详细的说明。请参阅图6;图6为笔划r一」的外框结构,由于在绘制笔划外框字型 时,先前技术的笔划程序会根据该笔划的关键点与宽度值,计算出外框结构 的曲线,只要笔划的粗细不为零,则笔划的外框结构必为一封闭曲线,因此

从点A沿着箭头的方向绘制出图6的外框结构。请参阅图7;图7为图6中 笔划粗细为零的示意图。若笔划的粗细设为零,先前技术的绘制路径为从点 B向点C绘制,再从点C向点B绘制,不论粗细为何,先前技术的笔划程序 的绘制方式是将每一笔划视为一封闭曲线。本发明根据图7的单线结构设定 该笔划的起始点为B而结束点为C。因此当本发明使用笔划程序绘制如图7 的单线结构时,笔划程序只根据原本的关键点与所设定的起始点B与结束点 C,从点B绘制到点C便停止,不会再从点C向点B绘制回去。在本实施例中,大多数笔划的起始点为该笔划的第一个关键点,且大多 数笔划的结束点为该笔划的最后第 一个关键点。而其余笔划的起始点与结束 点则系由人工定义。请参阅图8至图10。图8为一非直线的笔划,从点D沿 着箭头的方向绘制。将图8的笔划的粗细设为零,可得到图9的单线结构, 由于先前技术绘制粗细为零的非直线笔划仍要计算图8外框结构的双边曲 线,因此虚线部分内的曲线不会重迭为单一曲线。因此当本发明绘制此非直 线笔划的单线结构时,笔划程序会根据原本的关键点与所设定的起始点E与 结束点F,从点E绘制到点F便停止,即可得到图10的单线结构,因此解决 了图9中曲线不重迭的问题。请参阅图11;图11为本发明所绘制出各字型的单线结构的示意图。 接着只要调整各字型中每一笔划的粗细,即完成字型的绘制。调整笔划粗细 有以下几种方式。请参阅图12;图12为调整笔划粗细的示意图。图12中的笔划为点G 至点H的直线笔划,以点G至点H所包含的每一个点(以黑点为标记)往右、 往下以及往右下延伸出另外三个点(以「叉」为标记),即画出宽度为两点的 字型。利用延伸的方式来调整笔划的粗细,所延伸的宽度与方向可依所需的 字型大小而定。请参阅图13;图13为调整笔划粗细的示意图。图13中的笔划为点I至 点J的直线笔划,以点I至点J所包含的每一个点为圓心,两点之间的距离 为半径画实心圓,即画出宽度为两点的字型。以画实心圆的方式来调整笔划 的粗细,半径的选取则视所需的字型大小而定。请参阅图14;图14为调整笔划粗细的示意图。图14中的笔划为点K至 点L的直线笔划,以点K至点L的直线笔划为基准,以灰度值渐减的方式向 下延伸。利用不同灰度值大小来显示字型,灰度值渐减的程度与宽度可视所

需的字型大小而定。请参阅图15与图16,分别为以图12与图14的方式调整笔划粗细后的 字型的示意图。图15与图16显示小字型的质量比图5的显示质量更好,因 此通过本发明可提高小字型的显示质量。本发明调整笔划粗细的方式并不局 限于上述的方式,其他任何可调整笔划粗细的方法亦为本发明所采用。当一显示系统显示字型在一显示幕时,可以先判断字型的大小,若属于 大字型,则选择先前技术的组字技术来绘制大字型;若属于小字型,则选择 本发明的组字技术来绘制小字型,以提升小字型的显示质量。以一套以先前 技术需要1. 2MB的数据量的繁体字为例,由于本发明绘制小字型时需增加各 个笔划的起始点与结束点数据,因此该显示系统大约会增加1.2KB(byte)的 数据量。或者,不论字型的大小,皆以本发明的组字技术来绘制,因此不须储存 原有的各笔划的宽度值,也就是图3数据结构24中的宽度值。请参阅图17 至图19,图17为本发明所需要的笔划数据结构44;图18为本发明笔划对照 表40的示意图;图19为本发明字型描述档48的示意图。图17的笔划数据 结构44与图19的笔划描述表42中没有宽度值这项数据,因此整个数据量可 从先前技术的1. 2MB降至L 0-1. 1MB。此外,本发明只需计算原本笔划外框字型的单边曲线,以及使用简易的 方式调整笔划粗细,相较于先前技术计算封闭曲线内的点,本发明产生字型 的速度可大幅提升。请参阅图20;图20为本发明绘制字型的流程图,步骤如下:步骤100: 先判断所要显示的字型大小,若为大字型,则进入步骤l(M; 若为小字型,则进入步骤102;步骤102: 根据该字型的字型码WID,取得相对应的笔划描述表42,再 根据笔划描述表42中各笔划的起始点46、结束点47、关键点以及笔划程序, 绘制出该字型的单线结构,接着进入步骤106;步骤104: 使用先前技术的笔划组字技术,绘制出该字型的外框,接着 进入步骤108;步骤106: 调整该字型中各笔划的粗细,接着进入步骤110; 步骤108: 利用涂黑程序将该字型涂黑,接着进入步骤110; 步骤110: 输出该字型,结束。

当然,图20也可省略步骤100,将所有字型皆以本发明的绘制方法来绘 制字型。本发明提供一种产生字型的方法,笔划程序根据笔划的关键点、起始点 与结束点来绘制出笔划的单线结构,待整个字型单线结构绘制完成后,再调 整各笔划的粗细即可。本发明的优点有:所需增加的数据量小,约1.2KB, 产生字型的速度快,以及小字型的显示质量高。此外,本发明不只可应用于 中文字型,其他结构性图形也可应用的。以上所述仅为本发明的优选实施例,凡依本发明权利要求所进行的等效 变化与修改,皆应属本发明的涵盖范围。

Claims (7)

1.一种产生字型的方法,包含: 建立一笔划对照表,其包含多个笔划码,及多个笔划程序,相对应于该多个笔划码,每一笔划码有其所对应的起始点及结束点; 建立多个笔划描述表,用来描述多个文字,每一笔划描述表包含对应于一文字的笔划码,以及相对应于该文字的各笔划码的多个关键点; 根据一字型码,取得对应于该字型码的笔划描述表;及 根据对应于该字型码的笔划描述表中的笔划码,其所对应的多个关键点、笔划程序、起始点及结束点,绘制对应于该字型码的文字。
2. 如权利要求1所述的方法,还包含在一笔划码的外框字型的宽度为零 时,绘制相对应的笔划,及裉据该笔划的第一个关键点设定该笔划的起始点, 并根据该笔划的最后一个关键点设定该笔划的结束点。
3. 如权利要求1所述的方法,还包含在一笔划码的纯外框字型的宽度为 零时,绘制相对应的笔划,及根据该笔划的第一个关键点设定该笔划的起始 点,并—艮据该笔划的最后一个关^r建点设定该笔划的结束点。
4. 如权利要求1所述的方法,其中绘制对应于该字型码的文字包含调整 该文字的各个笔划的粗细。
5. 如权利要求4所述的方法,其中调整该文字的各个笔划的粗细包含自该文字的各个笔划所包含的点往多个方向延伸。
6. 如权利要求4所述的方法,其中调整该文字的各个笔划的粗细包含以 该文字的各个笔划所包含的点为圆心绘制实心圓。
7. 如权利要求4所述的方法,其中调整该文字的各个笔划的粗细包含自 该文字的各个笔划以灰度值渐减的方式向一预定方向延伸。
CN 200610121548 2006-08-22 2006-08-22 产生字型的方法 CN101131687A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200610121548 CN101131687A (zh) 2006-08-22 2006-08-22 产生字型的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200610121548 CN101131687A (zh) 2006-08-22 2006-08-22 产生字型的方法

Publications (1)

Publication Number Publication Date
CN101131687A true CN101131687A (zh) 2008-02-27

Family

ID=39128957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200610121548 CN101131687A (zh) 2006-08-22 2006-08-22 产生字型的方法

Country Status (1)

Country Link
CN (1) CN101131687A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010006512A1 (zh) * 2008-07-18 2010-01-21 常州华文印刷新技术有限公司 文字的显示方法、检索方法及显示设备
CN103700363A (zh) * 2012-09-27 2014-04-02 文鼎科技开发股份有限公司 显示器的字型产生系统和显示器的字型产生方法
CN104699394A (zh) * 2013-12-09 2015-06-10 联想(北京)有限公司 一种信息处理方法及电子设备
WO2019119443A1 (zh) * 2017-12-22 2019-06-27 深圳市柔宇科技有限公司 一种笔迹调整的方法以及显示设备

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010006512A1 (zh) * 2008-07-18 2010-01-21 常州华文印刷新技术有限公司 文字的显示方法、检索方法及显示设备
CN101630311B (zh) 2008-07-18 2011-05-04 常州华文印刷新技术有限公司 一种文字的显示方法及显示设备
CN103700363A (zh) * 2012-09-27 2014-04-02 文鼎科技开发股份有限公司 显示器的字型产生系统和显示器的字型产生方法
CN104699394A (zh) * 2013-12-09 2015-06-10 联想(北京)有限公司 一种信息处理方法及电子设备
CN104699394B (zh) * 2013-12-09 2018-08-31 联想(北京)有限公司 一种信息处理方法及电子设备
WO2019119443A1 (zh) * 2017-12-22 2019-06-27 深圳市柔宇科技有限公司 一种笔迹调整的方法以及显示设备

Similar Documents

Publication Publication Date Title
US8514243B2 (en) Methods, systems, and programming for producing and displaying subpixel-optimized font bitmaps using non-linear color balancing
US6377262B1 (en) Rendering sub-pixel precision characters having widths compatible with pixel precision characters
JP5362162B2 (ja) テキスト文字のステムの場所の自動最適化
US6760029B1 (en) Generating a glyph
EP0671037B1 (en) Method and system for creating, specifying, and generating parametric fonts
US5325479A (en) Method and apparatus for moving control points in displaying digital typeface on raster output devices
US5159668A (en) Method and apparatus for manipulating outlines in improving digital typeface on raster output devices
US20040088657A1 (en) Method for selecting a font
US7219309B2 (en) Innovations for the display of web pages
US7920149B2 (en) Rollback in a browser
US20040183817A1 (en) Methods, systems, and programming for scaled display of web pages
JP3072250B2 (ja) グリッド・フィッティド・フォントのグレイスケール処理を用いたフォント・レンダリング方法
US20070174291A1 (en) Dynamic optimization of available display space
EP0632396A2 (en) Method and system for providing substitute computer fonts
US5715473A (en) Method and apparatus to vary control points of an outline font to provide a set of variations for the outline font
CN101551724B (zh) 在触摸屏上书写文字的方法与装置
US20050144565A1 (en) Electronic publication and methods and components thereof
EP0786757B1 (en) Adjusting contrast in antialiasing
US20050268216A1 (en) System and method for displaying images
US6339426B1 (en) Methods, apparatus and data structures for overscaling or oversampling character feature information in a system for rendering text on horizontally striped displays
US6738526B1 (en) Method and apparatus for filtering and caching data representing images
US6870535B2 (en) Font architecture and creation tool for producing richer text
WO2000057305A1 (en) Methods and apparatus for positioning displayed characters
EP0924650A2 (en) Method of generating multiple master typefaces containing kanji characters
JP2003271125A (ja) 画像表示装置、画像表示方法、及び画像表示プログラム

Legal Events

Date Code Title Description
C06 Publication
C10 Request of examination as to substance
C02 Deemed withdrawal of patent application after publication (patent law 2001)