于网页的内容变更时显示字体的方法与流程

文档序号:15686734发布日期:2018-10-16 21:08阅读:131来源:国知局

本发明是关于一种于网页的内容变更时显示字体的方法,尤其是针对亚洲语系字体在网页显示字体的方法。



背景技术:

随着信息科技的不断进展,人的生活可以说是已经离不开因特网。相较于全球信息网(worldwideweb)发展的早期,目前网页上所呈现的内容可以说是愈来愈丰富。举例来说,在早期浏览器端的网页所呈现文字的字体绝大部分是由超文件标示语言(hypertextmarkuplanguage,简称:html)来定义,然而随着网页内容愈来愈多元与丰富的趋势下,已有业者开始提供根据网页需求通过因特网下载不同字体档案的服务。这样一来,即使浏览器端未安装该字体的样式,也可让用户在浏览网页时享受到多样化的字体。然而,亚洲文字字体的档案通常很大,需花费较多的时间下载,从而增加使用者的等待时间。

中国台湾地区专利i427534借由图腾服务器产生网页图腾的方法中揭露的方法,是以图腾显示程序与图腾服务器通讯后,以该网页的字码及字体信息来取得子集合字体,以缩小字体档案达到加快下载呈现速度的目的。该方法虽较整个字体档案下载快速,但在与图腾服务器通讯仍有等待时间,依照网络质量与带宽不同约需等待数秒,等待时间中间会有数秒显示为系统默认字体,等待子集合字体档案完全下载完成后,方能正确显示出设定的字体样式。因此,该专利的专利权人于之后在专利申请案105115119中提出加速网页显示亚洲语系字体的方法,以让浏览者省略中间的等待时间,能直接浏览到网页设定的字体样式。然而,某些网页在使用者往下拉动时会实时更新数据,又或者某些网页与使用者会进行互动从而产生新的内容。然而,在专利申请案105115119中并未考虑到网页的内容实时更新的情形,对于网页实时更新所产生的内容,其无法支持。也就是说,网页实时更新所产生的内容无法享有多样化的字体。



技术实现要素:

为了解决上述的问题,本发明的目的在于提供一种于网页的内容变更时显示字体的方法,以使网页实时更新所产生的内容能享有多样化的字体。基于上述目的与其他目的,本发明提供一种于网页的内容变更时显示字体的方法,包括以下的步骤。首先,从对应到一网页网址的一网页源下载至少一网页信息到一浏览器端,该网页信息包括一连接信息、至少一第一字码信息、与一第一字体信息,该第一字码信息对应到第一字体信息。浏览器端根据连接信息从一字体服务器下载一字体显示程序,之后字体显示程序至字体服务器下载一第一子集合字体档案,且浏览器端根据第一子集合字体档案显示一网页。于浏览器端更新网页的内容而产生至少一第二字码信息,该第二字码信息所对应到的字体图像未出现在第一子集合字体档案中,且第二字码信息是对应到一第二字体信息。接着,重新分析全部的网页信息。再来,浏览器端将网页网址、第一字码信息、第二字码信息、第一字体信息、与第二字体信息传送至字体服务器。字体产生模块根据网页网址、第一字码信息、第二字码信息、第一字体信息、与第二字体信息产生至少一对应的第二子集合字体档案。接下来,下载第二子集合字体档案至浏览器端。然后,浏览器端至少根据第二子集合字体档案将第一字码信息、第二字码信息、第一字体信息、与第二字体信息呈现于网页上。

基于上述目的与其他目的,本发明再提供一种于网页的内容变更时显示字体的方法,包括以下的步骤。首先,从对应到一网页网址的一网页源下载至少一网页信息到一浏览器端,该网页信息包括一连接信息、至少一第一字码信息、与一第一字体信息,该第一字码信息对应到第一字体信息。浏览器端根据连接信息从一字体服务器下载一字体显示程序,之后字体显示程序至字体服务器下载一第一子集合字体档案,且浏览器端根据第一子集合字体档案显示一网页。于浏览器端更新网页的内容而产生一第二字码信息,该第二字码信息所对应到的字体图像未出现在第一子集合字体档案中,且第二字码信息是对应到一第二字体信息。接着,字体显示程序分析网页信息中的第二字码信息或第二字体信息。再来,浏览器端将网页网址、第二字码信息、与第二字体信息传送至字体服务器。字体产生模块根据网页网址、第二字码信息、与第二字体信息产生至少一对应的第二子集合字体档案。接下来,下载第二子集合字体档案至浏览器端。然后,浏览器端至少根据第二子集合字体档案将第二字码信息与第二字体信息呈现于该网页上。

在上述的于网页的内容变更时显示字体的方法中,如第二字体信息相同于第一字体信息,下载的第二子集合字体文件将覆盖第一子集合字体文件效果。

在上述的于网页的内容变更时显示字体的方法中,如第二字体信息相同于第一字体信息,可于该浏览器端,第二字体信息的名称不同于第一字体信息的名称。而且,第二字体信息的名称是改成第一字体信息的名称后传送至字体服务器。此外,于下载第二子集合字体档案至浏览器端后,第二子集合字体档案中该第二字体信息的名称被改回第二字体信息原有的名称。

附图说明

图1所示为本发明的系统的实施例的示意图。

图2a与图2b所示为本发明的于网页显示字体的方法的第一实施例的流程图。

图3a至图3c所示为本发明的网页的实施例与其变化。

图4a至图4e所示为网页源、浏览器端、与字体服务器间的信息递送关系的示意图。

图5a与图5b所示为本发明的于网页显示字体的方法的第二实施例的流程图。

图6a~图6e所示为本发明的浏览器端的网页的程序代码的部分的相关实施例。

图7a与图7b所示为浏览器端与字体服务器间的信息递送关系的示意图。

具体实施方式

请参照图1,图1所示为本发明的系统的实施例的示意图。在本实施例中,系统100包括一网页源110、一浏览器端120、与一字体服务器130,其特征在于网页源110、浏览器端120、与字体服务器130的间是借由因特网2而彼此通讯连接。网页源110是由至少一个(在本实施例为多个)伺服主机112所构成,这些伺服主机112可以置于一处或分散于多处。另外,浏览器端120在本实施例中为一桌面计算机,此桌面计算机包括一主机123与一屏幕124;在其他实施例中,浏览器端120也可以为一笔记本电脑、一智能型手机、一平板计算机、一allinone计算机或其他可以浏览网页的电子装置。此外,字体服务器130也可由一个或多个伺服主机所构成,且字体服务器130包括一字体产生模块132与一原始字体数据库134,关于字体产生模块132与原始字体数据库134的详细运作方式可参考专利申请案105115119中的内容。

请同时参照图2a与图2b,图2a与图2b所示为本发明的于网页的内容变更时显示字体的方法的第一实施例的流程图。首先,实施步骤s110,使用者于浏览器端120将浏览器开启,在本实施例中,浏览器可以为internetexplorer、firefox、operawebbrowser、或googlechrome等。再来,实施步骤s120,之后通过超连接的方式连接到网页源,这样屏幕124就会显示出如图3a所示的网页,图3a所示的网页网址:http://www.abc.com.tw/。需注意的是,图3a所示网页网址与网页内容仅是示意,不代表真实网址,且网页所示的内容也仅用于本申请案说明之用。此外,如图4a所示,会从网页源110下载到浏览器端120的网页信息包括一连接信息、至少一第一字码信息、与一第一字体信息,其特征在于连接信息是指连接到字体服务器130的网址。另外,第一字码信息则例如是图3a所示网页30中的『你们好吗』,而第一字体信息则例如是指上述字码所使用的字体,亦即第一字码信息是对应到第一字体信息,例如为:noto-1字体。

