拼音汉字字符的输出方法和拼音汉字字符的输出装置的制造方法_4

文档序号:9726968阅读:来源:国知局
7] 在该技术方案中,在汉字为多音字时,通过将该多音字的每一个拼音生成一个拼 音字库的TTF文件,多个拼音生成多个字库TTF文件,然后多个TTF字库文件组成TTC字库 家族的形式,多个拼音字库之间按照拼音音调的顺序进行排列,用户根据需要自行选择不 同的拼音字库即可,灵活性较好,但是多音字有多少个拼音,就需要生成多少个拼音字库文 件,占用大量的存储空间。
[0108] 在上述技术方案中,优选地,所述数据合成单元3042,还用于,在所述汉字为多音 字时,根据输入的与每个拼音元件对应的音调,将所述音调对应的拼音字形GLYPH曲线轮 廓数据与所述汉字字符字型的GLYPH数据进行叠加,以输出所需的拼音汉字字符。
[0109] 在该技术方案中,在汉字为多音字时,配合拼音音调输入法,通过拼音音调输入法 来输入某个汉字的音调,拼音字库接收到该汉字的指定音调后,通过在拼音字库内将该汉 字的汉字字符字型的GLYPH数据与该汉字当前指定音调的拼音字形GLYPH曲线轮廓数据进 打动态置加后,输出置加后的拼首汉子子符。
[0110] 下面结合图4至图12详细说明本发明的实施例的拼音汉字字符的输出方法。
[0111] 步骤1,创建汉字与拼音对应关系的集合,其包括构成古琴减字谱字符的汉字与拼 首兀件库。
[0112] 整理汉字拼音,包括多音字,一字一音、一字多音的情况;形成汉字拼音数据,包 括:汉字、拼音,拼音含声调,包括第一声,(阴平,或平调," 第二声,(阳平,或升调, " μ')、第三声,(上声,或上音,"v")、第四声,(去声,或去音," 以及一种特殊声调, 叫做轻声,有时也叫第五声;整理后的汉语拼音按照元音和辅音的发音升序进行排列,即: ?>?>α>?>α?>??>??>α?>??>αη>?η>?η>αη>?η> ang> ang> ang> ang> ang··· zuo> zu5> zuo> ζιιδ、zu0 等。
[0113] 在整理拼音顺序后,按照每个拼音按照字母发音的先后顺序,建立索引,然后建立 基于标准TTF格式的每个拼音字形数据GLYPH曲线轮廓,该拼音曲线轮廓在TTF格式中为 三次或二次贝塞尔曲线形式,可以无限缩放不变形,保证了拼音字符的显示质量。在标准 TTF格式中,每个拼音曲线轮廓依次存储,这里对应的轮廓曲线索引为该索引为字库中字形 数据GLYPH曲线数据的索引值,通过该索引值可以快速在字库中定位到拼音字形轮廓曲线 数据;例如:δ(在TTF格式中δ曲线轮廓存储的索引为7444)、? (在TTF格式中δ曲线轮廓 存储的索引为7445)、δ (在TTF格式中δ曲线轮廓存储的索引为7446)、? (在TTF格式中δ 曲线轮廓存储的索引为7447)。
[0114] 然后,建立起汉字、与拼音元件的对应关系集合,包括汉字、汉字的标准UNICODE 唯一编码、拼音兀件的索引关系,如表1所7K。
[0117] 表 1
[0118] 此外,汉字的字型、拼音本身的字型,可以多样的,既可以是楷体汉字字型、楷体拼 音字型,也可以是黑体汉字字型、黑体拼音字型,等等;一般是楷体汉字字型和楷体拼音字 型搭配,黑体汉字字型和黑体拼音字型搭配,同样的字型与同样的拼音搭配视觉上比较美 观,当然也可以一种汉字字型与不同的拼音字型搭配。
[0119] 图4至图6示出了根据本发明的优选实施例的汉字拼音的部分元件。图4示出了 根据本发明的优选实施例的拼音元件的示意图,从图5可以看出,汉字+拼音的复合字符就 是由汉字+拼音元件构成。通过构建该元件集合,就可以利用计算机编程技术,根据与汉字 拼音的对照关系,在汉字的不同位置进行复合叠加,从而自动地生成复合拼音汉字字符。
[0120] "啊"字的楷体笔型拼音元件样例,如图4所示。
[0121] 生成后的楷体笔型的复合拼音汉字字符样例,如图5所示。
[0122] 这里以"方正楷体拼音字库"为例进行说明,如图6所示。
[0123] 楷体字型和楷体拼音字型图,黑体字型和黑体拼音字型,如表2所示。
[0124]
[0125] 表 2
[0126] 步骤2,确定汉字与拼音组合的位置结构和排版方向,并组成含有拼音字符的拼音 复合字。
[0127] 在已有标准字库的基础上,逐一按照已有汉字标准的Unicode编码(以汉字"啊" 为例,"啊"的16进制的UNICODE唯一编码为0X554A),找到对应的汉字字符字型GLYPH数 据基础,"啊"这个汉字在TTF字库格式里曲线字型轮廓索引值为680,这个字是多音字,其 对应的拼音四个,即:δ(在TTF格式中δ曲线轮廓存储的索引为7444)、?(在TTF格式中δ 曲线轮廓存储的索引为7445)、δ (在TTF格式中δ曲线轮廓存储的索引为7446)、? (在TTF 格式中δ曲线轮廓存储的索引为7447),将汉字曲线轮廓与拼音字形曲线轮廓,通过如下两 种方式将四个拼音δ、?、δ、?与该汉字"啊"字形轮廓曲线进行叠加在一起。
[0128] 实施方式一
[0129] 通过复制、粘贴等手段,将对应的拼音字形GLYPH曲线轮廓数据(指δ、?、δ、?),直 接复制到当前汉字"啊"字符字型GLYPH数据上,并确保汉字和拼音不会相互覆盖,其间距、 相对位置、方向,可以通过调节拼音字形GLYPH曲线轮廓数据进行调节,从而实现每个汉字 字符字型GLYPH轮廓曲线与拼音字形GLYPH曲线轮廓的静态叠加。
[0130] 此种方式由于可以直接调整汉字和拼音的距离、方向等,与现有技术中拼音的左 右间隔疏松容易错位相比,提升了拼音汉字字符排版的美观性,但是由于同音字过多,会导 致有相同的拼音轮廓曲线数据重复存储,而且无法批量调整拼音与汉字之间的距离、相对 位置、方向,因此,此种方式生成的拼音字库适用于对存储空间不敏感而对美观度要求高的 场合。
[0131] 实施方式二
[0132] 通过利用引入拼音字形GLYPH曲线轮廓数据的索引值:δ(7444)、?(7445)、 δ (7446)、0(7447),结合引入值的位置坐标参数,将拼音字形GLYPH曲线轮廓数据动态赋值 到汉字字符字型GLYPH曲线轮廓指定的X、Y坐标上,通过位置坐标参数的不断的动态调整, 可以调节拼音在汉字不同方位上的展现,也即通过位置坐标参数调整,可以将汉字对应的 拼音动态指定到每个汉字不同的位置上,包括汉字的上、下、左、右以及正反双向,一个汉字 可以仅指定一个拼音,也可以指定多个不同的拼音。
[0133] 此种方式由于可以通过调整位置坐标参数动态调整汉字与拼音之间的距离、方向 等,因此拼音汉字字符中拼音的位置调整具有很强的灵活性,同时,由于可以多个字共用同 一个拼音字形GLYPH轮廓曲线(多个字同音时,每个字有各自的位置坐标参数,但可以共 用拼音字形GLYPH轮廓曲线),特别节省存储空间,而且还可以批量的动态调整汉字与拼音 之间的位置和方向等,但是由于可以动态调整,从调整到生成拼音字库,相对于直接复制而 言,需要多花费一些时间,此种方式生成的拼音字库适用于对存储空间敏感且对灵活性要 求高的场合。
[0134] 具体方法:
[0135] Glyph 0X554A: off = 0x003D061E(偏移量),len = 26 (轮廓数据长度)
[0136] Composite :标志位,表示是复合字,还是非复合字
[0137] 0 (表示非复合字型,单体字)
[0138] 1 (表示复合字型,允许一个汉字叠加若干个拼音)
[0139] numberOfContours:曲线轮廓的数量
[0140] 1(表示1轮廓数,非复合叠加)
[0141] 2 (表示2,一个汉字叠加1个拼音)
[0142] 3 (表示3, 一个汉字叠加2个拼音)
[0143] 4 (表示4字型,一个汉字叠加3个拼音)
[0144] xMin: 13// "啊"字0X554A的轮廓复合叠加拼音轮廓后的X方向最小坐标
[0145] yMin:72// "啊"字0X554A的轮廓复合叠加拼音轮廓后的Y方向最小坐标
[0146] xMaX:235// "啊"字0X554A的轮廓复合叠加拼音轮廓后的X方向最大坐标
[0147] yMax:308// "啊"字0X554A的轮廓复合叠加拼音轮廓后的Y方向最大坐标
[0148] 0:Flags:0x0027,标志位,表示主汉字曲线轮廓,等待拼音曲线轮廓的叠加,主汉 字一般不进行平移、旋转、缩放。
[0149] Glyf Index:680// "啊"的汉字轮廓索引
[0150] X W0ffset:0//X方向偏移量,逻辑计算用,0表示不偏移
[0151] Y 1(^€8610/八方向偏移量,逻辑计算用,0表示不偏移
[0152] Other:Round X, Y to Grid
[0153] 1: Flags: 0x0007//表示将要叠加的拼音曲线轮廓
[0154] Glyf Index: 7444//? (7444)拼音的曲线轮廓索引
[0155] X WOffset :50//拼音曲线轮廓的X方向偏移50像素
[0156] Y WOff set :50//拼音曲线轮廓的Y方向偏移50像素
[0157] 0ther:Round X,Y to Grid,Transformation Option,用于当前曲线轮廓是否进行 缩放,即缩放的比例参数等;根据这个参数,可以将拼音曲线轮廓进行缩放和旋转。
[0158] 1: Flags: 0x0007//表示将要叠加的拼音曲线轮廓
[0159] Glyf Index :7445//? (7445)拼音的曲线轮廓索引
[0160] X WOffset :-50//拼音曲线轮廓的X方向偏移-50像素
[0161] Y W0ffSet:-50//拼音曲线轮廓的Y方向偏移-50像素
[0162] Other:Round X,Y to Grid,Transformation Option 用于当前曲线轮廓是否进行 缩放,即缩放的比例参数等;根据这个参数,可以将拼音曲线轮廓进行缩放和旋转。
[0163] 通过参数的设置,进行平移运算,可以达到如图7至图8的动态叠加效果,可以仅 叠加一个拼音在"啊"字的周围(如图7所示),也可以四个拼音轮廓同时叠加复合在汉字 "啊"字的周围(如图8所示)。
[0164] 合成后的拼音汉字,全部基于标准的Unicode进行编码。因此,合成后的"啊"字 的UNICODE编码仍然为0X554A,编码没有改变。
[0165] 上述两种实施方式,与目前录入汉字后再逐字适配拼音的方式比较,都能大幅提 高工作效率和排版的美观性,且能够保证汉字与
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1