一种Web端检测本地字体的方法和装置制造方法及图纸

技术编号:28674723 阅读:31 留言:0更新日期:2021-06-02 02:51
本发明专利技术涉及一种Web端检测本地字体的方法和装置,方法包括创建第一span标签,将第一span标签的字体分别设置为N种基础字体;创建第二span标签,设置和第一span标签相同的字号和内容,字体分别设置为要测试的目标字体和备选字体,备选字体分别和第一span标签的N种基础字体相同;分别对比备选字体与基础字体相同的第一span标签和第二span标签的宽高属性值,判断第一span标签是否存在一种基础字体的宽高属性值与第二span标签不同,若存在,用要测试的目标字体渲染页面,反之,用预设的默认字体渲染页面。本发明专利技术针对文档中应用的各种字体,判断其是否在本地存在,存在即使用该字体渲染,不存在则使用默认字体渲染,可有效解决首次加载需下载字体的性能问题。

【技术实现步骤摘要】
一种Web端检测本地字体的方法和装置
本专利技术涉及字体检测领域,尤其涉及一种Web端检测本地字体的方法和装置。
技术介绍
现有技术在加载文档时,对于文档中使用到的字体,都需要下载,需要先下载该文档中的字体,然后进行渲染,严重影响首次加载文档的使用性能。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供克服上述问题或者至少部分地解决上述问题的一种Web端检测本地字体的方法和装置。根据第一方面,提供了一种Web端检测本地字体的方法,包括步骤S1,在文档中创建第一span标签,同时设置字号和内容;步骤S2,获取Web端的N种基础字体,将第一span标签的字体分别设置为N种基础字体,存储第一span标签在这N种基础字体下的offsetWidth属性值和offsetHeight属性值;步骤S3,在文档中创建第二span标签,设置和所述第一span标签相同的字号和内容,字体分别设置为要测试的目标字体和备选字体,所述备选字体分别和第一span标签的N种基础字体相同;步骤S4,获取第二span标签的offsetWidth属性值和offsetHeight属性值;步骤S5,分别对比备选字体与基础字体相同的第一span标签和第二span标签的offsetWidth属性值和offsetHeight属性值,判断第一span标签在这N种基础字体下是否存在一种基础字体的offsetWidth属性值和offsetHeight属性值与第二span标签的offsetWidth属性值和offsetHeight属性值不同,若存在,用要测试的目标字体渲染页面,若不存在,用预设的默认字体渲染页面。在一种可能的实施方式中,在步骤S2中,将第一span标签的字体分别设置为基础字体monospace、sans-serif、serif,存储第一span标签在这三种基础字体下的offsetWidth属性值和offsetHeight属性值。根据第二方面,提供了一种Web端检测本地字体的装置,处理单元,配置为在文档中创建第一span标签,同时设置字号和内容;获取单元,配置为获取web端的N种基础字体,将第一span标签的字体分别设置为N种基础字体,存储第一span标签在这N种基础字体下的offsetWidth属性值和offsetHeight属性值;所述处理单元还配置为在文档中创建第二span标签,设置和所述第一span标签相同的字号和内容,字体分别设置为要测试的目标字体和备选字体,所述备选字体分别和第一span标签的N种基础字体相同;获取单元还配置为获取第二span标签的offsetWidth属性值和offsetHeight属性值;判断单元,配置为分别对比备选字体与基础字体相同的第一span标签和第二span标签的offsetWidth属性值和offsetHeight属性值,判断第一span标签在这N种基础字体下是否存在一种基础字体的offsetWidth属性值和offsetHeight属性值与第二span标签的offsetWidth属性值和offsetHeight属性值不同,若存在,用要测试的目标字体渲染页面,若不存在,用预设的默认字体渲染页面。在一种可能的实施方式中,所述获取单元配置为,将第一span标签的字体分别设置为基础字体monospace、sans-serif、serif,存储第一span标签在这三种基础字体下的offsetWidth属性值和offsetHeight属性值。根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面所述的方法。根据第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面任意所述的方法。本专利技术针对文档中应用的各种字体,判断其是否在本地存在,存在即使用该字体渲染,不存在则使用默认字体渲染,可有效解决首次加载需下载字体的性能问题。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本专利技术实施例提供的一种Web端检测本地字体的方法的流程示意图;图2为本专利技术实施例提供的一种Web端检测本地字体的方法的逻辑流程图;图3为本专利技术实施例提供的一种Web端检测本地字体的方法的业务流程图。具体实施方式本专利技术的说明书实施例和权利要求书及附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。下面结合附图和实施例,对本专利技术的技术方案做进一步的详细描述。实施例1如图1,本专利技术实施例提供一种Web端检测本地字体的方法,包括:步骤S1,在文档中创建第一span标签,同时设置字号和内容;步骤S2,获取Web端的N种基础字体,将第一span标签的字体分别设置为N种基础字体,存储第一span标签在这N种基础字体下的offsetWidth属性值和offsetHeight属性值;步骤S3,在文档中创建第二span标签,设置和所述第一span标签相同的字号和内容,字体分别设置为要测试的目标字体和备选字体,所述备选字体分别和第一span标签的N种基础字体相同;步骤S4,获取第二span标签的offsetWidth属性值和offsetHeight属性值;步骤S5,分别对比备选字体与基础字体相同的第一span标签和第二span标签的offsetWidth属性值和offsetHeight属性值,判断第一span标签在这N种基础字体下是否存在一种基础字体的offsetWidth属性值和offsetHeight属性值与第二span标签的offsetWidth属性值和offsetHeight属性值不同,若存在,说明目标字体在本地字体中存在,用要测试的目标字体渲染页面,若不存在,说明目标字体在本地不存在,用预设的默认字体渲染页面。实施例2如图2,本专利技术实施例提供一种Web端检测本地字体的方法,包括:步骤S1,在文档中创建第一span标签,字号设为72px,内容设置为abcdefghigjlmnABCDEFG,一般来说字体越大,内容越多,判断的准确率就越高。步骤S2,获取本地基础字体,将第一span标签的字体分别设置为基础字体monospace、sans-serif、serif,存储第一span标签在这3种基础字体下的offsetWidth属性值和offsetHeight属性值。步骤S本文档来自技高网...