之后,实施步骤s130,如图4b所示,浏览器端120根据链接信息连接到字体服务器130后,便会从字体服务器130下载字体显示程序。再来,实施步骤s140,位于浏览器端120的字体显示程序会根据至少一网页网址(即图3a所示的网页网址:http://www.abc.com.tw/)与至少一第一字体信息(亦即:noto-1字体),而产生至少一第一寻址信息。

然后,实施步骤s150,如图4c所示,浏览器端120根据第一寻址信息从字体服务器130下载一第一子集合字体档案。在本实施例中,第一子集合字体档案较佳是只包括对应到该网页30中所示字码的字体图像,而非全部的字体图像(亦即noto-1字体的全部字体图像),这样可增加下载的速度。然后,实施步骤s160,浏览器端120的主机123会对第一子集合字体档案进行解译,以产生一第一解释结果,此第一解释结果会呈现于浏览器端120的网页上。详细地说,浏览器端120会根据第一子集合字体档案,而使网页上的字码(部分或全部)的字体会呈现对应到第一子集合字体档案的字体。再来,实施步骤s170,由于使用者的行为而使网页产生新的内容。例如,某些网页(例如包括有javascript程序代码的网页)会与使用者互动而产生实时的内容更新。又或者,浏览器端120的某些应用程序在操作后会于网页产生新的内容。举例来说,如图3a所示,原本网页信息有含『你们好吗』这四个字,且其所呈现的字体是对应到第一字体信息(如:noto-1字体)。后来,如图3b所示,因为与使用者互动的关系而产生『今天吃什么』这五个字,且『今天吃什么』这五个字是与『你们好吗』这四个字并排在一起。由于『今天吃什么』这五个字所对应到的字体图像并未包含在第一子集合字体档案中,因此浏览器端120所呈现出的『今天吃什么』的字体并非是由字体服务器130所提供,而只能是浏览器端120所默认的字体,相较之下比较不美观,这样一来会影响使用者的观感。在专利申请案105115119中,这样的问题是没有办法解决的,但本实施例则会通过下述的流程解决问题。

请参照步骤s180,字体显示程序重新分析全部的网页信息。为了执行此步骤,网页的设计者在编辑网页时可加入相关的程序代码,指定当网页的内容更新时,更新的内容所对应到的字体。例如,请参照图6a,其是利用html的方式指定当网页的内容更新时,更新的内容所对应到的字体,又或者可用css的方式指定更新内容的字体(如图6b所示)。因此,当网页更新后,浏览器端120便会重新分析全部网页的信息。在本实施例中,例如是用_jf.flush()函数重新分析全部网页,其是会再分析全部网页的信息一次,以撷取网页信息中的字码信息与字体信息。在此,字码信息包括第一字码信息与第二字码信息,而字体信息包括第一字体信息与第二字体信息。在本实施例中,第二字码信息即为网页更新后的内容,亦即:『今天吃什么』这五个字。而在此实施例中,第二字体信息是与第一字体信息相同,也就是图6a与图6b所指的noto-1字体。

再来,请参照步骤s190与图4d所示,因第二字体信息是与第一字体信息相同,会将网页网址、第一字码信息加上第二字码信息、第一字体信息与第二字体信息传送至字体服务器130。而且,在本实施例中,因第二字体信息是与第一字体信息相同,故实际上是将网页网址、第一字码信息、第二字码信息、第一字体信息传送至字体服务器130。接着,实施步骤s210,字体服务器130中的字体产生模块会根据所接受的讯息(亦即:网页网址、第一字码信息加上第二字码信息、第一字体信息或与第二字体信息),而产生一第二子集合字体档案。

之后,实施步骤s220,请同时参照图4e,字体服务器130将第二子集合字体档案传送到浏览器端120。然后,实施步骤s230,浏览器端120的主机123对第二子集合字体档案进行解译并产生一第二解译结果,并将第二解译结果呈现于网页30上。这样一来,原本呈现在网页30上的『你们好吗』与『今天吃什么』就会呈现一样的字体(如图3c所示)。

在上述的实施例中,『你们好吗』与『今天吃什么』是呈现同样的字体,也就是说第一字体信息与第二字体信息是相同的。然而,本领域具有通常知识者,也可将『你们好吗』与『今天吃什么』分别设定成不同的字体,例如将图6a与图6b所指的noto-1字体改为noto-2字体。也就是说,第一字体信息与第二字体信息是不同的。

此外,需注意的是,虽然在实施步骤s170时,『你们好吗』虽已经以所欲的字体呈现在屏幕上,但当第二字体信息是与第一字体信息相同时,在实施步骤s220时,浏览器端120仍会重载『你们好吗』的noto-1字体的字体图像,而造成网络带宽的浪费。而且,浏览器端120仍会对『你们好吗』再次进行处理,也就是说,第二子集合字体档案会覆盖第一子集合字体档案。这样会导致:『你们好吗』虽会保持原有的字体,但却会在屏幕上呈现出闪烁的现象。

请同时参照图5a与图5b,图5a与图5b所示为本发明的于网页显示字体的方法的第二实施例的流程图。由于图5a与图5b的步骤s110~步骤s170是与第一实施例相同,因此在本实施例中将标以相同的标号,并不再赘述。在网页30因使用者互动而产生实时的更新后,执行步骤s380,分析网页30实时更新后所产生的第二字码信息或第二字体信息。为了执行此步骤,网页的设计者在编辑网页时可加入相关的程序代码,指定当网页更新时,更新的内容所对应到的字体。例如,请参照图6c,其是利用css的方式指定当网页更新时,更新的内容所对应到的字体。在本实施例中,例如是用_jf.flushfont(“noto-2")函数指定处理网页30中的noto-2字体(亦即:第二字体信息),其是会分析网页30中使用到noto-2字体所对应到的字码(包括第二字码信息,亦即:『今天吃什么』),以撷取网页信息中的第二字体信息与第二字体信息所对应到的字码信息。又或者,例如是用_jf.flushcss(“.hello")函数指定处理网页中的class=“hello"元素,分析class=“hello"元素中所使用的字体(noto-2字体,亦即:第二字体信息)与第二字码信息(亦即:『今天吃什么』)。

再来,请参照步骤s390与图7a,将网页网址、第二字码信息、与第二字体信息传送至字体服务器130。接着,实施步骤s410,字体服务器130中的字体产生模块会根据所接受的讯息(亦即:网页网址、第二字码信息、与第二字体信息),而产生一第二子集合字体档案。

之后,实施步骤s420,请同时参照图7b,字体服务器130将第二子集合字体档案传送到浏览器端120。然后,实施步骤s430,浏览器端120的主机123对第二子集合字体档案进行解译并产生一第二解译结果,并将第二解译结果呈现于网页30上。这样一来,原本呈现在网页30上的『今天吃什么』就会呈现所欲的字体(本实施例中为noto-2字体)。

然而,在第二实施例中,若第一字体信息与第二字体信息是相同的,且是用_jf.flushfont(“noto-1")函数来分析网页30,于步骤s380中仍会分析第一字体信息,而于步骤s390中仍会将第一字体信息传送到字体服务器130。因此,于步骤s430中浏览器端120仍会重载第一字体信息,且浏览器端120仍会对『你们好吗』再次进行处理,故仍会在屏幕上呈现出闪烁的现象。

为了解决若第一字体信息与第二字体信息是相同的,浏览器端120仍会重载第一字体信息,且屏幕上呈现出闪烁的现象等问题。于第三实施例中,网页的设计者在编辑网页时,仍使第二字体信息的名称不同于第一字体信息的名称,如图6a所示仍将第二字体信息的名称命名为“noto-2"。在执行步骤s390时,第二字体信息的名称“noto-2"是改成第一字体信息的名称“noto-1"后在传送至字体服务器130,相关的程序代码如图6d所示。由于字体服务器130所收到的是第一字体信息的名称“noto-1",因此会将其当作第一字体信息进行处理,因此所做成的第二子集合字体档案,其中的第二字体信息的名称仍然为第一字体信息的名称“noto-1"。然而,在步骤s430中,第二子集合字体档案中该第二字体信息的名称被改回该第二字体信息原有的名称,相关的程序代码如图6e所示。由于第二字体信息的名称已被改回原有的名称,故在步骤s430中仅会对『今天吃什么』进行处理,『你们好吗』不会有相关变动,故不会发生闪烁的现象。而且,这样一来,网页30在实时更新后,纵使『你们好吗』与『今天吃什么』是有相同的字体,也不会发生与『你们好吗』相关的字码信息与字体信息发生重复传输和处理事情。

本发明说明如上,然其并非用以限定本发明所主张的权利要求。其专利权利要求当视后附的权利要求及其等同领域而定。凡本领域具有通常知识者,在不脱离本专利精神或范围内,所作的更动或润饰,均属于本发明所揭示精神下所完成的等效改变或设计,且应包含在下述的权利要求内。

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