汉字的矢量数据是怎样得到的
发布网友
发布时间:2022-04-24 22:30
我来回答
共1个回答
热心网友
时间:2023-10-13 09:47
每个汉字的矢量数据都由一指针指向。每个汉字矢量数据指针占6个字节, 其格式为:前4个字节为汉字的矢量数据在文件中的偏移, 后2个字节为汉字的矢量数据的长度。
汉字指针在指针区的偏移由公式计算:pos=((qu-16)*94+wei-1)*6。
注:qu--区号。wei--位号。
汉字的矢量数据格式为:控制码+坐标值。共有十种控制码,以下是控制码的 含义:
(1)若控制码第7,6位为11,清除码,结束当前笔划,将第一个坐标与当前坐
标连线;建立新笔划,(X,Y)各占7位,由控制码的第5位开始,即:11XXXXXX XYYYYYYY。
注:一个字节的位:
7 6 5 4 3 2 1 0
X X X X X X X X
(2)若控制码小于等于0x40,之后控制码大小个字节为坐标值,每个坐标占一个字节,共有控制码大小个坐标,(X,Y)坐标各占4位,其自的最高位为符号位, 即:FXXXFYYY。
(3)若控制码的高4位等于4,之后控制码的低4位大小个字节为坐标值,每个坐标占一个字节,共有控制码大小个坐标,(X,Y)坐标各占4位,X为正,Y为正,即:+XXXX+YYYY。
(4)若控制码的高4位等于5,之后控制码的低4位大小个字节为坐标值,每个坐标占一个字节,共有控制码大小个坐标,(X,Y)坐标各占4位,X为负,Y为正,即:-XXXX+YYYY。
(5)若控制码的高4位等于6,之后控制码的低4位大小个字节为坐标值,每个坐标占一个字节,共有控制码大小个坐标,(X,Y)坐标各占4位,X为负,Y为负,即:-XXXX-YYYY。
(6)若控制码的高4位等于7,之后控制码的低4位大小个字节为坐标值,每个坐标占一个字节,共有控制码大小个坐标,(X,Y)坐标各占4位,X为正,Y为负,即:+XXXX-YYYY。
(7)若控制码等于0x80, 其后1字节为Y坐标值, 最高位为符号位, X坐标不 变, 即:10000000 FYYYYYYY。
(8) 若控制码等于0x90, 其后1字节为X坐标值, 最高位为符号位, Y坐标不 变,即:10000001 FXXXXXXX。
(9) 若控制码的高4位等于8,其后1字节为Y坐标值,控制码的低4位值为X坐标值,X坐标各占4位,最高位为符号位,Y坐标各占8位,最高位为符号位, 即:1000FXXXFYYYYYYY。
(10)若控制码的高4位等于9,其后1字节为X坐标值,控制码的低4位值为Y坐标值,Y坐标各占4位,最高位为符号位,X坐标各占8位,最高位为符号位, 即:1000FYYYFXXXXXXX。