CN102326179A - 用于查看web上的文档的字体处理 - Google Patents

用于查看web上的文档的字体处理 Download PDF

Info

Publication number
CN102326179A
CN102326179A CN201080008860XA CN201080008860A CN102326179A CN 102326179 A CN102326179 A CN 102326179A CN 201080008860X A CN201080008860X A CN 201080008860XA CN 201080008860 A CN201080008860 A CN 201080008860A CN 102326179 A CN102326179 A CN 102326179A
Authority
CN
China
Prior art keywords
document
font
appears
subsetting
commonly used
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201080008860XA
Other languages
English (en)
Other versions
CN102326179B (zh
Inventor
G·A·豪威尔
Z·朱
J·唐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102326179A publication Critical patent/CN102326179A/zh
Application granted granted Critical
Publication of CN102326179B publication Critical patent/CN102326179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Document Processing Apparatus (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

接收对与一文档相对应的所呈现的文档的请求。从存储设备检索该文档。将该文档转换成该所呈现的文档。生成与该所呈现的文档相关联的一个或多个服务器字体文件。存储该所呈现的文档和该服务器字体文件。

Description

用于查看web上的文档的字体处理
背景技术
文字处理及其他创作软件应用可以包括可从中创作文档的丰富字体库。给定的文档包括以一种或多种不同字体来格式化的文本。这些字体可以存储于包括字形、字符、符号及用于以一定的方式显示文本的各种其他信息的文件中。为了正确显示该文档文本,文档查看应用可能需要访问合适的字体文件。
web浏览器是用于查看在万维网(“web”)上共享的文档的常用工具。传统web浏览器显示以超文本标记语言(“HTML”)创作的文档。然而,因为HTML与传统的创作应用相比仅提供有限的文档格式化能力,所以被从原始格式转换成HTML的文档通常损失了布局及其他视觉信息。因此,在web浏览器上显示的被转换成HTML的文档可能看起来与在创作软件应用上显示的该原始文档有很大的不同。web浏览器也可能能够显示其他的文档格式,比如ADOBE FLASH和MICROSOFT SILVERLIGHT。
web浏览器一般不包括字体文件。因此,web浏览器在显示给定的文档之前可能需要获得一个或多个字体文件。然而,这些字体文件可能很大,比如拉丁语的那些字体文件,并且甚至极其大,尤其是东亚语言的字体文件。下载大型字体可能对文档加载时间有消极影响,因为web浏览器在显示该文档之前被迫等待到下载了必需的字体文件为止。增长的下载时间可能会使那些希望按需查看文档的用户非常沮丧。
此处所做出的本发明正是针对这些和其他考虑事项而呈现的。
发明内容
本文所述的技术用于提供用于查看web上的文档的改进的字体处理。与为了显示文档而将大型字体文件传送到web浏览器或其他合适的文档查看器的常规方法不同,本文所述的实施例减少了服务器传送到文档查看器的字体数据量。字体数据量可以通过本地字体文件、常用字体子集、以及每文档字体子集来减少。
本地字体文件是在执行文档查看器的计算机中已存在的字体文件。如果文档查看器能够仅用本地字体文件显示文档,则服务器就没有必要传送附加字体数据到web浏览器。常用字体子集是包括最常用的字体和字符的字体文件。常用字体子集是能用于多个文件的缩减了大小的文件。常用字体子集也能存储于文档查看器的高速缓存中。通过这种方式,常用字体子集能被用于显示多个文档而无需服务器重新传送该常用字体子集。每文档字体子集是当文档包含常用字体子集中不包括的字体时被创建并提供给文档查看器的文档专用字体文件。常用字体子集中不包括的字体可以被包括在每文档字体子集中。
根据一个实施例,本文提供了一种用于提供字体文件给在客户机计算机上操作的文档查看器的方法。接收对与一文档相对应的所呈现的文档的请求。从存储设备检索该文档。将该文档转换成该所呈现的文档。生成与该所呈现的文档相关联的一个或多个服务器字体文件。存储该所呈现的文档与服务器字体文件。
应该理解,上述主题还可以被实现成计算机控制的装置、计算机进程、计算系统或比如计算机可读介质等制品。通过阅读以下详细描述并审阅相关联的附图,这些及各种其他特征将变得显而易见。
提供本发明内容以便以一种简化的形式介绍将在以下具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在被用于限制所要求保护的主题的范围。而且,所要求保护的主题也不局限于解决本发明的任何部分中所提及的任何或所有缺点的实现。
附图说明
图1是根据各实施例的示出可用于通过web呈现并显示文档的说明性系统体系结构的框图;
图2是根据各实施例的示出用于提供用于查看web上的文档的改进的字体处理的说明性过程的流程图;
图3是根据各实施例的示出图1中的呈现模块的示例操作的流程图;
图4是根据各实施例的示出图1中的web浏览器的示例操作的流程图;
图5是示出了能够实现本文所述的各实施例的计算机系统的说明性计算机硬件体系结构的计算机体系结构图。
具体实施方式
下列具体实施方式涉及用于提供用于查看web上的文档的改进的字体处理的技术。通过利用本文所述的技术和概念,能够通过消除如常规web文档查看场景中的下载整个字体文件和包的需求来减少文档加载时间。具体而言,本文所述的各实施例可以通过使用本地字体文件、常用字体子集、以及每文档字体子集来减少文档加载时间。
本文所描述的各实施例主要涉及改进web浏览器的文档加载时间,但各实施例不限于此。然而,应该理解,本文所述的实施例可以应用于能够加载并显示通过网络传送的文档的任何合适的文档查看器。这样的文档查看器的另一个示例是可移植文档格式(“PDF”)阅读器。
尽管在结合计算机系统上的操作系统和应用程序的执行而执行的程序模块的一般上下文中呈现了此处描述的主题,但是本领域技术人员将认识到,其他实现可结合其他类型的程序模块来执行。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域技术人员应当理解,可用其他计算机系统配置来实施此处描述的主题,这些计算机系统配置包括手持式设备、多处理器系统、基于微处理器的或可编程消费电子产品、小型计算机、大型计算机等。
在以下详细描述中,将参考构成本发明的一部分并作为说明来示出的附图、各具体实施方式、或示例。现在参考附图来描述用于提供用于查看web上的文档的改进的字体处理的概念和技术,其中在该若干附图中相同附图标记表示相同元素。具体而言,图1是示出了可通过web呈现并显示文档的系统体系结构的框图。体系结构100包括前端服务器102、后端服务器104、存储设备106和客户机计算机108。前端服务器102可以通过比如因特网等网络110与该客户机计算机108通信。
根据各实施例,前端服务器102包括文档管理器112,它可用于从web浏览器114接收文档请求。例如,文档管理器112可以接收对文档116A或文档116A的一部分的请求。文档116A可以是文字处理文档、电子表格、演示文稿或其他类型的文档。该文档请求可以是超文本传输协议(“HTTP”)消息。
在从web浏览器114接收到文档请求后,文档管理器112可以向呈现模块118请求被请求的文档116A的所呈现的表示。如图1中所示,文档116A的所呈现的表示是文档116B,它是对应文档116A的全保真表示。全保真表示包含在原始表示中发现的相同特征(例如布局、分辨率、内容等)。因此,无论给定的文档是通过生产力应用程序还是通过比如web浏览器114等web浏览器来查看的,用户都可以期待查看该文档的相同体验。该全保真表示可以与低保真表示形成对比,例如在低保真表示中布局可能改变或分辨率和内容可能减少。
在接收到对文档116A的所呈现的表示的请求后,呈现模块118从存储设备106检索文档116A。然后呈现模块118把文档116A呈现成所呈现的文档116B,包括文本、图像及其他多媒体。呈现模块118然后可以传送所呈现的文档116B到文档管理器112并且将所呈现的文档116B存储在存储设备106中。通过这种方式,文档管理器112可以通过从存储设备106检索文档116B而非通过访问呈现模块118来满足对文档116A的所呈现的表示的后续请求。
根据各实施例,呈现模块118在必要时还生成服务器生成的字体文件,比如每文档字体子集122。呈现模块118可以将每文档字体子集122存储在存储设备106中。除了服务器生成的字体文件之外,后端服务器104还可以包括预先生成的字体文件,比如常用字体子集120。根据各实施例,常用字体子集120在建立时就可以被生成而不是像每文档字体子集122一样在运行时生成。服务器生成的字体文件和预先生成的字体文件在本文可以总称为服务器字体文件。如图1的示例中所示,后端服务器104还可以维持本地字体列表124。常用字体子集120、每文档字体子集122、以及本地字体列表124的创建、内容及应用会在以下参考图2-4作进一步详述。
在所呈现的文档116B和服务器生成的字体文件被生成并被存储在存储设备106中之后,文档管理器112可以提供所呈现的文档116B给web浏览器114,web浏览器114可用于显示所呈现的文档116B。当接收到对文档116A的初始请求时,文档管理器112可以传送由呈现模块118生成的所呈现的文档116B到web浏览器114。所呈现的文档116B也被存储在存储设备106中。因此,当接收到对文档116A的所呈现的表示的后续请求时,文档管理器112可以从存储设备106检索所呈现的文档116B而无需访问后端服务器104上的呈现模块118。
为了使web浏览器114显示所呈现的文档116B中使用的字体,文档管理器112还可以提供服务器字体文件给web浏览器114。另外,web浏览器114在必要时可以向文档管理器112请求服务器字体文件。在一些实施例中,web浏览器114可以利用文档管理器112提供的服务器字体文件来显示所呈现的文档116B。在其他实施例中,web浏览器114可以利用本地字体文件,比如本地字体文件126,来显示所呈现的文档116B。本地字体文件126的、内容及应用会在以下参考图2-4作进一步详述。
现在参考图2-4,将提供关于本文所描述的各实施例的用于提供用于查看web上的文档的改进的字体处理的附加细节。具体而言,图2是示出用于提供用于查看web上的文档的改进的字体处理的说明性过程的流程图。图3是示出呈现模块118的示例操作的流程图。图4是示出web浏览器114的示例操作的流程图。
应当明白,此处描述的逻辑操作可被实现为(1)运行在计算机系统上的一系列计算机实现的动作或程序模块,和/或(2)计算机系统内互连的机器逻辑电路或电路模块。取决于计算系统的性能及其他要求,可以选择不同的实现。因此,此处描述的逻辑操作被不同地称为状态操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可用软件、固件、专用数字逻辑以及其任何组合来实现。还应当明白可以执行比附图中所示出的并且在此处所描述的操作更多或更少的操作。这些操作还可以按与此处所描述的不同的次序来执行。
现在参考图2,例程200开始于操作202,在此文档管理器112从web浏览器114接收对比如文档116A等文档的请求。例程200随后前进到操作204,在此文档管理器112传送对与被请求的文档116A相对应的所呈现的文档的请求。在这种情况下,所呈现的文档116B对应于文档116A。一旦文档管理器112传送对所呈现的文档116B的请求到呈现模块118,例程200前进到操作206。
在操作206处,呈现模块118从文档管理器112处接收到对所呈现的文档116B的请求。例程200随后前进到操作208和210,在那里在接收到对所呈现的文档116B的请求之后,呈现模块118从存储设备106检索文档116A并将文档116A呈现(即,转换、变换)成所呈现的文档116B。通过将文档116A呈现成所呈现的文档116B,呈现模块118可以将文档116A中包含的文本、图像和其他多媒体从第一格式转换成作为文档116A的全保真表示的第二格式。在一些实施例中,尽管该文本、图像和/或其他多媒体是单个文档的一部分,但它们可以存储在独立的文件中。
在所示示例中,第一格式可以与比如文字处理应用、演示文稿应用、电子表格应用等创作软件应用相兼容。第二格式可以与web浏览器114相兼容。与web浏览器114相兼容的示例格式可以包括图像格式(例如,可移植网络图形(“PNG”)、联合图像专家组(“JPEG”)等)、MICROSOFTSILVERLIGHT、ADOBE FLASH,等等。根据一些实施例,包含在所呈现的文档116B中的文本可以用可扩展应用标记语言(“XAML”)代码来格式化。XAML代码还可以包括本地字体信息,这将在下面作进一步详述。一旦呈现模块118将文档116A呈现成所呈现的文档116B,例程200就前进到操作212。
在操作212处,呈现模块118在必要时生成服务器生成的字体文件,比如每文档字体子集122。每文档字体子集122是至少包含不在常用字体子集120中的字体和字符的文档专用字体文件。常用字体子集120是包含最常用的字体和字符的字体文件。常用字体子集120是文档无关的并可以用于多个文档。根据各实施例,常用字体子集120在建立时提前生成,而每文档字体子集122是在运行时通过分析整个所呈现的文档116B来生成的。
在常用字体子集120和每文档字体子集122中,可以移除任何字体布局信息,从而进一步减小常用字体子集120和每文档字体子集122的大小。具体而言,常规字体文件包括指示字符位置、每个字符的大小、字符间距等的布局信息。在体系结构100中,由于呈现过程的性质,包含在所呈现的文档116B中的文本是绝对定位的文本。因为文本被绝对定位在所呈现的文档116B中,所以在常规字体文件中的布局信息就没有必要了。一旦呈现模块118在必要时生成了服务器生成的字体文件,例程200就前进到操作214。
在操作214处,呈现模块118传送所呈现的文档116B到文档管理器112。例程200随后前进到操作216和218。在操作216处,呈现模块118将所呈现的文档116B和任何服务器生成的字体文件存储于存储设备106中。通过这种方式,文档管理器112可通过从存储设备106检索对应的所呈现的文档116B而非通过访问呈现模块118来满足对文档116A的另外请求。在操作218处,文档管理器112至少传送所呈现的文档116B到web浏览器114。web浏览器114随后可以显示所呈现的文档116B。
在一些实施例中,文档管理器112还将一个或多个服务器字体文件,比如常用字体子集120和每文档字体子集122,连同所呈现的文档116B一起传送到web浏览器114。在其他实施例中,作为对来自web浏览器114的请求的响应,文档管理器112可以传送一个或多个服务器字体文件到web浏览器114。
现在参考图3,将根据各实施例来描述关于呈现模块118的附加细节。具体而言,例程300示出了呈现模块118的说明性操作,其中呈现模块118增量地呈现(例如,按单页或单张幻灯片来呈现)文档116A。如图3所示,例程300开始于操作302,其中呈现模块118将文档116A中的下一页或下一张幻灯片呈现成所呈现的文档116B中的对应的页或幻灯片。所呈现的文档116B中的这一对应的页或幻灯片在本文可以称为所呈现的页或所呈现的幻灯片。呈现模块118可以在文档116A的第一页或第一张幻灯片开始呈现过程。然而,呈现模块118也可以按其他合适的次序来遍历各页和幻灯片。一旦呈现模块118将文档116A中的页或幻灯片呈现成了所呈现的页或幻灯片,例程300就前进到操作304。
在操作304处,呈现模块118确定所呈现的页或幻灯片中所利用的字体是否包括在本地字体列表124中。根据各实施例,本地字体列表124包括预计或可能处于客户机计算机108上的一列本地字体。例如,本地字体列表124可以至少包括Times New Roman和Arial字体以及字母A至Z和数字0至9。本地字体列表124还可以包括字符范围以容纳同一种字体的不同版本(例如,在一个操作系统上的Arial字体可以与另一个操作系统上的Arial字体不同)。这些本地字体可以被包括在安装在客户机计算机108上的比如文字处理应用、电子表格应用、演示文稿应用等创作软件应用中。可以通过标识安装在客户机计算机108上的软件应用及通过用通常被包括在所标识的软件应用中的字体来填充本地字体列表124来确定本地字体列表124。应该理解,本地字体列表124可以在运行时之前预先生成,其中文档是由web浏览器和其他软件应用请求的。
如果呈现模块118确定所呈现的页或幻灯片中利用的字体被包含在本地字体列表124中,则例程300前进到操作305,在那里呈现模块118将本地字体信息,比如包含在本地字体列表124中的信息,插入到所呈现的页或幻灯片中。例如,本地字体信息可以被插入到XAML代码中。该例程随后前进到操作306。如果呈现模块118确定所呈现的页或幻灯片中利用的字体没有被包含在本地字体列表124中,则例程300也前进到操作306。
在操作306处,呈现模块118确定所呈现的页或幻灯片中利用的字体是否被包含在常用字体子集120中。如上所述,常用字体子集120是包含最常用的字体和字符的字体文件。这些常用字体和字符可以通过分析现有的文档以确定在各文档中哪些字体和字符的出现频率最高来进行确定。例如,常用字体子集120可以至少包括Time New Roman和Arial字体及字母A至Z和数字0至9。常用字体子集120还可以包括字符范围以容纳同一种字体的不同版本。用于确定常用字体和字符的其他合适的技术可以同样被使用。
如果呈现模块118确定了所呈现的页或幻灯片中利用的字体没有被包含在常用字体子集120中(例如,在其中遗漏了),则例程300前进到操作307,在那里呈现模块118收集每文档字体信息,每文档字体信息稍后被呈现模块118用来生成每文档字体子集122。例如,呈现模块118可以分析整个所呈现的文档116B(例如,所呈现的文档116B的所有页或幻灯片)以确定web浏览器114需要哪些字体来显示所呈现的文档116B。这些字体可以被包括在每文档字体信息中。一旦呈现模块118收集了每文档字体信息,例程300就前进到操作312。此外,如果呈现文档118确定所呈现的页或幻灯片中利用的字体被包含在常用字体子集120中,则例程300也前进到操作312。
在操作312处,呈现模块118创建所呈现的页或幻灯片,所呈现的页或幻灯片随后可以被传送到文档管理器112。文档管理器112随后可以将所呈现的页或幻灯片提供给web浏览器114以供显示。此时,文档管理器112也可以将常用字体子集120连同所呈现的页或幻灯片一起提供给web浏览器114。在该替换方案中,文档管理器112可以响应于接收到来自web浏览器114的请求来将常用字体子集120传送到web浏览器114。例如,如果常用字体子集120没有被存储在web浏览器114的高速缓存中,则web浏览器114可以传送对常用字体子集120的请求到文档管理器112。
一旦呈现模块118创建了所呈现的页或幻灯片,例程300就前进到操作314,其中呈现模块118确定文档116A中是否有任何另外的页或幻灯片要呈现成所呈现的文档116B的对应的页或幻灯片。如果呈现模块118确定文档116A中有另外的页或幻灯片要呈现,则例程300前进到操作302,在那里呈现模块118呈现文档116A中的下一页或下一张幻灯片。然后例程300如之前所述地继续进行。如果呈现模块118确定文档116A中没有另外的页或幻灯片要呈现,则例程300前进到操作316。
在操作316处,呈现模块118基于在操作307处收集到的每文档字体信息来生成每文档字体子集122。具体而言,每文档字体子集122可以至少包括文档浏览器114要显示所呈现的文档116B所需的那些字体。因此,每文档字体子集122可以包括所呈现的文档116B专用的字体。每文档字体子集122可以包含或不包含包括在常用字体子集120和本地字体文件126中的字体。应该理解,每文档字体子集122可以在例程300中的其他不同的点处生成。一旦呈现模块118生成了每文档字体子集122,例程300就前进到操作318。
在操作318处,呈现模块118传送所呈现的页或幻灯片到文档管理器112。文档管理器112随后可以提供所呈现的文档116B到web浏览器114以供显示。在这种情况下,web浏览器114可以尝试利用本地字体文件,比如本地字体文件126,来显示所呈现的文档116B。例如,web浏览器114可以尝试利用被插入到该所呈现的页或幻灯片的本地字体信息所指定的本地字体文件。如果web浏览器114不能利用本地字体文件来显示所呈现的文档116B,则例程300前进到操作320,在那里文档管理器112可以从web浏览器114处接收对每文档字体子集122的请求。作为接收到对每文档字体子集122的请求的响应,例程300前进到操作322,在那里文档管理器122传送每文档字体子集122到web浏览器114,以显示所呈现的文档116B。
根据各实施例,如果比如本地字体文件126之类的本地字体文件不可用,则每文档字体子集122或常用字体子集120可以被传送到web浏览器114。例如,客户机计算机108可以执行可用于确定本地字体文件是否可被用来显示所呈现的文档116B的客户机侧进程(未示出)。如果该客户机侧进程确定了该本地字体文件不能被用于显示所呈现的文档116B,则web浏览器114可以向文档管理器112传送对每文档字体子集122或常用字体子集120的附加请求。作为接收到对每文档字体子集122或常用字体子集120的请求或是来自web浏览器114的请求的响应,文档管理器112可以传送每文档字体子集122或常用字体子集120到web浏览器114。在这种情况下,web浏览器114可以利用每文档字体子集122或常用字体子集120来显示所呈现的文档116B。
现在参考图4,将根据各实施例描述关于web浏览器114的操作的附加细节。具体而言,例程400示出了在接收到所呈现的文档116B的至少一部分后web浏览器114的说明性操作。如图4所示,例程400开始于操作402,其中web浏览器114从文档管理器112接收到所呈现的文档116B的至少一部分。具体而言,web浏览器114可以接收整个所呈现的文档116B或来自所呈现的文档116B的一特定页或幻灯片。一旦所呈现的文档116B接收到所呈现的文档116B,例程400就前进到操作404。
在操作404处,web浏览器114确定比如本地字体文件126之类的本地字体文件是否包含以全保真来显示所呈现的文档116B所需的字体。指导web浏览器114搜索并利用本地字体文件126以及常用字体子集120和每文档字体子集122的指令可以被包含在所呈现的文档116B中的XAML代码中。本地字体文件126可以是安装在客户机计算机108上的创作软件应用的一部分。如果web浏览器确定本地字体文件126包含以全保真来显示所呈现的文档116B所需的字体,则例程400前进到操作412,在那里web浏览器114利用本地字体文件126显示所呈现的文档116B。
如果web浏览器114确定本地字体文件126不包含以全保真来显示所呈现的文档116B所需的字体,则例程前进到操作406,在那里web浏览器114向文档管理器112传送对比如常用字体子集120和每文档字体子集122等一个或多个合适的服务器字体文件的请求。文档管理器112随后可以检索合适的服务器字体文件并传送该服务器字体文件到web浏览器114。一旦web浏览器114传送对合适的服务器字体文件的请求到文档管理器112,例程400前进到操作408。在操作408处,web浏览器114从文档管理器112接收合适的服务器字体文件。例程400随后前进到操作410,其中web浏览器114利用该服务器字体文件显示所呈现的文档116B。
现在参考图5,描述示出计算机500的示例性计算机体系结构图。计算机500包括处理单元502(“CPU”)、系统存储器504以及将存储器504耦合至CPU 502的系统总线506。计算机500还包括用于存储诸如呈现模块118等一个或多个程序模块514的大容量存储设备512以及诸如存储设备106等一个或多个数据库516。其他程序模块514可包括web浏览器114和文档管理器112。大容量存储设备512通过连接到总线506的大容量存储控制器(未示出)连接到CPU 502。大容量存储设备512及其相关联的计算机可读介质为计算机500提供非易失性存储。虽然对此处包含的计算机可读介质的描述引用了诸如硬盘或CD-ROM驱动器之类的大容量存储设备,但是本领域技术人员应该理解,计算机可读介质可以是可由计算机500访问的任何可用计算机存储介质。
作为示例而非限制,计算机可读介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块之类的信息或其他数据的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机可读介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、蓝光(BLU-RAY)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机500访问的任何其它介质。
根据各实施例,计算机500可以使用通过诸如网络110的网络到远程计算机的逻辑连接来在联网环境中操作。计算机500可通过连接到总线506的网络接口单元510来连接到网络110。应当理解,网络接口单元510还可用来连接到其他类型的网络和远程计算机系统。计算机500还可包括输入/输出控制器508,用于接收和处理来自多个输入设备(未示出)的输入,该多个输入设备包括键盘、鼠标、话筒和游戏控制器。类似地,输入/输出控制器508可以向显示器或其它类型的输出设备(未示出)提供输出。
基于上述内容,应当明白,本文提出了用于提供用于查看web上的文档的改进的字体处理的技术。虽然以计算机结构特征、方法动作、以及计算机可读介质专用的语言描述了此处呈现的主题,但是应该理解,在所附权利要求书中所限定的本发明不一定仅限于此处描述的具体特征、动作、或介质。相反,这些具体特征、动作和介质是作为实现权利要求的示例形式来公开的。
上述主题仅作为说明提供,并且不应被解释为限制。可对此处描述的主题作出各种修改和改变,而不必遵循所示和所述的示例实施例和应用,且不背离所附权利要求书中所述的本发明的真正精神和范围。

Claims (15)

1.一种用于提供字体文件给在客户机计算机(108)上操作的文档查看器(114)的计算机实现的方法,所述方法包括用于以下操作的计算机实现的操作:
接收对与一文档(116A)相对应的所呈现的文档(116B)的请求;
从存储设备(106)检索所述文档(116A);
将所述文档(116A)转换成所述所呈现的文档(116B);
生成用于显示所述所呈现的文档(116B)的一个或多个服务器字体文件(120,122);以及
存储所述所呈现的文档(116B)和所述服务器字体文件(120,122)。
2.如权利要求1所述的计算机实现的方法,其特征在于,所述方法还包括用于传送所述所呈现的文档和所述服务器字体文件到所述文档查看器的计算机实现的操作,所述文档查看器可用于利用所述服务器字体文件显示所述所呈现的文档。
3.如权利要求1所述的计算机实现的方法,其特征在于,所述所呈现的文档包括所述文档的全保真表示。
4.如权利要求1所述的计算机实现的方法,其特征在于,将所述文档转换成所述所呈现的文档包括:
将所述文档的页或幻灯片转换成所述所呈现的文档的页或幻灯片;
提供所述所呈现的文档的页或幻灯片给所述文档查看器以供显示;以及
在提供所述所呈现的文档的页或幻灯片给所述文档查看器以供显示之后,将所述文档的下一页或下一张幻灯片转换成所述所呈现的文档的下一页或下一张幻灯片。
5.如权利要求1所述的计算机实现的方法,其特征在于,生成用于显示所述所呈现的文档的一个或多个服务器字体文件包括生成常用字体子集,所述常用字体子集包括包含在多个文档中最常用的字体和字符的字体文件。
6.如权利要求5所述的计算机实现的方法,其特征在于,生成用于显示所述所呈现的文档的一个或多个服务器字体文件包括生成每文档字体子集,所述每文档字体子集包括包含常用字体子集中遗漏的字体的字体文件。
7.如权利要求1所述的计算机实现的方法,其特征在于,生成用于显示所述所呈现的文档的一个或多个服务器字体文件包括:
确定所述所呈现的文档中利用的字体是否被包含在本地字体列表中,所述本地字体列表包含预计存储在所述客户机计算机上的一列字体文件;以及
作为确定所述所呈现的文档中利用的字体被包含在所述本地字体列表中的响应,将包含在所述本地字体列表中的本地字体信息插入到所述所呈现的文档中。
8.如权利要求7所述的计算机实现的方法,其特征在于,生成用于显示所述所呈现的文档的一个或多个服务器字体文件还包括:
确定所述所呈现的文档中利用的字体是否被包含在常用字体子集中,所述常用字体子集包括包含在多个文档中最常用的字体和字符的字体文件;以及
作为确定所述所呈现的文档中利用的字体被包含在所述常用字体子集中的响应,传送所述所呈现的文档和所述常用字体子集到所述文档查看器。
9.如权利要求8所述的计算机实现的方法,其特征在于,生成用于显示所述所呈现的文档的一个或多个服务器字体文件还包括:
作为确定所述所呈现的文档中利用的字体没有被包含在所述常用字体子集中的响应,生成每文档字体子集,所述每文档字体子集包括包含常用字体子集中遗漏的字体的字体文件。
10.如权利要求1所述的计算机实现的方法,其特征在于,字体布局信息被从所述服务器字体文件中移除了。
11.一种其上存储有计算机执行指令的计算机可读介质,当所述指令由计算机执行时,使得所述计算机执行如权利要求1中所述的计算机实现的方法。
12.一种计算机系统(500)包括:
处理器(502);
在操作上耦合到所述处理器(502)的存储器(504);以及
程序模块(514),(i)它从内存中取出在所述处理器(502)中执行,(ii)当它由所述处理器(502)执行时,使得所述计算机系统(500)通过以下操作来提供字体文件给在客户机计算机(108)上操作的文档查看器(114):
从所述文档查看器(114)接收对与一文档(116A)相对应的所呈现的文档(116B)的请求,
从存储设备(106)检索所述文档(116A),
将所述文档(116A)转换成所述所呈现的文档(116B),所述所呈现的文档(116B)适应于通过所述文档查看器(114)提供所述文档(116A)的全保真表示,
将所述所呈现的文档(116B)存储在所述存储设备(106)中,
确定所述所呈现的文档(116B)中利用的字体是否被包含在本地字体列表(124)中,以及
作为确定所述所呈现的文档(116B)中利用的字体被包含在所述本地字体列表(124)中的响应,将包含在所述本地字体列表(124)上的本地字体信息插入到所述所呈现的文档(116B)中,以及
在将所述本地字体列表(124)中包含的本地字体信息插入到所述所呈现的文档(116B)中之后,传送所述所呈现的文档(116B)到所述文档查看器(114),所述文档查看器(114)可用于利用在所述客户机计算机(108)上的一个或多个本地字体文件(126)显示所述所呈现的文档(116B)。
13.如权利要求12所述的计算机系统,其特征在于,所述程序模块在由所述处理器执行时,还使得所述计算机系统通过以下操作来提供字体文件给在所述客户机计算机上操作的文档查看器:
确定所述所呈现的文档中利用的字体是否被包含在常用字体子集中,所述常用字体子集包括包含在多个文档中最常用的字体和字符的字体文件,以及
作为确定所述所呈现的文档中利用的字体被包含在所述常用字体子集中的响应,确定所述客户机计算机是否包含常用字体子集。
14.如权利要求13所述的计算机系统,其特征在于,所述程序模块在由所述处理器执行时,还使得所述计算机系统通过以下操作来提供字体文件给在所述客户机计算机上操作的文档查看器:
作为确定所述客户机计算机包含所述常用字体子集的响应,传送所述所呈现的文档到所述文档查看器,所述文档查看器可用于利用存储在所述客户机计算机上的常用字体子集显示所述所呈现的文档,以及
作为确定所述客户机计算机不包含所述常用字体子集的响应,传送所述所呈现的文档和所述常用字体子集到所述文档查看器,所述文档查看器可用于利用所述常用字体子集显示所述所呈现的文档。
15.如权利要求14所述的计算机系统,其特征在于,所述程序模块在由所述处理器执行时,还使得所述计算机系统通过以下操作来提供字体文件给在所述客户机计算机上操作的文档查看器:
作为确定所述所呈现的文档中利用的字体没有被包含在所述常用字体子集中的响应,生成每文档字体子集,所述每文档字体子集包括包含所述本地字体文件和所述常用字体子集遗漏的字体的字体文件,
传送所述所呈现的文档到所述文档查看器,
从所述文档查看器接收对所述每文档字体的请求,以及
作为接收到对所述每文档字体的请求的响应,传送所述每文档字体到所述文档查看器,所述文档查看器可用于利用所述每文档字体子集显示所述所呈现的文档。
CN201080008860.XA 2009-02-20 2010-01-22 用于查看web上的文档的字体处理 Active CN102326179B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/389,389 US8856647B2 (en) 2009-02-20 2009-02-20 Font handling for viewing documents on the web
US12/389,389 2009-02-20
PCT/US2010/021890 WO2010096237A2 (en) 2009-02-20 2010-01-22 Font handling for viewing documents on the web

Publications (2)

Publication Number Publication Date
CN102326179A true CN102326179A (zh) 2012-01-18
CN102326179B CN102326179B (zh) 2016-01-27

Family

ID=42631981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080008860.XA Active CN102326179B (zh) 2009-02-20 2010-01-22 用于查看web上的文档的字体处理

Country Status (17)

Country Link
US (1) US8856647B2 (zh)
EP (1) EP2399234B1 (zh)
JP (1) JP5911304B2 (zh)
KR (1) KR101608112B1 (zh)
CN (1) CN102326179B (zh)
AU (1) AU2010216343B2 (zh)
BR (1) BRPI1007169A2 (zh)
CA (1) CA2749296A1 (zh)
CL (1) CL2011002019A1 (zh)
IL (1) IL213813A0 (zh)
IN (1) IN2011CN05355A (zh)
MX (1) MX2011008445A (zh)
RU (1) RU2011134909A (zh)
SG (2) SG10201400110YA (zh)
TW (1) TWI477985B (zh)
WO (1) WO2010096237A2 (zh)
ZA (1) ZA201104787B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425631A (zh) * 2013-07-19 2013-12-04 百度在线网络技术(北京)有限公司 用于获取文档文件中目标文字的字体文件的方法及装置
CN106547804A (zh) * 2015-09-23 2017-03-29 北京国双科技有限公司 silverlight 地图的中文名称显示方法及装置

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10810355B1 (en) 2001-07-16 2020-10-20 Clantech, Inc. Allowing operating system access to non-standard fonts in a network document
US8522127B2 (en) 2001-07-16 2013-08-27 Robert G. Adamson, III Allowing operating system access to non-standard fonts in a network document
US8856647B2 (en) 2009-02-20 2014-10-07 Microsoft Corporation Font handling for viewing documents on the web
US8769050B2 (en) * 2009-10-16 2014-07-01 Celartern, Inc. Serving font files in varying formats based on user agent type
US8438648B2 (en) * 2010-02-16 2013-05-07 Celartem, Inc. Preventing unauthorized font linking
US20110258535A1 (en) * 2010-04-20 2011-10-20 Scribd, Inc. Integrated document viewer with automatic sharing of reading-related activities across external social networks
US8615709B2 (en) 2010-04-29 2013-12-24 Monotype Imaging Inc. Initiating font subsets
US9164968B2 (en) * 2011-07-26 2015-10-20 Google Inc. Techniques for server-side determination of font subsets
US20130215126A1 (en) * 2012-02-17 2013-08-22 Monotype Imaging Inc. Managing Font Distribution
KR101456231B1 (ko) * 2012-05-31 2014-10-31 (주)한양정보통신 폰트 표시 장치 및 방법, 그리고 폰트 표시 장치를 포함하는 웹 폰트 시스템
US9817615B2 (en) 2012-12-03 2017-11-14 Monotype Imaging Inc. Network based font management for imaging devices
US9569865B2 (en) 2012-12-21 2017-02-14 Monotype Imaging Inc. Supporting color fonts
CN103077238B (zh) * 2013-01-09 2017-04-05 百度在线网络技术(北京)有限公司 电子文档的提供方法、系统、母书服务器及子书客户端
WO2014110206A2 (en) 2013-01-09 2014-07-17 Monotype Imaging Inc. Advanced text editor
KR101400213B1 (ko) * 2013-01-21 2014-05-28 (주)한양정보통신 서브셋 폰트를 제공하는 웹 폰트 서버 및 이를 포함하는 웹 폰트 시스템
US9619439B1 (en) * 2013-02-26 2017-04-11 Google Inc. Incremental web font loading
WO2014157887A1 (en) * 2013-03-25 2014-10-02 Samsung Electronics Co., Ltd. Display apparatus and method of outputting text thereof
JP6157210B2 (ja) * 2013-05-15 2017-07-05 キヤノン株式会社 文書変換装置、文書変換方法、及びプログラム
US9317777B2 (en) 2013-10-04 2016-04-19 Monotype Imaging Inc. Analyzing font similarity for presentation
JP5974024B2 (ja) * 2014-01-18 2016-08-23 株式会社モリサワ フォント配信システム、及びフォント配信方法
US10055386B2 (en) 2014-04-18 2018-08-21 Emc Corporation Using server side font preparation to achieve WYSIWYG and cross platform fidelity on web based word processor
US9691169B2 (en) 2014-05-29 2017-06-27 Monotype Imaging Inc. Compact font hinting
TW201608384A (zh) 2014-08-29 2016-03-01 萬國商業機器公司 遠端提供電子文件字型的電腦實施方法
US20160182606A1 (en) * 2014-12-17 2016-06-23 Monotype Imaging Inc. Network Based Static Font Subset Management
US10115215B2 (en) 2015-04-17 2018-10-30 Monotype Imaging Inc. Pairing fonts for presentation
US11537262B1 (en) 2015-07-21 2022-12-27 Monotype Imaging Inc. Using attributes for font recommendations
US10095529B2 (en) 2016-06-07 2018-10-09 Microsoft Technology Licensing, Llc Font download on application boot
US11334750B2 (en) 2017-09-07 2022-05-17 Monotype Imaging Inc. Using attributes for predicting imagery performance
US10909429B2 (en) 2017-09-27 2021-02-02 Monotype Imaging Inc. Using attributes for identifying imagery for selection
US11657602B2 (en) 2017-10-30 2023-05-23 Monotype Imaging Inc. Font identification from imagery
US11113450B2 (en) 2018-10-26 2021-09-07 International Business Machines Corporation Cognitive font enrichment management for adding system fonts
KR102218355B1 (ko) * 2019-01-11 2021-02-22 주식회사 윤디자인그룹 입력되는 글자에 따른 폰트 관리 수행 방법
KR102218356B1 (ko) * 2019-01-11 2021-02-22 주식회사 윤디자인그룹 입력되는 글자에 따른 폰트 관리 수행 방법
JP7490472B2 (ja) * 2020-07-06 2024-05-27 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5528742A (en) 1993-04-09 1996-06-18 Microsoft Corporation Method and system for processing documents with embedded fonts
US5533174A (en) * 1993-10-26 1996-07-02 Digital Equipment Corporation Network font server
US5781714A (en) 1994-05-27 1998-07-14 Bitstream Inc. Apparatus and methods for creating and using portable fonts
JPH096566A (ja) 1995-06-20 1997-01-10 Nippon Joho Kagaku Kk フォント使用方法、およびフォントデータ付きドキュメントの作成方法、並びにフォントデータ付きドキュメント
EP0870246B1 (en) * 1995-09-25 2007-06-06 Adobe Systems Incorporated Optimum access to electronic documents
US6320587B1 (en) * 1996-08-26 2001-11-20 Fujitsu Limited Font processing apparatus in network environment and method thereof
US6857102B1 (en) 1998-04-07 2005-02-15 Fuji Xerox Co., Ltd. Document re-authoring systems and methods for providing device-independent access to the world wide web
JP2001117844A (ja) 1999-10-20 2001-04-27 Nec Corp 無線通信システム及びそれに用いる無線クライアントの表示言語切替方法
US7155672B1 (en) 2000-05-23 2006-12-26 Spyglass, Inc. Method and system for dynamic font subsetting
CA2323569A1 (en) 2000-10-18 2002-04-18 Advanced Numerical Methods Ltd. Elastic presentation space
JP2002207723A (ja) 2001-01-10 2002-07-26 Dainippon Printing Co Ltd 拡張文字の処理方法
US6889202B2 (en) 2001-03-23 2005-05-03 Hewlett-Packard Development Company, L.P. Internet print device font distribution method and web site
JP2005501310A (ja) 2001-05-02 2005-01-13 ビットストリーム インコーポレーティッド スケーリング方法及び/又は特定方向で情報媒体を表示する方法及びシステム
US7219309B2 (en) 2001-05-02 2007-05-15 Bitstream Inc. Innovations for the display of web pages
US7228501B2 (en) 2002-11-01 2007-06-05 Microsoft Corporation Method for selecting a font
JP2004252005A (ja) 2003-02-18 2004-09-09 Morisawa:Kk データ提供装置、データ提供方法及びコンピュータプログラム
US7379733B2 (en) * 2003-06-25 2008-05-27 Oracle International Corporation Mobile meeting and collaboration
US7609398B2 (en) * 2003-09-30 2009-10-27 Toshiba Corporation System and method for rendering fonts for tabbed paper stock on a network
JP4534501B2 (ja) 2004-01-30 2010-09-01 株式会社日立製作所 映像再生装置および記録媒体
US8689101B2 (en) * 2004-02-27 2014-04-01 Blackberry Limited Font data processing system and method
US7549118B2 (en) 2004-04-30 2009-06-16 Microsoft Corporation Methods and systems for defining documents with selectable and/or sequenceable parts
US8661332B2 (en) * 2004-04-30 2014-02-25 Microsoft Corporation Method and apparatus for document processing
JP2005327150A (ja) 2004-05-17 2005-11-24 Dainippon Printing Co Ltd 情報配信システムおよび情報配信方法
JP2005332088A (ja) * 2004-05-18 2005-12-02 Canon Inc 文書生成装置およびファイル変換システム
US7710422B2 (en) 2004-07-26 2010-05-04 Microsoft Corporation Font representations
US7478325B2 (en) * 2005-04-22 2009-01-13 Microsoft Corporation Methods for providing an accurate visual rendition of a text element formatted with an unavailable font
JP2007011733A (ja) 2005-06-30 2007-01-18 Dynacomware Taiwan Inc アジアウェブフォント文書の作成方法、装置及びシステム
US8040533B2 (en) 2006-01-06 2011-10-18 Microsoft Corporation Techniques for granular font subsetting for efficient document consumption
US9015578B2 (en) * 2006-01-24 2015-04-21 Microsoft Technology Licensing, Llc Dynamic optimization of available display space
US8201088B2 (en) 2006-07-25 2012-06-12 Monotype Imaging Inc. Method and apparatus for associating with an electronic document a font subset containing select character forms which are different depending on location
US7995576B2 (en) * 2006-07-31 2011-08-09 Cisco Technology, Inc. Method and system for reducing latency in a multi-channel multicast streaming environment in content-delivery networks
JP5140997B2 (ja) * 2006-11-15 2013-02-13 富士通株式会社 プログラム、文字入力編集方法及び装置
US8856647B2 (en) 2009-02-20 2014-10-07 Microsoft Corporation Font handling for viewing documents on the web

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425631A (zh) * 2013-07-19 2013-12-04 百度在线网络技术(北京)有限公司 用于获取文档文件中目标文字的字体文件的方法及装置
CN106547804A (zh) * 2015-09-23 2017-03-29 北京国双科技有限公司 silverlight 地图的中文名称显示方法及装置
CN106547804B (zh) * 2015-09-23 2019-10-25 北京国双科技有限公司 silverlight地图的中文名称显示方法及装置

Also Published As

Publication number Publication date
MX2011008445A (es) 2011-09-06
WO2010096237A3 (en) 2010-10-28
TWI477985B (zh) 2015-03-21
WO2010096237A2 (en) 2010-08-26
SG10201400110YA (en) 2014-05-29
ZA201104787B (en) 2012-09-26
KR20110132332A (ko) 2011-12-07
AU2010216343A1 (en) 2011-07-21
EP2399234A2 (en) 2011-12-28
EP2399234B1 (en) 2018-10-24
CA2749296A1 (en) 2010-08-26
AU2010216343B2 (en) 2014-06-19
US20100218086A1 (en) 2010-08-26
KR101608112B1 (ko) 2016-03-31
JP5911304B2 (ja) 2016-04-27
RU2011134909A (ru) 2013-03-10
CL2011002019A1 (es) 2012-01-20
TW201033824A (en) 2010-09-16
SG172838A1 (en) 2011-08-29
BRPI1007169A2 (pt) 2016-02-23
JP2012518836A (ja) 2012-08-16
IN2011CN05355A (zh) 2015-08-21
US8856647B2 (en) 2014-10-07
IL213813A0 (en) 2011-07-31
EP2399234A4 (en) 2018-01-10
CN102326179B (zh) 2016-01-27

Similar Documents

Publication Publication Date Title
CN102326179A (zh) 用于查看web上的文档的字体处理
US20220164527A1 (en) Templating process for a multi-page formatted document
US7653876B2 (en) Reversible document format
JP5520856B2 (ja) 携帯用計算デバイスへの無線通信媒体を介するコンテンツ送達のためのシステムおよび方法
US11132420B2 (en) Utilizing server pre-processing to deploy renditions of electronic documents in a computer network
US9176953B2 (en) Method and system of web-based document service
EP3607460A1 (en) Smarter copy/paste
US7707191B2 (en) Synchronizing undo/redo operations between different document views
MXPA03005451A (es) Metodo y sistema para asociar acciones con etiquetas semanticas en documentos electronicos.
US20160182606A1 (en) Network Based Static Font Subset Management
CN105027116A (zh) 电子阅读器内平面书籍到富书籍的转换
CN105589959A (zh) 表单处理方法和表单系统
US20080144130A1 (en) Document output processing
US11295072B2 (en) Autoform filling using text from optical character recognition and metadata for document types
US8156428B1 (en) Method and apparatus for merging digital content
US20150205764A1 (en) Encoding information into text for visual representation
CN111143719A (zh) 论文在线出版方法、装置、设备及计算机可读存储介质
CN112818274B (zh) Pdf文件转换为分页html文件的方法及计算机设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150729

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150729

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant