桌面操作系统中机械工程字符矢量字体输出方法和系统与流程

文档序号:11133290阅读:348来源:国知局
桌面操作系统中机械工程字符矢量字体输出方法和系统与制造工艺

本发明涉及字符处理技术,更具体的说,是涉及一种桌面操作系统中机械工程字符矢量字体输出方法和系统。



背景技术:

机械行业的工艺卡片页面与EXCEL页面有着高度相似,这两种软件间的信息互转将会成为一种趋势。但现有工艺卡片包含大量的机械领域的特殊工程符合,无法标准化处理。

Microsoft Office Excel(以下简称MSOE)是经常需要用到的办公软件,它不仅提供了文字处理、表格制作、图形显示,数据加工等功能,支持用户自定义字体混用排版。

机械加工过程中需要用到很多机械符号,但在MSOE和其他自制软件中,要么不能直接输出,要么不能批量输出,严重制约着制图、制表的效率。而针对机械领域特殊符号的需求,通过仔细研习已有字体的生成和显示原理。发现所有字体文件中的字符都有对应的unicode码值,不同文件的相同字符对应的编码值是相同的,只是格式不同。而且当键入一个字符的时候,其实键入的是编码值,然后MSOE根据选择的字体格式,找到该文件中编码值对应的字符。改变字体文件中编码对应的字体符号,会改变MSOE对该字体符号的输出。那么创建自定义的字体符号在MSOE中输出,是完全可能的。



技术实现要素:

有鉴于此,有必要针对上述问题,提供一种桌面操作系统中机械工程字符矢量字体输出方法和系统,针对特定的行业,制作相应的字体,方便该行业人员使用。

为了实现上述目的,本发明的技术方案如下:

一种桌面操作系统中机械工程字符矢量字体输出方法,包括以下步骤:

S1、对机械工程字符进行抽象化处理,根据符号的复杂性、常用性的特征,对相应字符归纳总结,划分为常用字符和拼接字符;

S2、对拼接字符抽象出初始基本元素集,先后按照初始基本元素是否可以融合以满足存储空间较小的要求、算法实现字符拼接的难易程度及基本元素所能使用范围的大小,确定最终字符元素的基本元素集;

S3、确定相应基本元素在字体文件的位置,并绘制对应字符元素符号;对于常用字符和不具有规律的拼接字符自行选择合适的连续区域位置,绘制字符;完成字体文件的制作、保存和安装;

S4、判断目标输出字符是否为常用字符,若是常用字符,则提取相应的字体文件并输出,若是拼接字符,则对目标拼接字符分解,确定基本元素,选择拼接方法,拼接目标字符并输出。

作为优选的,所述步骤S2中,按照包围型字符、上下标型字符、分母分子型字符、复合拼接型字符及常用字符对机械工程字符进行拆分并提取基本元素。

作为优选的,在步骤S3中,所述常用字符包括机械常用字符,包括粗糙度全跳动圆柱度对称度

作为优选的,在步骤S4中,所述包围型字符的拼接方法包括:

采用加法运算进行拼接,采用圆形、正方形加法运算拼接目标字符时,无论单位、还是双位,在字符前后,需各添加一个空格,使字符在图形符号中居中显示,采用正三角、倒三角加法运算拼接目标字符时,无论单、双位,在字符前后,需各添加两个空格,使字符在图形符号中居中显示。

作为优选的,在步骤S4中,所述上下标型字符的拼接方法包括:采用加法运算进行拼接;上下标型字符分为上下标都有型、只有上标型和只有下标型三种类型;

对于上下标都有型字符,首先得到上标长度与下标长度及相互关系,然后先输出基数,按上标输出一个字符,下标输出一个字符的顺序输出上下标等长的部分,若上标长度小于下标长度,则单独输出下标剩余的部分,若上标长度等于下标长度,输出字符结束,若上标长度大于下标长度,则按输出一个上标一个字符,然后输出一个空格的顺序,输出所有上标剩余字符。

