发布信息

一种字库合并方法及系统与流程 专利技术说明

作者:admin      2022-11-30 06:05:01     605



计算;推算;计数设备的制造及其应用技术1.本发明涉及计算机文字处理技术领域,尤其涉及一种字库合并方法及系统。背景技术:2.目前所有的信息系统和操作系统中,如果想要在同一段文字中显示不同的字型,都需要切换不同的字库来完成,因为一种标准字库仅能存储和显示一种字型,例如,宋体字库只能显示单一的宋体字型,黑体字库只能显示单一的黑体字型,楷体字库只能显示单一的楷体字型,以此类推,对于某些个性化文档来说,其中的文字段落需同时显示几种字型,例如在需要显示不同的字型时,就必须选择不同的字库,当要选择的字库不存在的时候,还需要下载、安装字库,过程比较繁琐,而且存储多种字库还浪费了存储空间,因此需要一种新型多字型字库显示不同的字型。3.点阵屏显示要求自制不同字号大小以及不同字体的字库,目前合并多个字库的基本方法是:通过ultraedit工具将每个字库文件打开,然后将多个字库的内容黏贴复制到一个字库中,通过地址计算确定地址的分布情况。此种字库合并方法操作复杂而且极易出错,将导致字库读取时出现乱码或读取的不是正确的字符问题。技术实现要素:4.本发明提供一种字库合并方法及系统,解决了现有的字库合并方法操作复杂而且极易出错的技术问题。5.为解决以上技术问题,本发明提供一种字库合并方法,包括步骤:6.s1、从待合并字库中获取第一目标字库和第二目标字库;7.s2、分别计算所述第一目标字库、所述第二目标字库的第一字库长度、第二字库长度;8.s3、根据所述第一字库长度、第二字库长度,依次确定所述第一目标字库、所述第二目标字库在目标合并字库中的第一存储地址、第二存储地址;9.s4、判断所有的所述待合并字库是否均合并完成,若是则结束本次合并操作,若否则返回步骤s1。10.本基础方案基于字库的合并需求,依次序地获取两组待合并字库(即第一目标字库和第二目标字库)进行一对一合并;根据第一字库长度、第二字库长度,依次确定第一目标字库、第二字库长度在目标合并字库的第一存储地址、第二存储地址,两两一组的合并方式,简洁明了,简化了字库整合过程,整合字库时不易出现失误,可明晰字库地址,直接调用。11.在进一步的实施方案中,所述步骤s1包括步骤:12.s11、获取两个以上的待合并字库;13.s12、按照预设规则选取两个所述待合并字库作为第一目标字库和第二目标字库。14.在进一步的实施方案中,所述步骤s2具体为:计算出当前输入的第一目标字库含有数据的最大值,作为第一字库长度;计算出当前输入的第二目标字库含有数据的最大值,作为第二字库长度。15.在进一步的实施方案中,所述步骤s3包括步骤:16.s31、设定所述第一目标字库在目标合并字库的第一首地址;17.s32、根据所述第一字库长度和所述第一首地址,计算所述第一目标字库的最终字节在所述目标合并字库中的第一末地址;18.s33、根据所述第一末地址确定所述第二目标字库在所述目标合并字库中的第二首地址;19.s34、根据所述第二字库长度和所述第二首地址,计算所述第二目标字库的最终字节在目标合并字库中的第二末地址。20.所述第一存储地址包括第一首地址、第一末地址,所述第二存储地址包括第二首地址、第二末地址。21.在进一步的实施方案中,所述第二末地址为,22.pd3=fontsizemax1+n+m+fontsizemax2;23.其中,pd3为第二末地址,m为标示符长度,n为第一首地址,fontsizemax1为第一字库长度,fontsizemax2为第二字库长度。24.本方案通过设定第一首地址,限定第一目标字库存储起始点,通过顺序存储规则,确定第一目标字库存储终点(即第一末地址);随后,以第一末地址为基础,结合标示符长度计算第二目标字库存储起始点(即第二首地址),即第一目标字库、第二目标字库实现了在物理地址上的顺序分区存储;而在第一目标字库、第二目标字库之间留存标示符地址,可区分当前字库(即第一目标字库)的结束,防止字库读取时出现第一目标字库、第二目标字库内容重叠的现象。25.本发明还提供一种字库合并系统,包括依次连接的字库输入模块、字库合并模块和字库输出模块;26.所述字库输入模块,用于输入待合并的第一目标字库和第二目标字库;27.所述字库合并模块,用于计算第一目标字库和第二目标字库在目标合并字库中的第一存储地址、第二存储地址;28.所述字库输出模块,用于输出合并后的所述目标合并字库。29.在进一步的实施方案中,所述字库合并模块包括相互连接的长度计算单元、第一地址计算模块和第二地址计算模块;30.所述长度计算单元,用于计算当前输入的第一目标字库和第二目标字库的第一字库长度、第二字库长度;31.所述第一地址计算模块,用于根据所述第一字库长度获取所述第一目标字库在目标合并字库中的第一首地址、第一末地址;32.所述第二地址计算模块,用于根据所述第二字库长度和第一末地址,计算所述第二目标字库在所述目标合并字库中第二首地址、第二末地址。33.在进一步的实施方案中,所述第一地址计算模块包括第一长度保存单元、首地址设置单元、第一计算单元;第一计算单元与所述第一长度保存单元、首地址设置单元、第一地址计算模块连接;34.所述第一长度保存单元,用于保存所述第一目标字库的第一字库长度;35.所述首地址设置单元,用于设置所述第一目标字库的第一首地址;36.所述第一地址计算模块,用于根据所述第一首地址和所述第一字库长度计算第一末地址。37.在进一步的实施方案中,所述第二地址计算模块包括第二长度保存单元、第二计算单元、第三计算单元和标识符设置单元,所述第二长度保存单元与所述长度计算单元、第二计算单元连接,所述第三计算单元与所述第二计算单元、第一地址计算模块和标识符设置单元连接;38.所述第二长度保存单元,用于保存所述第二目标字库的第二字库长度;39.所述标识符设置单元,用于设置标示符长度;40.所述第三计算单元,用于根据所述标示符长度、所述第二字库长度和第一首地址计算第二首地址;41.所述第二计算单元,用于所述第二首地址和所述第二字库长度计算第二末地址。42.本方案中的字库合并系统采用各个模块、单元实现字库合并方法中的各个步骤,为字库合并方法提供硬件基础,便于方法实施。附图说明43.图1是本发明实施例提供的一种字库合并方法的工作流程图;44.图2是本发明实施例提供的一种字库合并系统的系统框架图。具体实施方式45.下面结合附图具体阐明本发明的实施方式,实施例的给出仅仅是为了说明目的,并不能理解为对本发明的限定,包括附图仅供参考和说明使用,不构成对本发明专利保护范围的限制,因为在不脱离本发明精神和范围基础上,可以对本发明进行许多改变。46.实施例147.本发明实施例提供的一种字库合并方法,如图1所示,在本实施例中,包括步骤s1~s4:48.s1、从待合并字库中获取第一目标字库和第二目标字库,包括步骤s11~s12:49.s11、获取两个以上的待合并字库;50.s12、按照预设规则选取两个待合并字库作为第一目标字库和第二目标字库。51.s2、分别计算第一目标字库、第二目标字库的第一字库长度、第二字库长度,具体为:52.计算出当前输入的第一目标字库含有数据的最大值,作为第一字库长度;计算出当前输入的第二目标字库含有数据的最大值,作为第二字库长度。53.s3、根据第一字库长度、第二字库长度,依次确定第一目标字库、第二目标字库在目标合并字库中的第一存储地址、第二存储地址,包括步骤s31~s34:54.s31、设定第一目标字库在目标合并字库的第一首地址;55.s32、根据第一字库长度和第一首地址,计算第一目标字库的最终字节在目标合并字库中的第一末地址;56.第一末地址为,pd1=fontsizemax1+n;57.其中,pd1为第一末地址,n为第一首地址,fontsizemax1为第一字库长度。58.在首次进行字库合并时,第一首地址可根据目标合并字库的首地址设置。在非首次进行字库合并时,第一首地址可根据目标合并字库剩余存储空间的首地址或前一轮合并的第二末地址和标示符长度,设置本轮第一目标字库的第一首地址。59.s33、根据第一末地址确定第二目标字库在目标合并字库的第二首地址;60.第二首地址为,pd2=fontsizemax1+n+m;61.其中,pd2为第二首地址,m为标示符长度,n为第一首地址,fontsizemax1为第一字库长度。62.s34、根据第二字库长度和第二首地址,计算第二目标字库的最终字节在目标合并字库中的第二末地址。63.第一存储地址包括第一首地址、第一末地址,第二存储地址包括第二首地址、第二末地址。64.第二末地址为,pd3=fontsizemax1+n+m+fontsizemax2;65.其中,pd3为第二末地址,m为标示符长度,n为第一首地址,fontsizemax1为第一字库长度,fontsizemax2为第二字库长度。66.本实施例通过设定第一首地址,限定第一目标字库存储起始点,通过顺序存储规则,确定第一目标字库存储终点(即第一末地址);随后,以第一末地址为基础,结合标示符长度计算第二目标字库存储起始点(即第二首地址),即第一目标字库、第二目标字库实现了在物理地址上的顺序分区存储;而在第一目标字库、第二目标字库之间留存标示符地址,可区分当前字库(即第一目标字库)的结束,防止字库读取时出现第一目标字库、第二目标字库内容重叠的现象。67.s4、判断所有的待合并字库是否均合并完成,若是则结束本次合并操作,若否则返回步骤s1。68.本发明实施例基于字库的合并需求,依次序地获取两组待合并字库(即第一目标字库和第二目标字库)进行一对一合并;根据第一字库长度、第二字库长度,依次确定第一目标字库、第二字库长度在目标合并字库的第一存储地址、第二存储地址,两两一组的合并方式,简洁明了,简化了字库整合过程,整合字库时不易出现失误,可明晰字库地址,直接调用。69.实施例270.本实施附图中出现的附图标记包括:字库输入模块1;字库合并模块2,长度计算单元21,第一地址计算模块22,第一长度保存单元a、首地址设置单元b、第一计算单元c;第二地址计算模块23,第二长度保存单元d、第二计算单元e、第三计算单元f、标识符设置单元g;字库输出模块3。71.本发明还提供一种字库合并系统,参见图2,包括依次连接的字库输入模块1、字库合并模块2和字库输出模块3;72.字库输入模块1,用于输入待合并的第一目标字库和第二目标字库;73.字库合并模块2,用于计算第一目标字库和第二目标字库在目标合并字库中的第一存储地址、第二存储地址;74.字库输出模块3,用于输出合并后的目标合并字库。75.在进一步的实施方案中,字库合并模块2包括相互连接的长度计算单元21、第一地址计算模块22和第二地址计算模块23;76.长度计算单元21,用于计算当前输入的第一目标字库和第二目标字库的第一字库长度、第二字库长度;77.第一地址计算模块22,用于根据第一字库长度获取第一目标字库在目标合并字库中的第一首地址、第一末地址;78.第二地址计算模块23,用于根据第二字库长度和第一末地址,计算第二目标字库在目标合并字库中第二首地址、第二末地址。79.在进一步的实施方案中,第一地址计算模块22包括第一长度保存单元a、首地址设置单元b、第一计算单元c;第一计算单元c与第一长度保存单元a、首地址设置单元b、第一地址计算模块22连接;80.第一长度保存单元a,用于保存第一目标字库的第一字库长度;81.首地址设置单元b,用于设置第一目标字库的第一首地址;82.第一地址计算模块22,用于根据第一首地址和第一字库长度计算第一末地址。83.在进一步的实施方案中,第二地址计算模块23包括第二长度保存单元d、第二计算单元e、第三计算单元f和标识符设置单元g,第二长度保存单元d与长度计算单元21、第二计算单元e连接,第三计算单元f与第二计算单元e、第一地址计算模块22和标识符设置单元g连接;84.第二长度保存单元d,用于保存第二目标字库的第二字库长度;85.标识符设置单元g,用于设置标示符长度;86.第三计算单元f,用于根据标示符长度、第二字库长度和第一首地址计算第二首地址;87.第二计算单元e,用于第二首地址和第二字库长度计算第二末地址。88.本方案中的字库合并系统采用各个模块、单元实现字库合并方法中的各个步骤,为字库合并方法提供硬件基础,便于方法实施。89.上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部