CN103649909A - 用于XPS和OpenXPS文档的转换工具 - Google Patents

用于XPS和OpenXPS文档的转换工具 Download PDF

Info

Publication number
CN103649909A
CN103649909A CN201180072190.2A CN201180072190A CN103649909A CN 103649909 A CN103649909 A CN 103649909A CN 201180072190 A CN201180072190 A CN 201180072190A CN 103649909 A CN103649909 A CN 103649909A
Authority
CN
China
Prior art keywords
xps
openxps
document
parts
grammer
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
CN201180072190.2A
Other languages
English (en)
Other versions
CN103649909B (zh
Inventor
D.波波夫
H.维德加加
L.布罗津斯基
H.伊娃诺夫
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 CN103649909A publication Critical patent/CN103649909A/zh
Application granted granted Critical
Publication of CN103649909B publication Critical patent/CN103649909B/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/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • 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/114Pagination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/197Version control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1246Job translation or job parsing, e.g. page banding by handling markup languages, e.g. XSL, XML, HTML
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1296Printer job scheduling or printer resource handling
    • 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • 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
    • 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
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

一种转换工具,其使得XPS文档能自动地转换成开放式XPS格式,并且对于开放式XPS格式化的文档,使其能自动地转换成XPS格式。该转换工具可以将内容类型、包级别关系、部件级别属性和图像部件转换成被任一种文档格式支持的格式。

Description

用于XPS和OpenXPS文档的转换工具
背景技术
XML纸张规范(XPS)是由微软开发的一种分页文档格式,其规定电子文档的内容和外观。开放式XML纸张规范(OpenXPS(开放式XPS))是基于XPS的一种分页文档格式,但其在某些方面不同于XPS中所使用的格式。OpenXPS是被欧洲计算机制造商协会(ECMA)采纳为ECMA-388的一种标准。OpenXPS标准要求符合定义OpenXPS格式的模式(schema),而XPS规范要求符合定义XPS格式的模式。由于两种格式之间的不同,或许不可能让XPS和OpenXPS文档互换地使用。
发明内容
本概要被提供来以简要形式介绍概念的选择,这些概念还将在下面的详细说明中进行描述。本概要既不打算标识所要求保护的主题的关键特征或必要特征,也不打算用来限制所要求保护的主题的范围。
XPS文档由部件(parts)和关系(relationships)组成。部件是类似于文件系统中的文件的数据流。关系是在一个部件和另一个部件或资源(例如,字体)之间的关联。XPS文档使用标记语言(例如,XML,XAML)来描述某个部件和某种关系。XPS规范描述了定义标记语言的语法的模式。语法定义了在描述部件和关系时所使用的元素、属性和值的配置。
XPS文档遵守在XML纸张规范版本1.0(XPS规范)中所描述的模式,而OpenXPS遵守在OpenXPS标准中所描述的模式。尽管这两种文档格式相似,但它们仍存在不同,这些不同阻碍了它们互换地使用。提供了一种转换工具,其识别在XPS规范的模式和OpenXPS标准的模式中的不同,并且自动地将按照一种格式而格式化的文档转换成遵守另一种格式的要求的文档。
通过阅读以下的详细说明并参阅相关附图,这些和其它特征及优点将变得明显。应当理解的是,前面的一般性说明和以下的详细说明两者都只是阐释性的,且不限制所要求保护的方面。
附图说明
图1示出用于在XPS和OpenXPS文档之间转换的示范性系统。
图2示出XPS和OpenXPS文档的物理布局的示范性图示。
图3是示出用于在XPS和OpenXPS文档之间转换的示范性方法的流程图。
图4是示出用于转换内容类型的示范性方法的流程图。
图5是示出用于转换包级别关系类型的示范性方法的流程图。
图6是示出用于转换部件级别元素和属性的示范性方法的流程图。
图7是示出用于转换URI的示范性方法的流程图。
图8是示出转换颜色通道值的流程图。
图9是示出示范性操作环境的框图。
具体实施方式
概述
各种实施例针对用于将XPS文档转换成OpenXPS文档和用于将OpenXPS文档转换成XPS文档的系统。XPS文档遵守XML纸张规范版本1.0(XPS规范),其目前在http://www.microsoft.com/xps处可找到,并且通过引用被合并于此。OpenXPS标准遵守ECMA-0388(OpenXPS标准),其目前在http://www.ecma-international.org/publications/standards/Ecma-388.htm处可找到,并且通过引用被合并于此。XPS文档应当遵守在XPS规范中阐明的模式,而OpenXPS文档应当遵守在OpenXPS标准中阐明的模式。尽管这两种文档格式类似,但是不同却阻碍了它们互换地使用。本文所描述的技术识别在XPS规范和OpenXPS标准的要求中的不同,并且自动地对在一种格式中所找到的不同进行转换,以便与遵从另一种格式所需的要求相匹配。
XPS和OpenXPS文档利用在开放打包约定(OPC)标准中阐明的打包要求,OPC标准已经被采纳为ECMA-376(http://www.ecma-international.org/publications/standards/Ecma-388.htm)和ISO/IEC 29500:2008(http://standards.iso.org),ECMA-376通过引用被合并于此。OPC打包要求规定了XPS和OpenXPS文档两者的结构。照此,转换工具并不修改OPC打包要求。
参照图1,图上示出具有转换工具102的系统100,转换工具102接受XPS文档104,并创建具有为了遵守OpenXPS标准而做的修改或转换的相应OpenXPS文档106。同样地,转换工具102接受OpenXPS文档108,并创建具有为了遵守XPS规范而做的转换的相应XPS文档110。转换工具102可以执行对签名定义内容类型(signature definition content type)112、对包级别关系类型(package-level relationship types)114、对部件级别元素和属性(part-level elements and attributes)116、以及对图像格式(image formats)118的转换。下文将更详细地讨论这些转换。现在将注意力转向对XPS和OpenXPS文档的概述。
XPS和OpenXPS文档
XPS和OpenXPS文档是包含有打印和呈递电子文档所需要的数据和资源的包。数据可以由文本和/或二进制文件组成,它们定义了文档的布局、文档的每一页的视觉外观、以及包括在文档中的内容。资源可以由被用来分发、呈递、打印和处理文档的文件组成,诸如字体、样式定义、位图化的(bit-mapped)图像、颜色配置文件、远程资源字典等。
XPS和OpenXPS文档被各自配置成部件和关系。在包中的每一个项目被视为一个部件。部件可以是类似于文件系统中的文件的数据流。部件可以是XML文件、XAML文件、JPEG文件等。XPS规范和OpenXPS标准各自定义一种模式,所述模式定义了部件的组织和结构,以及对于特定类型的文档来说何时需要部件。
在包中的每一个部件被用唯一的部件名称和内容类型定义。部件名称包含统一资源标识符(URI),其可被用来访问在包内的部件。URI可以是相对于包的根(即,绝对URI),或者相对于部件在包内的布置(即,相对URI)。
内容类型描述了部件中的内容的类型。内容类型可以使用多用途互联网邮件扩展(MIME)内容分类来描述部件中的内容的性质。内容类型可以描述数据的类型(例如,图像、音频、视频等)和数据的格式(例如,xml、png、tiff、jpeg等)。
关系定义一个部件到另一个部件之间或者一个部件和某个外部资源之间的关联。存在包级别关系,其定义包和部件或者包和外部资源之间的关联。还存在部件级别关系,其定义某个部件和另一个部件或者某个部件和某个外部资源之间的关联。
XPS规范和OpenXPS标准使用文档的共同逻辑表示。固定文档序列(FixedDocumentSequence)部件描述文档的序列。每一个固定文档序列部件可以引用代表文档的页面的固定文档(FixedDocument)部件。文档的每一页被称为固定页面(FixedPage)部件。每一个固定页面部件包含页面的文本标记和布局,其可以引用页面中所使用的图像、字体和其它资源。页面中所涉及的资源被存储在该部件的外部,这样使得它们可以被其它页面共享。
XPS规范使用标记语言(例如,XML、XAML)来描述某个部件。标记语言是基于模式,其使用元素、属性和命名空间(namespace)。模式规定XPS文档的语法、结构和配置。每一个部件可以具有不同的模式。某些元素和属性在XPS和OpenXPS模式中是必需的,而其它的是可选的。描述XPS文档的模式不同于描述OpenXPS文档的模式。
图2示出XPS或OpenXPS文档200(其也被称为包)的物理结构的框图。XPS或OpenXPS文档具有文件夹和文件的层次结构。在根级别202处,可能存在两个部件或文件:[Content Types].xml 204;和FixedDocumentSequence.fdseq 206。在根级别处,还可能存在三个文件夹:_rels 208;文档210;和资源212。
[Content_Types].xml 部件204包含与每一个部件相关联的所有内容类型的列表。内容类型描述部件中的内容的类型,并且使用MIME类型和扩展来描述该内容。FixedDocumentSequence.fdseq部件206列出了包中的所有文档。
文件夹_rels 208存储了列出所有包级别关系的文件_rels.rels 214。文件夹文档210是层次结构,其包含文档中的所有固定页面部件以及与每一个固定页面相关联的关系部件。图2中的文档文件夹210具有存储在文件夹/1 218中的一个文档(例如,FixedDocument.fdoc 216),以及具有存储在文件夹/pages 220中的两个页面1.fpage 222和2.fpage 224。部件 /文档/1/Pages/_rels/1.fpage.rels 228包含与固定页面部件1.fpage 222相关联的关系,并且部件 /文档/1/Pages/_rels/1.fpage.rels包含与固定页面部件2.fpage相关联的关系。文件夹资源212包含字体部件font1.odtff 232、图像部件image1.png 234以及ICC颜色配置文件colorprofile1.icc,其可被用来打印文档的两个页面。
尽管图2所示的包200在某个配置中具有有限数量的文件夹和文件,但是应当理解的是,包200在替换的配置中可以包括更多或更少的文件夹和文件。
现在将注意力转向参照各种示范性方法对系统中所使用的操作的各种实施例的讨论。可以理解的是,除非另外指示,所表示的方法并不是必然地必须以所呈现的顺序,或以任何特定顺序来执行。此外,相对于所述方法来描述的各种活动可以以串行或并行的方式,或者以串行和并行操作的任何组合来执行。所述方法可以通过使用所描述实施例或替换实施例的一个或多个硬件单元和/或软件单元,按对于给定的一组设计和性能约束所期望的那样实施。例如,所述方法可以被实施为逻辑(例如,计算机程序指令),用于由逻辑设备(例如,通用或专用的计算机)执行。
XPS和OpenXPS转换
参照图3,图上示出了用于将XPS文档转换成OpenXPS文档和用于将OpenXPS文档转换成XPS文档的示范性方法300。该方法通过以下方式开始:将一种格式的签名定义内容类型元素转换成另一种格式(块302),将一种格式的包级别关系类型转换成另一种格式(块304),将某些部件的部件级别元素和属性从一种格式转换成另一种格式(块306),将某些图像部件从一种图像格式转换成另一种图像格式(块308),以及产生新格式的新包(块310)。
签名定义内容类型的转换
图4示出用于将签名定义部件的内容类型转换成所转换的格式的示范性方法的流程图。
XPS支持数字地对XPS文档签名的能力,作为为XPS文档提供真实性证明的一种手段。签名定义部件被用来指示在数字签名过程中所使用的具体信息,诸如签名方、共同签名要求等。
在表1中示出用于签名定义部件的示范性XML标记。xml命名空间由签名定义xmlns元素定义(例如,SignatureDefinitions xmlns = "http://schemas.microsoft.com/xps/2011/01/signature-definitions")。XPS文档的签名者在签名者名称(Signer Name)属性中被标识,并且点ID(SpotID)属性是用于签名点的全局唯一识别符(例如,SignatureDefinition SignerName = "某珍妮" SpotID = "1234")。点位置(Spot Location)元素指示签名点可被显示在其上的页面(例如,PageURI = "/Documents/2/Pages/3.fpage")和签名点在页面上的布置(例如,StartX = "0.0",StartY = "0.0")。
Intent元素规定在数字地对文档签名时签名人的意向(例如,<Intent> 我已阅读条件,理解它们并同意它们<Intent>), SignBy元素规定签名人要对文档签名的日期和时间(例如,<Signby> 2011年8月3日 </Signby>),并且SigningLocation元素规定文档要被签名的合法位置(<SigningLocation> 纽约,NY </Signing Location>)。
Figure 505917DEST_PATH_IMAGE001
XPS使用用于签名定义部件的默认内容类型。在OpenXPS中,签名定义部件要求和XPS中所使用的默认内容类型不同的特定内容类型。在将XPS文档向OpenXPS文档转换时,OpenXPS内容类型被插入到签名定义部件。当将OpenXPS文档向XPS文档转换时,用于签名定义部件的内容类型被删除并且用默认内容类型取代。
参照图4,在从XPS文档向OpenXPS文档转换的情况下(块402),转换工具102搜寻具有.xaml(可扩展应用标记语言)文件扩展的部件(块404)。Xaml是一种基于XML的语言,其具有提供用来创建用户接口对象并使之动画化的能力的附加元素。被数字地签名的具有.xaml文件扩展的部件使用默认的内容类型,诸如<Default Content Type = "application/xml" Extension = "xaml"/>。这个默认内容类型并未恰当地把签名定义部件的内容标识为:是签名定义部件。相比来说,OpenXPS要求签名定义部件具有确定性地指示该部件为签名定义部件的内容类型元素。
为了确定具有.xaml文件扩展的部件是否为签名定义部件,转换工具102读取每一个.xaml部件(块406),并且扫描寻找签名定义指示符,诸如在表1所描述的签名定义部件模式内的元素和属性(块408)。这些元素和属性中的一些是可选的,而其它的是必需的,所以在.xaml部件中所采用的模式可能不同于表1所示的模式。当转换工具102找到与签名定义部件模式相关联的元素和/或属性中的至少一个时(块408),转换工具可以用所要求的OpenXPS内容类型来取代默认内容类型,所要求的OpenXPS内容类型可具有这样的形式:<Content Type = "application/vnd.ms-package.xps-signaturedefinitions+xml"/>(块410)。
在从OpenXPS文档向XPS文档转换的情况下(块412),转换工具102搜索包以寻找具有.xaml文件扩展的部件(块414)。每一个这样的部件被读取以寻找具有与串"application/vnd.ms-package.xps-signaturedefinitions+xml"相匹配的值的OpenXPS内容类型元素。OpenXPS内容类型元素被删除并用默认内容类型来取代,所述默认内容类型可以以这样的形式构造:<Default Content Type = "application/xml" Extension = "xaml"/>。
包级别关系类型的转换
图5示出用于将XPS格式化的包级别关系类型向相应的OpenXPS格式化的包级别关系类型转换和用于将OpenXPS格式化的包级别关系类型向相应的XPS格式化的包级别关系类型转换的示范性方法的流程图。
关系定义一个部件到另一个部件之间或者一个部件和某个外部资源之间的关联。存在包级别关系,其标识包和包内的部件之间的关系,以及包和外部资源之间的关系。关系元素被用来配置包和部件之间的关系。关系元素可以以XPS被格式化,如以下表2所示的那样。
Figure 423057DEST_PATH_IMAGE002
表2所示的示范性关系将包与受限字体(restricted font)部件相关联。受限字体是不能被修改或令任何编辑对该字体中的某些元素做出的字体。该关系将命名空间http://schemas.xmlformats.org/package/2006/relationships所涉及的包与被称为A1的部件(其由Id属性来标识,例如Id = "A1")相关联。类型(Type)属性标识受限字体的命名空间(例如,http://schemas.microsoft.com/xps/2005/06/restricted-font),且目标(Target)属性标识包内该字体的本地位置。
参照图5,在将XPS文档向OpenXPS文档转换的情况下(块502),转换工具102读取被存储在命名为_rels/.rels的部件中的包级别关系(块504)。在根级别处,存在文件夹_rels,其存储包含有包级别关系的命名为_rels/.rels的部件。转换工具102读取_rels/.rels部件(块504)并且扫描与关系元素相关联的类型属性的值。特别地,转换工具102搜寻用于XPS关系类型元素的值,并用表3中所示的用于相同的OpenXPS关系类型元素的相应值来取代它们(块506)。例如,如果转换工具102找到以下标记:
<Relationship Type = "http://schemas.microsoft.com/xps/2005/06/restricted-font",那么转换工具102可以将关系类型元素的值转换成如下:
<Relationship Type = "http://schemas.openxps.org/oxps/v0.1/restricted-font"。这种取代可以对表3所示的所有XPS关系类型元素执行。
Figure 140477DEST_PATH_IMAGE003
在将OpenXPS文档向XPS文档转换的情况下(块508),转换工具102读取在命名为_rels/.rels的部件中所找到的包级别关系(块510)。转换工具102读取关系类型元素的值。特别地,转换工具102搜寻表3所示的OpenXPS关系类型元素的值的每一个,并且用表3所示的相同XPS关系类型元素的相应值来取代它们(块512)。例如,如果转换工具102找到以下标记:
<Relationship Type = "http://schemas.openxps.org/oxps/v1.0/restricted-font"
那么转换工具102可以将关系类型元素的值转换成以下标记:
<Relationship Type = "http://schemas.microsoft.com/xps/2005/06/restricted-font"。这种取代可以对表3所示的所有OpenXPS关系类型元素执行。
在包级别处,这些转换可以被应用于以下的部件:数字签名定义;弃除控制;文档结构;打印票据;所要求的资源;受限字体;和故事片段。
部件级别元素和属性的转换
图6示出用于将某些XPS格式化的部件级别元素和属性转换成OpenXPS格式化的等同物,以及用于将某些OpenXPS格式化的部件级别元素和属性转换成XPS格式化的等同物的示范性方法的流程图。更具体地,该方法将XPS格式化的命名空间转换成相应的OpenXPS格式化的命名空间,将XPS格式化的关系类型转换成相应的OpenXPS格式化的关系类型,将XPS格式化的URI转换成相应的OpenXPS格式化的UR,以及将XPS格式化的颜色通道值转换成相应的OpenXPS格式化的颜色通道值。现在将注意力转向对这些转换中的每一个的描述。
命名空间是被用作XML文档中的元素和属性的名称的集合。XML命名空间由URI引用来标识。在XPS文档的某些部件中所使用的命名空间可能不同于在OpenXPS文档的相同部件中所使用的命名空间。照此,用于部件中每一个的不相同的命名空间需要被转换成合适的命名空间。在XPS和OpenXPS这两种格式中具有不同的命名空间的部件在表4中可找到。对于表4所列出的每一个部件,转换工具102用表4中所示的相应的OpenXPS格式化的命名空间来取代每一个XPS格式化的命名空间。
Figure 535687DEST_PATH_IMAGE004
每一个部件都具有标识该部件和其它部件或外部资源之间的关联的相应关系部件。关系部件具有文件名,该文件名用来自该部件的部件名称的元素来构造,并且具有文件扩展.rels。对于某些部件,在关系类型元素中指示的URI在XPS规范中与在OpenXPS标准中所规定的URI不同。对于这些确定的部件,转换工具102将关系类型元素的XPS格式化的URI转换成相应的OpenXPS格式化的URI,以及将关系类型元素的OpenXPS格式化的URI转换成相应的XPS格式化的URI。需要这种转换的部件是数字签名定义部件、弃除控制部件、文档结构部件、打印票据部件、所要求的资源部件、受限字体部件、开始部件(StartPart)部件和故事片段部件。需要这些转换的部件与XPS格式化的值和OpenXPS格式化的值一起在表3中列出。
统一资源标识符(URI)被使用来访问某个部件。绝对URI是到部件的位置的绝对地址或绝对文件路径。相对URI根据RPC 3986、统一资源标识符(URI)通用语法(http://tools.ietf.org/html/rfc3986)来配置。相对URI可以具有以正斜杠字符("/")开始的绝对文件路径,或者具有将包根用作基准URI的相对于包根的文件路径。XPS支持绝对和相对URI两者。OpenXPS要求对于固定文档、固定页面、字体和图像部件使用相对URI。照此,当从XPS文档向OpenXPS文档转换时,对于固定文档部件中的<Document Reference>元素、对于固定页面部件中的<Page Content>元素、对于字体部件中的<Glyphs>元素、以及图像部件的<ImageBrush>元素来说,转换工具102将每一个绝对URI转换成相对URI。
各种元素可以使用颜色属性来标识在明确定义的颜色空间中的特定颜色。颜色属性可以用在元素中以便打印或呈递特定的图像、对象或文本串。这样的元素的例子是<Solid Color Brush>元素和<Gradient Stop>元素。<Solid Color Brush>元素可以被用来用纯色给某个区域上色,而<Gradient Stop>元素可以被用来用渐变色给某个区域上色。颜色属性的语法可以被配置如下:
<Color = "ContextColor Profile URI channel values">,
其中文本串"ContextColor"指示某个特定颜色正被指定,文本串"Profile URI"是正使用的颜色配置文件的URI,而文本串"channel values"标识颜色配置文件中对于每一个通道的强度水平。颜色配置文件是具有文件扩展.icc的部件,并且可被存储在包的资源文件夹中。
颜色通道或通道是指颜色空间的分量。存在若干已知的颜色空间,诸如RGB(红色、绿色、蓝色)、CMYK(青色、品红色、黄色、黑色)、HLS(色度、亮度、饱和度)、HSV(色度、饱和度、值)、以及灰度级(Grayscale)。每一个颜色空间与一定数量的分量相关联,每一个分量被称为一个通道。例如,RGB与3个分量或通道相关联,它们是:红色;绿色;和蓝色。照此,RGB被称为3-通道颜色空间。每一个通道具有指示对于该通道的强度水平的值。例如,与3-通道RGB颜色空间相关联的通道值可以被表示为1,2,5,其中红色的通道值为1,绿色的通道值为2,以及蓝色的通道值为5。
在XPS规范中,颜色属性的语法规定最少3个通道值。在使用少于3个通道的颜色空间(诸如,灰度级)的情况下,在通道值文本串中加入零以便符合此要求。例如,在XPS中,以下颜色属性<Color = "ContextColor Grayscale.icc .5,0,0">指示使用灰度级着色,其是单通道颜色空间,并且其中该通道的强度水平为.5。附加的零表示不与任何通道相关联的填充符。
在OpenXPS规范中,颜色属性的语法要求不存在被用作颜色通道值的零填充符。而是,每一个颜色通道值都与某个实际通道相关联。为了遵从两种格式的语法要求,转换工具102扫描在每一个颜色属性中所指定的通道值。当从XPS文档向OpenXPS文档转换时,如果零被用作通道值,转换工具就确定该零是实际的通道值还是填充符。如果零值是填充符,转换工具102就将通道值转换成适当的格式。当从OpenXPS文档向XPS文档转换时,如果在颜色属性中存在少于3个的通道值,附加的零就相应地被添加到通道值串的末尾。
现在将注意力转向对这些转换中的每一个的操作的描述。返回去参阅图6,当从XPS文档向OpenXPS文档转换时(块602),转换工具102定位并打开包中的每一个部件(块604)。转换工具102读取每一个部件中的每一行,并查找表4所列出的XPS格式化的命名空间元素,且用表4所列出的相应的OpenXPS格式化的命名空间元素来取代它们(块606)。这种转换至少对弃除控制、文档结构、固定文档、固定文档序列、固定页面、资源字典、签名定义和故事片段部件执行。
接下来,对于表3所列出的每一个部件,转换工具102定位相应的关系部件(例如,[partname].rels文件),并且用表3中所找到的关系类型元素取代该关系类型元素(块608)。
接下来,转换工具102把针对某些部件中的某些元素的绝对URI转换成按照OpenXPS标准的等同的相对URI(块610)。参照图7,该转换仅在从XPS文档向OpenXPS文档转换时(块702-是)才执行。否则的话(块702-否),不需要该转换,因为XPS规范支持相对和绝对URI地址两者。对于表5所列出的每一个部件,转换工具102搜寻表5中所提及的元素,并检查与该元素相关联的URI(块704)。
对于不是相对形式的那些URI值,转换工具102将该URI转换成相对形式,并取代相应元素中的那个值(704)。在从绝对URI值向相对URI值转换时,转换工具102计算从包中的父部件到包中的子部件的最短路径。例如,如果父部件的URI值为"/Documents/1/Pages/FixedPage.fpage",而子部件的URI值为"/Documents/Resources/Images/image.bmp",那么相对URI值就为"../../Resources/Images/image.bmp"。转换工具102解析父的URI值直到找到共同的文件夹或找到包根。字符"../"取代共同的子的URI值的部分,并且子的URI值的其余部分被加到相对URI值上。
Figure 287742DEST_PATH_IMAGE005
返回去参照图6,转换工具102使用ICC颜色配置文件来检查颜色属性(例如,Color = "ContextColor/Colors/channelprofile.icc 1.0,0.8,0,0"),并在需要的时候转换颜色通道值(块612)。参照图8,当从XPS文档向OpenXPS文档转换时(块802),转换工具102将颜色属性中所指定的颜色通道值的数量与指定的颜色配置文件(例如,.icc文件)所需的通道值的数量进行匹配(块804)。指定的颜色配置文件的文件中的文件头信息包含指定的颜色配置文件所需的通道值的数量。如果颜色属性中所指定的颜色通道值的数量不同于指定的颜色配置文件所需的通道值的数量,那么转换工具102就消除不对应于通道的零填充符,从而将颜色属性转换成OpenXPS格式(块806)。
当从OpenXPS文档向XPS文档转换时(块808),如果在颜色属性中有少于三个的指定的通道值,(例如,Color = "ContextColor/Colors/channelprofile.icc 1.0,0.8,1.5"),那么转换工具102就将附加的零填充符加到通道值文本串的末尾,以使得存在至少3个通道颜色值(块810)。
返回去参照图3,转换工具102对不被任一种格式支持的图像部件的格式进行转换。XPS识别并支持JPEG(联合图像专家组)格式、PNG(便携式网络图形)格式、TIFF(标签图像文件格式)格式以及HD图片(HD Photo)图像格式。对比来说,OpenXPS识别并支持JPEG、PNG、TIFF以及JPEGXR(联合图像专家组XR)图像格式。OpenXPS标准不支持HD图片图像格式,而XPS规范不支持JPEGXR图像格式。当将XPS文档向OpenXPS文档转换时,转换工具通过图像转换工具将每一个HD图片图像转换成JPEGXR图像格式(块308)。在将OpenXPS文档向XPS文档转换的情况下,转换工具通过图像转换工具将每一个JPEGXR图像转换成HD图片图像(块308)。在至少一个实施例中,Windows图像转换器可以被用来使这些转换便利,虽然也可以使用具有将HD图片图像转换成JPEGXR图像和进行相反转换的能力的任何可用的图像转换器。
创建新包
返回去参照图3,在已经进行完所有上述转换之后,新包以所期望的格式创建。上述转换中的每一个产生了一个新的部件,而不是更改现有的部件,并且在所有转换已经执行之后,产生新包,从而完成转换(块310)。新包可以通过使用OPC应用编程接口(API)来产生。
应当指出的是,本文所举例说明的方法可以代表由本文所描述的一个或多个实施例执行的操作中的一些或所有操作,并且每一个方法可以包括比以上所描述的更多或更少的操作。此外,步骤的顺序可以针对所打算的实现而以替换的配置来执行。
操作环境
现在参照图9,图上示出示范性操作环境900的示意性框图。操作环境900可以包括一个或多个客户机902,其通过通信框架904与一个或多个服务器906通信。在一个实施例中,客户机902可以被配置成包含可能需要被转换成OpenXPS文档918的一个或多个XPS文档916,和/或可能要求向XPS文档916转换的一个或多个OpenXPS文档918。服务器906可随同包一起接收来自一个或多个客户机902的请求,并且可使转换对于客户机902便利。服务器906然后可以将转换后的包(XPS文档916或OpenXPS文档918)提供回客户机902。在另一个实施例中,转换工具102可以驻留在客户机902中,从而使得客户机902能执行想要的转换,而无需服务器的介入。在又一个实施例中,服务器906可被配置成包含一个或多个XPS文档930、一个或多个OpenXPS文档932以及转换工具928。服务器906可以执行想要的转换,而无需接收来自任何客户机902的请求。
客户机902可以被体现为硬件设备、软件模块或者它们的组合。这样的硬件设备的例子可以包括,但不限于,计算机(例如,服务器、个人计算机、膝上型计算机等)、蜂窝电话、个人数字助理或任何类型的计算设备等。客户机902还可以被体现为具有指令的软件模块,所述指令以单个执行路径、多个并发的执行路径(例如,线程、进程等)或以任何其它方式执行。
服务器906可以被体现为硬件设备、软件模块或者它们的组合。这样的硬件设备的例子可以包括,但不限于,计算机(例如,服务器、个人计算机、膝上型计算机等)、蜂窝电话、个人数字助理或任何类型的计算设备等。服务器906还可以被体现为具有指令的软件模块,所述指令以单个执行路径、多个并发的执行路径(例如,线程、进程等)或以任何其它方式执行。
通信框架904使客户机902和服务器906之间的通信便利。通信框架904可以包含利用任何通信协议的任何类型的通信介质,诸如有线或无线网络。
客户机902可以具有处理器908和存储器910。存储器910可以是任何计算机可读存储介质或者计算机可读介质,其可以存储处理器可执行的指令、过程、应用和数据。计算机可读介质不涉及传播的信号,诸如通过载波传输的调制的数据信号。其可以是任何类型的存储器设备(例如,随机存取存储器、只读存储器等)、磁性存储装置、易失性存储装置、非易失性存储装置、光学存储装置、DVD、CD、软盘驱动器、磁盘驱动器、闪存等。存储器910还可以包括一个或多个外部存储设备或位于远程的存储设备。存储器910可以包含如下的指令和数据:
● 操作系统912;
● 转换工具914;
● 一个或多个XPS文档916;
● 一个或多个OpenXPS文档918;以及
● 各种其它应用和数据920。
服务器906可具有处理器922和存储器924。存储器924可以是任何计算机可读存储介质或者计算机可读介质,其可以存储处理器可执行的指令、过程、应用和数据。其可以是任何类型的存储器设备(例如,随机存取存储器、只读存储器等)、磁性存储装置、易失性存储装置、非易失性存储装置、光学存储装置、DVD、CD、软盘驱动器、磁盘驱动器、闪存等。存储器924还可以包括一个或多个外部存储设备或位于远程的存储设备。存储器924可以包含如下的处理器可执行的指令和数据:
● 操作系统926;
● 转换工具928;
● 一个或多个XPS文档930;
● 一个或多个OpenXPS文档932;以及
● 各种其它应用和数据934。
总结
以上的说明已经描述了转换工具的实施例,该转换工具自动地将XPS文档转换成OpenXPS文档,以及将OpenXPS文档转换成XPS文档。该转换工具提供了一种自动且全面的技术来执行转换,其相比于手动过程更不易发生错误且时间上更高效。
尽管本主题是以特定于结构特征和/或方法动作的语言被描述的,但应当理解的是,在所附权利要求中定义的主题并不必然地局限于以上所描述的特定特征或动作。而是,以上所描述的特定特征和动作是作为实施权利要求的示例性形式而被公开的。
可以使用硬件单元、软件单元或两者的组合来实施各种实施例。硬件单元的例子可以包括设备、组件、处理器、微处理器、电路、电路元件、集成电路、专用集成电路、可编程逻辑器件、数字信号处理器、现场可编程门阵列、存储器单元、逻辑门等。软件单元的例子可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口、指令集、计算代码、代码段以及它们的任何组合。确定是否使用硬件单元和/或软件单元来实施一个实施例可以根据许多因素而变化,诸如所期望的计算速率、功率水平、带宽、计算时间、负载平衡、存储器资源、数据总线速度以及其它设计或性能约束,正如给定的实现所期望的那样。
一些实施例可以包括用来存储指令或逻辑的存储介质。存储介质的例子可以包括能存储电子数据的一种或多种类型的计算机可读存储介质,包括易失性存储器或非易失性存储器、可拆卸或不可拆卸存储器、可擦除或不可擦除存储器、可写或可重写存储器等。逻辑的例子可包括各种软件组件,诸如程序、过程、模块、应用、代码段、程序堆栈、中间件、固件、方法、例程等。在一个实施例中,例如,一个制造品可以存储可执行的计算机程序指令,当所述指令由处理器执行时,致使该处理器完成根据所述实施例的方法和/或操作。可执行的计算机程序指令可以根据预定义的计算机语言、方式或语法来实施,以命令计算机来执行一定的功能。指令可以使用任何适当的高级、低级、面向对象的、可视的、编译的和/或解释的编程语言来实施。
在各种实施例中,本文所描述的系统100可以包括具有多个组件、程序、过程、模块的计算机实施的系统。当在本文中使用时,这些术语意指涉及计算机的实体,包括或者硬件、硬件和软件的组合,或者软件。例如,组件可以被实施为在处理器上运行的进程、硬盘驱动器、多个存储驱动器(光学的和/或磁性的存储介质的)、对象、可执行文件、执行的线程、程序和/或计算机。作为举例说明,在服务器上运行的应用和该服务器两者都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,并且组件可以如对于给定的实现所期望的那样定位于一台计算机上和/或分布在两台或更多台计算机之间。实施例并不以这种方式受限。
本文所描述的实施例涉及遵守特定规范和标准的XPS文档和OpenXPS文档。然而,这些实施例并不限于这些规范和标准,并且可用在兼容的规范和标准中,诸如本文所叙述的那些规范和标准的未来版本。XPS兼容(XPS-compatible)文档是基本上遵守XPS版本1.0规范(包括但不限于该规范的所有版本和修订)的模式的文档,尽管可能不用术语"XPS"来引用它们。类似地,OpenXPS兼容(OpenXPS-compatible)文档是基本上遵守OpenXPS版本1.0标准(包括但不限于该标准的所有版本和修订)的模式的文档,尽管可能不用术语"OpenXPS"来引用它们。 

Claims (10)

1.一种计算机实施的方法,包括:
提供包含有以XPS兼容格式或OpenXPS兼容格式配置的数据的第一包;
当所述第一包包含有以XPS兼容格式配置的数据时,将所述第一包中的数据转换成OpenXPS兼容格式;以及
当所述第一包包含有以OpenXPS兼容格式配置的数据时,将所述第一包中的数据转换成XPS兼容格式。
2.权利要求1所述的方法,包括:
当所述第一包包含有以XPS兼容格式配置的数据时,产生以OpenXPS兼容格式包含该数据的第二包。
3.权利要求1所述的方法,包括:
当所述第一包包含有以OpenXPS兼容格式配置的数据时,产生以XPS兼容格式包含该数据的第二包。
4.权利要求1所述的方法,还包括:
将第一语法与XPS兼容格式相关联,并且将第二语法与OpenXPS兼容格式相关联;以及
将符合所述第一语法的数据转换成所述第二语法。
5.权利要求1所述的方法,还包括:
将第一语法与XPS兼容格式相关联,并且将第二语法与OpenXPS兼容格式相关联;以及
将符合所述第二语法的数据转换成所述第一语法。
6.一种计算机可读存储介质,在其上存储有处理器可执行的指令,包括:
以与XPS兼容格式相关联的第一语法配置的指令;以及
接收以所述第一语法配置的所述指令、并将以所述第一语法配置的所述指令转换成以第二语法配置的指令的指令,所述第二语法与OpenXPS兼容格式相关联。
7.权利要求6所述的计算机可读存储介质,还包括:
用于将以所述第一语法配置的命名空间元素转换成以所述第二语法配置的命名空间元素的指令。
8.权利要求6所述的计算机可读存储介质,还包括:
用于将以所述第一语法配置的内容类型元素转换成以所述第二语法配置的内容类型元素的指令。
9.权利要求6所述的计算机可读存储介质,还包括:
用于将以所述第一语法配置的关系类型元素转换成以所述第二语法配置的关系类型元素的指令。
10.权利要求6所述的计算机可读存储介质,还包括:
用于将以所述第一语法配置的URI转换成以所述第二语法配置的URI的指令。
CN201180072190.2A 2011-07-08 2011-10-10 用于XPS和OpenXPS文档的转换工具 Active CN103649909B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/178,514 2011-07-08
US13/178514 2011-07-08
US13/178,514 US9183186B2 (en) 2011-07-08 2011-07-08 Conversion tool for XPS and OpenXPS documents
PCT/US2011/055651 WO2013009336A1 (en) 2011-07-08 2011-10-10 A conversion tool for xps and openxps documents

Publications (2)

Publication Number Publication Date
CN103649909A true CN103649909A (zh) 2014-03-19
CN103649909B CN103649909B (zh) 2015-07-15

Family

ID=47439410

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180072190.2A Active CN103649909B (zh) 2011-07-08 2011-10-10 用于XPS和OpenXPS文档的转换工具

Country Status (4)

Country Link
US (3) US9183186B2 (zh)
EP (1) EP2729872A4 (zh)
CN (1) CN103649909B (zh)
WO (1) WO2013009336A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302775A (zh) * 2014-06-30 2016-02-03 鸿合科技有限公司 一种文件格式转换方法及装置
CN109074504A (zh) * 2016-05-12 2018-12-21 惠普发展公司,有限责任合伙企业 3d打印文件的处理
CN112783960A (zh) * 2021-01-22 2021-05-11 北京澎思科技有限公司 数据处理系统及方法、电子设备、计算机可读存储介质

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5871521B2 (ja) * 2011-08-26 2016-03-01 キヤノン株式会社 印刷データ処理方法、印刷データ処理装置及びプログラム
US10275505B2 (en) * 2014-06-24 2019-04-30 Adobe Inc. In-application conversion of file versions using cloud services
US20220269851A1 (en) * 2021-02-23 2022-08-25 Coda Project, Inc. System, method, and apparatus for publication and external interfacing for a unified document surface
CN107291673A (zh) * 2017-05-19 2017-10-24 广州视源电子科技股份有限公司 一种文档的处理方法、系统、可读存储介质及计算机设备
CN112380851A (zh) * 2020-12-02 2021-02-19 好活(昆山)网络科技有限公司 一种基于大数据的文字识别系统及方法
CN113065337B (zh) * 2021-02-26 2023-06-16 成都环宇知了科技有限公司 一种基于OpenXml的定位文档并进行评分的方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090219550A1 (en) * 2008-02-29 2009-09-03 Burton Lee Levin Interface for Building a Print Container
US20090282389A1 (en) * 2008-05-12 2009-11-12 Microsoft Corporation Abstracting Test Cases From Application Program Interfaces
US7716570B2 (en) * 2005-12-12 2010-05-11 Microsoft Corporation Interfaces for creation and access of extensible markup language paper specification documents
CN101739224A (zh) * 2008-11-12 2010-06-16 三星电子株式会社 略图创建方法以及图像形成装置
US20100153842A1 (en) * 2008-12-12 2010-06-17 Microsoft Corporation Rendering source content for display

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004062600A (ja) 2002-07-30 2004-02-26 Fujitsu Ltd 構造型文書の変換方法、復元方法、変換及び復元方法及びプログラム
US7921358B2 (en) * 2006-01-17 2011-04-05 Microsoft Corporation Automatic package conformance validation
JP4785579B2 (ja) 2006-03-17 2011-10-05 キヤノン株式会社 情報処理装置および情報処理装置における印刷設定反映方法とプログラム
US7761783B2 (en) * 2007-01-19 2010-07-20 Microsoft Corporation Document performance analysis
JP5031514B2 (ja) * 2007-10-31 2012-09-19 キヤノン株式会社 データ処理装置およびデータ処理方法
US9235559B2 (en) * 2008-04-02 2016-01-12 Microsoft Technology Licensing, Llc Progressive page loading
US8504909B2 (en) * 2008-04-04 2013-08-06 Microsoft Corporation Load-time memory optimization
JP5311870B2 (ja) 2008-04-22 2013-10-09 キヤノン株式会社 構造化文書変換装置、構造化文書変換方法、及びコンピュータプログラム
US8015213B2 (en) * 2008-06-26 2011-09-06 Microsoft Corporation Content having native and export portions
US20100042915A1 (en) * 2008-08-12 2010-02-18 Setsuo Ohara Personalized Document Creation
US8060490B2 (en) * 2008-11-25 2011-11-15 Microsoft Corporation Analyzer engine
KR101496438B1 (ko) 2009-09-08 2015-02-26 삼성전자주식회사 인쇄제어장치, 화상형성장치 및 인쇄제어방법
KR20110051056A (ko) * 2009-11-09 2011-05-17 삼성전자주식회사 인쇄 제어 단말장치 및 인쇄 제어 방법
US9821517B2 (en) * 2013-06-26 2017-11-21 Microsoft Technology Licensing, Llc 3D manufacturing platform

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7716570B2 (en) * 2005-12-12 2010-05-11 Microsoft Corporation Interfaces for creation and access of extensible markup language paper specification documents
US20090219550A1 (en) * 2008-02-29 2009-09-03 Burton Lee Levin Interface for Building a Print Container
US20090282389A1 (en) * 2008-05-12 2009-11-12 Microsoft Corporation Abstracting Test Cases From Application Program Interfaces
CN101739224A (zh) * 2008-11-12 2010-06-16 三星电子株式会社 略图创建方法以及图像形成装置
US20100153842A1 (en) * 2008-12-12 2010-06-17 Microsoft Corporation Rendering source content for display

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302775A (zh) * 2014-06-30 2016-02-03 鸿合科技有限公司 一种文件格式转换方法及装置
CN109074504A (zh) * 2016-05-12 2018-12-21 惠普发展公司,有限责任合伙企业 3d打印文件的处理
CN112783960A (zh) * 2021-01-22 2021-05-11 北京澎思科技有限公司 数据处理系统及方法、电子设备、计算机可读存储介质

Also Published As

Publication number Publication date
US10204089B2 (en) 2019-02-12
US20190266229A1 (en) 2019-08-29
CN103649909B (zh) 2015-07-15
EP2729872A1 (en) 2014-05-14
US20160098382A1 (en) 2016-04-07
US20130014000A1 (en) 2013-01-10
US10755041B2 (en) 2020-08-25
US9183186B2 (en) 2015-11-10
WO2013009336A1 (en) 2013-01-17
EP2729872A4 (en) 2015-12-16

Similar Documents

Publication Publication Date Title
CN103649909A (zh) 用于XPS和OpenXPS文档的转换工具
Cheikes et al. Common platform enumeration: Naming specification version 2.3
CN101185094B (zh) 发送和接收电子名片
US9489348B2 (en) Screen generating method, image forming apparatus, and computer program product
KR101122902B1 (ko) 레거시 및 진보된 컬러 관리 애플리케이션을 지원하는 방법 및 장치
US8023135B2 (en) Interface for building a print container
CN103168288A (zh) 打印应用
AU2004258469A1 (en) Methods and apparatus for media selection in cluster printing systems
JP2003177915A (ja) 構造化データの汎用オブジェクト指向記述(gdl)のための方法
US20150029554A1 (en) Method and apparatus for printing data with predetermined format using bluetooth communication, and method of storing template data
Langer et al. From UML profiles to EMF profiles and beyond
EP1763735A1 (en) Apparatus and method of transmitting/storing print or display control information, and recording medium thereof
CN110474836A (zh) 一种邮件模板生成方法、装置、计算设备和介质
CN102132313B (zh) 具有本机部分和导出部分的内容
JP5032502B2 (ja) インデクシングされたカラーマネージメントリソースを用いてドキュメントデータを生成および処理する方法、コンピュータプログラム製品および装置
US7158250B2 (en) Information processing apparatus, information processing system, information processing method, coversheet generating method, program, and storage medium
CN101470737A (zh) 改变文件格式的文件类型转换系统及其方法
MXPA02006022A (es) Un sistema y metodo para modificar la slida de un programa de computo sin realizar modificaciones de instrucciones de codigo fuente.
US20070242286A1 (en) Method and system for printing personal management information
CN112925514A (zh) 一种机器学习平台扩展自定义算法组件的方法
US20080250036A1 (en) Information processing apparatus, control method therefor, program, and storage medium
JP5870670B2 (ja) 画像処理装置、及び、画像形成装置
JP3940922B2 (ja) ソフトウェアコード生成装置、ソフトウェアコード生成方法および記録媒体並びにプログラム
US10567317B2 (en) Method for generating a dataset defining a message for a constrained application
Woitsch BPaaS modelling: Business and IT-cloud alignment based on adoxx

Legal Events

Date Code Title Description
PB01 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: 20150623

C14 Grant of patent or utility model
C41 Transfer of patent application or patent right or utility model
GR01 Patent grant
TA01 Transfer of patent application right

Effective date of registration: 20150623

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.