作为优选的,在步骤S4中,所述分子分母型字符的拼接方法包括:首先计算分子、分母的长度,然后分子分母中较长字符串长度减去较短字符串长度,再除以2取整得到较短字符串居中显示的初始位置;

输出较长字符串中,位于居中显示初始位置之前的字符串时,按照输出一个较长字符串中的字符,然后输出一个横线的顺序输出较短字符串初始位置之前的较长字符串中的字符;

按照先输出较短字符串中的一个字符,然后输出较长字符串中的字符,再输出横线的顺序,直至较短字符串完全输出;

按照先输出较长字符串中剩余字符串的一个字符,然后输出横线的顺序,直至较长字符串完全输出。

作为优选的,在步骤S4中,对于复合拼接型字符,采用加法运算拼接符合字符串。

作为优选的,所述步骤S4中,还包括对字符元素地址及字符所述类型进行计算;根据字符定位公式P=(176+H)*256+161+(A-48),在ASCII码值找到它在字体文件中所对应的位置,式中,P表示在字体文件字符区中的位置,用10进制值表示;176的16进制表示为B0,是字体文件中汉字区开始的标志,BO为GBK编码的高位;H表示字符的权值;256为汉字为双字节,高位占一个字节;48为“0”的ASCII码值;A为输入的数字0~9或者大写字母A~Z或者小写字母a~z的ASCII码值。

一种根据上述方法的桌面操作系统中机械工程字符矢量字体输出系统,包括数据库模块、字符定位模块、字体制作模块、字符输出模块;

所述数据库模块用于存储拼接字符的基本元素集、常用字符和特殊字符元素;

所述字符定位模块用于根据字符元素所属的类别确定权值H和字符元素的ASCII值,并由字符定位公式,计算字符元素在字体文件中的地址;

所述字体制作模块用于判断目标输出字符是为常用字符或拼接字符,对目标拼接字符分解,确定基本元素,并拼接目标字符;

所述字符输出模块用于对拼接字符、常用字符和特殊字符元素进行输出显示。

与现有技术相比,本发明的有益效果在于:

1、字体可以在MSOE中直接输出,方便使用;

2、制作的字体便于组织和管理,当需要相应字体时,安装即可使用;

3、可以针对特定的行业,制作相应的字体,方便该行业人员使用;

4、在工艺文档或报表中输出的字符,打印清晰,质量高。

附图说明

图1为本发明实施例中方法流程框图;

图2为本发明实施例中方法的字符输出流程框图;

图3为本发明实施例中系统结构框图;

图4为本发明实施例中字体制作流程框图;

图5位本发明是实施例中的系统的字符输出的流程图。

具体实施方式

下面结合附图和实施例对本发明所述的一种桌面操作系统中机械工程字符矢量字体输出方法和系统作进一步说明。

以下是本发明所述的桌面操作系统中机械工程字符矢量字体输出方法和系统的最佳实例,并不因此限定本发明的保护范围。

图1和图2示出了一种桌面操作系统中机械工程字符矢量字体输出方法,包括以下步骤:

S1、对机械工程字符进行抽象化处理,根据符号的复杂性、常用性的特征,对相应字符归纳总结,划分为常用字符和拼接字符;

S2、对拼接字符抽象出初始基本元素集,先后按照初始基本元素是否可以融合以满足存储空间较小的要求、算法实现字符拼接的难易程度及基本元素所能使用范围的大小,确定最终字符元素的基本元素集;

S3、确定相应基本元素在字体文件的位置,并绘制对应字符元素符号;对于常用字符和不具有规律的拼接字符自行选择合适的连续区域位置,绘制字符;完成字体文件的制作、保存和安装;

S4、判断目标输出字符是否为常用字符,若是常用字符,则提取相应的字体文件并输出,若是拼接字符,则对目标拼接字符分解,确定基本元素,选择拼接方法,拼接目标字符并输出。

作为优选的,所述步骤S2中,按照包围型字符、上下标型字符、分母分子型字符、复合拼接型字符及常用字符对机械工程字符进行拆分并提取基本元素。