【技术保护点】
1.一种Web端检测本地字体的方法,其特征在于,包括:/n步骤S1,在文档中创建第一span标签,同时设置字号和内容;/n步骤S2,获取Web端的N种基础字体,将第一span标签的字体分别设置为N种基础字体,存储第一span标签在这N种基础字体下的offsetWidth属性值和offsetHeight属性值;/n步骤S3,在文档中创建第二span标签,设置和所述第一span标签相同的字号和内容,字体分别设置为要测试的目标字体和备选字体,所述备选字体分别和第一span标签的N种基础字体相同;/n步骤S4,获取第二span标签的offsetWidth属性值和offsetHeight属性值;/n步骤S5,分别对比备选字体与基础字体相同的第一span标签和第二span标签的offsetWidth属性值和offsetHeight属性值,判断第一span标签在这N种基础字体下是否存在一种基础字体的offsetWidth属性值和offsetHeight属性值与第二span标签的offsetWidth属性值和offsetHeight属性值不同,若存在,用要测试的目标字体渲染页面,若不存在,用预设的默认字体渲染页面。/n...

【技术特征摘要】
1.一种Web端检测本地字体的方法,其特征在于,包括:
步骤S1,在文档中创建第一span标签,同时设置字号和内容;
步骤S2,获取Web端的N种基础字体,将第一span标签的字体分别设置为N种基础字体,存储第一span标签在这N种基础字体下的offsetWidth属性值和offsetHeight属性值;
步骤S3,在文档中创建第二span标签,设置和所述第一span标签相同的字号和内容,字体分别设置为要测试的目标字体和备选字体,所述备选字体分别和第一span标签的N种基础字体相同;
步骤S4,获取第二span标签的offsetWidth属性值和offsetHeight属性值;
步骤S5,分别对比备选字体与基础字体相同的第一span标签和第二span标签的offsetWidth属性值和offsetHeight属性值,判断第一span标签在这N种基础字体下是否存在一种基础字体的offsetWidth属性值和offsetHeight属性值与第二span标签的offsetWidth属性值和offsetHeight属性值不同,若存在,用要测试的目标字体渲染页面,若不存在,用预设的默认字体渲染页面。


2.根据权利要求1所述的Web端检测本地字体的方法,其特征在于,在步骤S2中,将第一span标签的字体分别设置为基础字体monospace、sans-serif、serif,存储第一span标签在这三种基础字体下的offsetWidth属性值和offsetHeight属性值。


3.一种Web端检测本地字体的装置,其特征在于,包括:
处理单元,配置为在文档中创建第一span标签,同时设置字号和内容;
获取单元,配置为获取web端...

【专利技术属性】
技术研发人员:宋洋匡亮史周波刘瑜
申请(专利权)人:北京稻壳互联数据科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1