作为优选的,在步骤S3中,所述常用字符包括机械常用字符,包括粗糙度全跳动圆柱度对称度

在本实施例中等包围型字符,就是机械行业很常用的字符,由数字、字母、汉字等其他字符,及图形符号组成。对于图形符号,如等,本可以将其拆分为离散的直线作为基本元素。而采用这种方式抽象出的最基本元素,虽然可以拼接的特殊符号的范围广,但是会使的最基本元素的种类和数量剧增,增大存储空间,增加拼接的难度。如果将像等简易符号,作为一个基本元素,会大大减小字符的存储空间,并便于拼接,且这类图形符号输出时并不占位(光标在图形符号前)。单位是指图形符号中只含一个字符,双位是指图形符号中含有两个字符。

包围型字符采用“加法”运算拼接即可得到目标字符,如下所示:

采用圆形(偏中区)、正方形(偏中区)“加法”运算拼接目标字符时,无论单位、还是双位,在字符前后,需各添加一个空格,以便字符在图形符号中居中显示。如下所示:

(字符n属于偏中单位字符)

(字符A属于偏中双位字符)

(字符d属于偏中单位字符)

(字符a、B属于偏中双位字符)

采用正三角(偏下区)、倒三角(偏上区)“加法”运算拼接目标字符时,无论单、双位,在字符前后,需各添加两个空格,以便字符在图形符号中居中显示。如下所示:

(字符M属于偏上单位字符)

(字符A、1属于偏下双位字符)

在本实施例中,7+0.452、5-0.291等上下标型字符,分为上下标都有型、只有上标型和只有下标型三种类型。这类字符在机械零部件表格、图纸中,十分常见,由数字、加、减号和点组成,基本元素较简单,输出时,上标不占位,下标占位。亦可采用“加法”运算,如下所示:

1)上下标都有型,如“加法”运算时,程序首先得到上标长度与下标长度及相互关系,然后先输出基数4,按上标输出一个字符,下标输出一个字符的顺序输出上下标等长的部分,然后:

a)若上标长度小于下标长度,则单独输出下标剩余的部分。

b)若上标长度等于下标长度,输出字符结束。

c)若上标长度大于下标长度,则按输出一个上标一个字符,然后输出一个空格的顺序,输出所有上标剩余字符。

2)只有下标型,如5-0.291。则先输出基数5,然后按顺序输出所有下标字符。

3)只有上标型,如7+0.452。则先输出基数7,然后按输出一个上标字符,输出一个空格的顺序,直至输出所有上标字符。

在本实施例中,分子分母型字符,如等,是常用的字符。由大小写字母、数字和横线-组成基本元素,在进行字符拼接“加法”运算时,分子字符和分母字符并不占位,但横线占位。字符输出显示时,程序首先计算分子、分母的长度,然后分子分母中较长字符串长度减去较短字符串长度,再除以2取整得到较短字符串居中显示的初始位置,然后:

1)输出较长字符串中,位于居中显示初始位置之前的字符串时,按照输出一个较长字符串中的字符,然后输出一个横线的顺序输出较短字符串初始位置之前的较长字符串中的字符。

2)按照先输出较短字符串中的一个字符,然后输出较长字符串中的字符,再输出横线的顺序,直至较短字符串完全输出。

3)按照先输出较长字符串中剩余字符串的一个字符,然后输出横线的顺序,直至较长字符串完全输出。

在本实施例中,复合字符拼接型,如及形位公差符号等,用于机械制图,由等组合元素和等形位符号及汉字、字母组成。组合元素不占位,形位符号、汉字、字母均占位,亦采用“加法“运算拼接复合字符串,如下所示:

(特殊符号,圆不占位,正方形占位。)

在本实施例中,常用字符,如等粗糙度符号,等机械特殊符号,等定制符号及其他形式的符号,无需拼接,直接使用,十分简便,高效。

如图2所示,字体文件中上标符号、下标符号、偏上单双位符号、偏中单双位符号、偏下单双位符号等英文字母和数字符号,都是有规律的符号,并且需要和圆、正方形、正三角、下三角等图形符号进行组合。为了实现高效的字符拼接算法,需要能够使用该英文字母和数字字符本身的ASCII码值找到它在字体文件中所对应的位置,这里给出一个字符定位公式(根据需要可以对该公式变形以满足特定需求):

P=(176+H)*256+161+(A-48)

在公式中:

P:P表示在字体文件字符区中的位置,用10进制值表示。如字体文件GBK编码B1A1(16进制)所表示的位置,十进制表示为45473.

176:176的16进制表示为B0,这是字体文件中汉字区开始的标志,BO为GBK编码的高位,如汉字区的第一个汉字“啊”,对应的位置为B0A1。

H:权值,根据字符特征人为设定的值,不同字符的权值如下:

上标字符:1;

下标字符:2;

偏上单位字符:3;

偏上双位字符:4;

偏中单位字符:5;

偏中双位字符:6;

偏下单位字符:7;

偏下双位字符:8;

256:汉字为双字节,高位占一个字节,即2的8次方,为256。

161:为偏移量,B000~B0A1为161个空白区。

A:输入的数字0~9或者大写字母A~Z或者小写字母a~z的ASCII码值,如输入“A的ASCII码值64.

48:为“0”的ASCII码值,之所以这么设置,是因为0~9,大写字母A~Z,小写字母a~z所对应的ASCII码值是在一个相对连续的区域(0~9与A~Z之间断开7个,A~Z与a~z之间断开6个),小写z的ASCII码值最大为122,减去48为74。B0到B1之间有96个位置,所以不会超出范围,而且0~9、A~Z、a~z也会在字体文件编码区中相对连续的位置。

如图3至图5所示,本实施例中,还提供了一种根据上述方法的桌面操作系统中机械工程字符矢量字体输出系统,包括数据库模块、字符定位模块、字体制作模块、字符输出模块;

所述数据库模块用于存储拼接字符的基本元素集、常用字符和特殊字符元素;

所述字符定位模块用于根据字符元素所属的类别确定权值H和字符元素的ASCII值,并由字符定位公式,计算字符元素在字体文件中的地址;

所述字体制作模块用于判断目标输出字符是为常用字符或拼接字符,对目标拼接字符分解,确定基本元素,并拼接目标字符;

所述字符输出模块用于对拼接字符、常用字符和特殊字符元素进行输出显示。

如图5所示,字符输出模块的主要步骤为:

1、判断目标输出字符是否为常用字符,若是常用字符,进入字符定位模块,执行步骤3。

2、对目标拼接字符分解,确定基本元素,进入字符定位模块,然后确定目标拼接字符的类型。

1)若是包围型字符,进一步确定属于偏上区字符、偏中区字符和偏下区字符中哪一类。根据目标拼接字符分解的基本元素、字符定位模块输出的字符元素地址及字符所属区的拼接算法,拼接目标字符。

2)若是上下标型字符,进一步确定属于上下标都有型、只有上标型、只有下标型哪一类。根据目标拼接字符分解的基本元素、字符定位模块输出的字符元素地址及字符所属类型的拼接算法,拼接目标字符。

3)若是分子分母型字符,根据目标拼接字符分解的基本元素、分子分母型字符的输出规则及字符定位模块输出的字符元素地址,拼接目标字符。

4)若是复合拼接型字符,根据目标拼接字符的基本元素,结合字体文件中的基本特征元素和字符定位模块输出的字符元素地址,选择合适的拼接方法(不唯一),快速、高效拼接目标字符。

与现有技术相比,本发明的有益效果在于:

1、字体可以在MSOE中直接输出,方便使用;

2、制作的字体便于组织和管理,当需要相应字体时,安装即可使用;

3、可以针对特定的行业,制作相应的字体,方便该行业人员使用;

4、在工艺文档或报表中输出的字符,打印清晰,质量高。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1