US9569865B2 - Supporting color fonts - Google Patents
Supporting color fonts Download PDFInfo
- Publication number
- US9569865B2 US9569865B2 US14/135,973 US201314135973A US9569865B2 US 9569865 B2 US9569865 B2 US 9569865B2 US 201314135973 A US201314135973 A US 201314135973A US 9569865 B2 US9569865 B2 US 9569865B2
- Authority
- US
- United States
- Prior art keywords
- information
- computing device
- font
- color
- file
- 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.)
- Expired - Fee Related, expires
Links
- 230000015654 memory Effects 0.000 claims abstract description 41
- 230000004044 response Effects 0.000 claims abstract description 19
- 238000000034 method Methods 0.000 claims description 52
- 239000003086 colorant Substances 0.000 claims description 38
- 230000003993 interaction Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 16
- 230000000007 visual effect Effects 0.000 claims description 13
- 230000003362 replicative effect Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 19
- 230000001413 cellular effect Effects 0.000 description 14
- 238000004590 computer program Methods 0.000 description 8
- 238000013475 authorization Methods 0.000 description 6
- 239000003795 chemical substances by application Substances 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 235000014510 cooky Nutrition 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 1
- 235000017491 Bambusa tulda Nutrition 0.000 description 1
- 241001330002 Bambuseae Species 0.000 description 1
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 1
- 239000011425 bamboo Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G06F17/214—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
Definitions
- This description relates to techniques for allowing computing devices to support color fonts for presentation.
- the systems and techniques described here relate to determining if an asset presenter (e.g., a web browser, a device, etc.) is capable of supporting fonts that are capable of employing multiple colors. Appropriate action can be taken based upon the determination. For example, if capable of supporting such color fonts, appropriate font information may be provided to the asset presenter for presenting the font (e.g., in an asset such as a webpage, website, etc.). If not supported by the asset presenter, font information may be prepared and provided such that the asset presenter can present the color fonts. By providing the ability to present such richly colored content, viewer experiences may be improved along with their interest in the asset (e.g., webpage, website, etc.) being presented.
- an asset presenter e.g., a web browser, a device, etc.
- appropriate font information may be provided to the asset presenter for presenting the font (e.g., in an asset such as a webpage, website, etc.).
- font information may be prepared and provided such that the
- a computer-implemented method includes receiving information that requests one or more colored fonts of a web asset for an asset presenter being executed by a computing device.
- the method include sending color font information to the computing device to allow content of the web asset represented in colored fonts to be presented by the computing device.
- the color font information is provided by an executable file and a color font file, or, an executable file that includes content of the color font file.
- the executable file when executed by the computing device, may adjust a document object model. Adjusting the document object model may include replicating glyphs of the web asset in a node-based structure representation of the document object model. Adjusting the document object model may include assigning one or more colors to the replicated glyphs.
- the color font file may include a font subset for presenting the content of the web asset.
- a system in another aspect, includes a computing device that includes a memory configured to store instructions.
- the computing device also includes a processor to execute the instructions to perform operations that include receiving information that requests one or more colored fonts of a web asset for an asset presenter being executed by a computing device.
- Operations also include, in response to receiving the information, sending color font information to the computing device to allow content of the web asset represented in colored fonts to be presented by the computing device.
- the color font information is provided by an executable file and a color font file, or, an executable file that includes content of the color font file.
- the executable file when executed by the computing device, may adjust a document object model. Adjusting the document object model may include replicating glyphs of the web asset in a node-based structure representation of the document object model. Adjusting the document object model may include assigning one or more colors to the replicated glyphs.
- the color font file may include a font subset for presenting the content of the web asset.
- one or more computer readable media storing instructions that are executable by a processing device, and upon such execution cause the processing device to perform operations that include receiving information that requests one or more colored fonts of a web asset for an asset presenter being executed by a computing device. Operations also include, in response to receiving the information, sending color font information to the computing device to allow content of the web asset represented in colored fonts to be presented by the computing device.
- the color font information is provided by an executable file and a color font file, or, an executable file that includes content of the color font file.
- the executable file when executed by the computing device, may adjust a document object model. Adjusting the document object model may include replicating glyphs of the web asset in a node-based structure representation of the document object model. Adjusting the document object model may include assigning one or more colors to the replicated glyphs.
- the color font file may include a font subset for presenting the content of the web asset.
- a computer-implemented method that includes receiving information that indicates whether an asset presenter being executed by a computing device is capable of presenting one or more colored fonts of a web asset. In response to receiving the information, sending color font information to the computing device to allow content of the web asset represented in colored fonts to be presented by the computing device.
- Sending the font information may include sending an executable file to the computing device.
- Sending the font information may include sending a color font file to the computing device.
- the color font file may include scalable vector graphics.
- Sending the color font information may include sending a file to the computing device that includes glyph spacing information and is absent glyph marking information. Positioning of the glyph spacing information as presented by the computing device may be adjustable based upon user interaction.
- a system in another aspect, includes a computing device that includes a memory configured to store instructions.
- the computing device also includes a processor to execute the instructions to perform operations that include receiving information that indicates whether an asset presenter being executed by a computing device is capable of presenting one or more colored fonts of a web asset.
- receiving information that indicates whether an asset presenter being executed by a computing device is capable of presenting one or more colored fonts of a web asset.
- sending color font information to the computing device to allow content of the web asset represented in colored fonts to be presented by the computing device.
- Sending the font information may include sending an executable file to the computing device.
- Sending the font information may include sending a color font file to the computing device.
- the color font file may include scalable vector graphics.
- Sending the color font information may include sending a file to the computing device that includes glyph spacing information and is absent glyph marking information. Positioning of the glyph spacing information as presented by the computing device may be adjustable based upon user interaction.
- one or more computer readable media storing instructions that are executable by a processing device, and upon such execution cause the processing device to perform operations that include receiving information that indicates whether an asset presenter being executed by a computing device is capable of presenting one or more colored fonts of a web asset. In response to receiving the information, sending color font information to the computing device to allow content of the web asset represented in colored fonts to be presented by the computing device.
- Sending the font information may include sending an executable file to the computing device.
- Sending the font information may include sending a color font file to the computing device.
- the color font file may include scalable vector graphics.
- Sending the color font information may include sending a file to the computing device that includes glyph spacing information and is absent glyph marking information. Positioning of the glyph spacing information as presented by the computing device may be adjustable based upon user interaction.
- FIG. 1 illustrates a mobile device presenting text in a single color.
- FIG. 2 is a block diagram of an Internet based computer network.
- FIG. 3 illustrates a font service provider for distributing font information to computing devices.
- FIG. 4 illustrates presentable content that employs multiple colors.
- FIG. 5 illustrates glyphs represented by spacing and non-marking information.
- FIGS. 6 a and b is an example flow chart of operations of a font service manager.
- FIG. 7 is a block diagram showing an example of a system for providing hosted storage and accessing the hosted storage from a client device.
- FIG. 8 illustrates an example of a computing device and a mobile computing device that can be used to implement the techniques described here.
- many types of computing devices are capable of presenting various types of graphical content such as text, images, video, etc.
- various types of font families e.g., Times New Roman, Arial, etc.
- Each font generally includes a set of individual character shapes called glyphs and the glyphs generally share various design features (e.g., geometry, stroke thickness, serifs, size, etc.) associated with the font.
- One or more techniques may be utilized for representing such fonts; for example, outline-based representations may be adopted in which lines and curves are used to define the borders of glyphs.
- Such fonts may be scalable for a variety of sizes (e.g., for rendering by various computing devices) and may be represented in one or more formats.
- scalable outline fonts may be represented in a format that includes data structures capable of supporting a variety of typographic visual symbols of many languages.
- a color is also generally applied. For example, relatively dark colors (e.g., black, blue, etc.) are typically implemented for presenting the font characters. However, other colors such as lighter shaded colors (e.g., white, yellow, etc.) may also be implemented (e.g., when a darker background such as a black background is being presented).
- some devices, operating systems, software applications etc. may be capable of presenting font characters and features that employ a single color.
- many such devices, operating systems, applications, etc. are unable to support presenting such characters and features in multiple colors.
- it may be desired to present an individual font with multiple colors such as one portion of a character in one color (e.g., the horizontal crossbar of the character “T”) and another portion of the character (e.g., the vertical post of the character “T”) in another color.
- different characters may be presented in different colors, for example the font character “A” may be presented in the color red while the font character “B” may be presented in the color blue.
- a cellular telephone 100 is executing an asset presenter (e.g., web browser application 102 ) to present content transmitted over one or more networks (e.g., the Internet) from a variety of sources.
- the web browser 102 does not support the ability to present font characters in multiple colors.
- each character of the presented phrase “Hi” 104 may only be presented by the web browser 102 in one color (e.g., the color black) and not in multiple colors.
- the ability to use multiple colors for individual characters may or may not be supported and multi-color content from an author may not be presented as originally prepared.
- information may be prepared and provided to the device so it can be capable of properly presenting such multi-color content as originally intended.
- a computing environment 200 includes a computing device (e.g., the cellular telephone 100 ) that a user may interact with (e.g., using a keypad, etc.) to identify a target web asset (e.g., website, webpage, etc.) for being presented by the computing device.
- a target web asset e.g., website, webpage, etc.
- the web browser 102 or other type of asset presenter e.g., a software application
- operations of the web browser 102 may include requesting, via the Internet 202 , content from one or more webpage sources 204 a,b,c for the target webpage(s).
- a webpage page is requested from web asset source 204 a and a corresponding web asset file or files 206 are sent from the source through the Internet 202 to the cellular telephone 100 .
- the web asset files 206 include a hypertext markup language (HTML) file that includes instructions for presenting the asset and a cascading style sheet (CSS) file that provides presentation semantics for the asset being provided by the HTML file.
- HTML hypertext markup language
- CSS cascading style sheet
- one or more techniques and methodologies may be implemented. For example, operations may be executed at one or more locations for making the determination. In the illustrated example, operations may be executed by the cellular telephone 100 (or other types of user computing devices) and a font service provider 208 , which is in communication with the computing device through one or more networks (e.g., the Internet 202 ).
- the font service provider 208 may incorporate one or more architectures, layouts, etc.
- the font service provider 208 may incorporate a relatively large distributions of systems, computing devices (e.g., servers), etc. deployed in one or more locations (e.g., different geographical locations) and can be considered a content delivery network.
- the font service provider 208 may execute operations to provide appropriate information to the computing device for presenting the multi-color content for either situation (e.g., the web browser supports multi-color fonts or the web browser does not support multi-color fonts).
- a color font file 210 represents the multi-color information that is sent from the font service provider 208 to the user device (i.e., the cellular telephone 100 ).
- the user device i.e., the cellular telephone 100
- the multi-color information e.g., contained in the color font file 210
- the information is used by the user device (e.g., executed by an asset presenter such as a web browser) to present the multi-color character fonts.
- a determination is made whether a web browser supports color fonts is made for other types of web asset presenters.
- a web asset presenter may be considered as one or more applications (referred to as a web-based application) that can access or be accessed over a network such as the Internet, an intranet, etc.
- Such web-based applications may also be considered as software applications that are hosted over a network and coded in a browser supported programming language (such as JavaScript, combined with a browser-rendered markup language such as HTML, etc.).
- a web asset presenter may also be one or more applications (e.g., native application) executed on a computing device (or multiple devices) such as a user device (e.g., the cellular telephone 100 ) that provide a view of a web asset (e.g., a web view). Similar applications executed locally, remotely, or in combination among multiple locations may be considered as a web asset presenter. Similar to making the determination for web asset presenters, such a determination may be made for asset presenters that do not communicate with networks such as the Internet. For example, an asset presenter may be considered as one or more applications locally executed by a computing device that is capable of presenting network based assets such webpages, websites, etc. without being in communication with the Internet.
- applications e.g., native application
- a computing device or multiple devices
- a user device e.g., the cellular telephone 100
- Similar applications executed locally, remotely, or in combination among multiple locations may be considered as a web asset presenter. Similar to making the determination for web asset presenters, such a
- One or more architectures may be implemented by the font service provider 208 for determining if an asset presenter is capable of presenting color fonts along with other functionality.
- a font service manager 212 is executed by a server 214 located at the font service provider 208 .
- the font service manager 212 may access information from one or more sources such as a storage device 216 (e.g., one or more hard drives, CD-ROMs, etc.) located at the font service provider 208 .
- the font information provided by the server 214 may also be collected from one or more other sources located internal or external to the font service provider 208 .
- the web browser 102 may initiate a request to be delivered to the font service provider 208 that asks for a software agent to be sent to the user device (e.g., the cellular telephone 100 ).
- a software agent can be considered as a software module that may be executable in a substantially autonomous manner.
- a software agent may operate without considerable user interaction.
- the software agent can adaptively identify if the web browser 102 being executed by the user device is capable of supporting color fonts such as multiple colors being applied to one or more font characters.
- the software agent may be implemented as a file that includes scripting language that is capable of supporting a variety of programming styles (e.g., JavaScript).
- the software agent may be executed (e.g., by the web browser 102 ) to determine if the executed browser 102 is capable of presenting color fonts.
- one or more techniques may be implemented. For example, by identifying the browser being executed (e.g., from information such as browser type, version, manufacturer, etc.) the software agent may use one or more predefined rules (e.g., Microsoft Internet Explorer version 10 supports color fonts, Microsoft Internet Explorer version 8 does not support color fonts, etc.) to determine if the web browser is capable of presenting such color fonts such as multi-color characters.
- predefined rules e.g., Microsoft Internet Explorer version 10 supports color fonts, Microsoft Internet Explorer version 8 does not support color fonts, etc.
- the software agent may poll the asset presenter (e.g., web browser), test the asset presenter, etc. to determine if the asset presenter supports color fonts such as multi-color font characters.
- Operations may be executed remotely from the user device to determine if an asset presenter (e.g., executed by the user device) is capable of supporting color fonts such as multi-color font characters.
- operations may be executed at the font service provider 208 (with or without operations being executed on the user device) for making such determinations.
- the font service provider 208 may use information provided by the user device to execute the determinations.
- software e.g., a user agent
- asset presenter e.g., the web browser 102
- asset presenter e.g., the web browser 102
- the user agent may also provide other information such as device information (e.g., type of user device, version, capabilities, etc.), other software executed by the device (e.g., operating system, applications, etc.) and other types of information (e.g., protocols being used by the web browser, etc.).
- device information e.g., type of user device, version, capabilities, etc.
- other software executed by the device e.g., operating system, applications, etc.
- other types of information e.g., protocols being used by the web browser, etc.
- the font service provider 208 may determine if the user device (e.g., cellular telephone 100 ) is capable of supporting color fonts.
- Software agents provided to the user device may also provide other type of functionality.
- a software agent may also gather other information for having a target web asset (that uses color fonts) to be presented by the user computing device.
- the software agent may identify the particular color-related information from the web asset that may be needed from the font service provider 208 to present the asset.
- the software agent may scan the CSS file provided with the web asset file(s) 206 of the web asset to determine such color-related information included in the web asset.
- the software agent may also review the HTML file provided with the web asset file(s) 206 to identify color-related information such as the particular characters, glyphs, etc.
- font service provider 208 information associated with the user computing device, operating system used by the device, application(s) executed by the device (e.g., the type of web browser being executed by the device), etc. Once identified, this information may be provided to the font service provider 208 for processing and preparing the needed information for delivery to the user computing device (e.g., the cellular telephone 100 ) for presenting the content of the asset. Along with color-related information, other types of information may be provided to the font service provider 208 .
- the particular fonts, characters, typographical features, etc. included in the content of the web asset may be identified (e.g., by a software agent) and provided.
- the font service manager 212 may prepare one or more subsets of appropriate font data (along with the color-related information) such that the only font information provided to the user device is the information needed to present the web asset and no additional font information (e.g., font characters not included in the web asset) is transmitted from the font service provider 208 to the user computing device.
- a diagram 300 graphically illustrates data transfers such that appropriate information (e.g., color font information) is provided to asset presenters (e.g., web browsers) for presenting web assets based upon whether or not the asset presenter supports color fonts.
- asset presenters e.g., web browsers
- one computing device i.e., the cellular telephone 100
- another computing device i.e., a tablet computing device 302
- Both devices respectively execute browsers 102 , 304 , which in this example, are directed to the same target web asset. From the source of the web asset, the corresponding web asset file(s) 206 are provided to each device 100 , 302 .
- software agents 306 , 308 are respectively provided to the devices (e.g., from the font service provider 208 ) or are previously residing and are executed (e.g., to determine if each corresponding device is capable of providing support for such color fonts).
- the web asset file(s) 206 e.g., an HTML file and a CSS file
- the recipient device may initiate a request being sent to the font service provider 208 .
- a software agent e.g., a JavaScript file
- the font service provider 208 may perform other operations associated with the software agent. For example, at predefined times (e.g., intervals, event triggered times, etc.) the agent may be updated by the font service provider 208 as information is collected. Information regarding which types of browsers is capable of supporting color fonts, incapable of supporting color fonts, etc. may be gathered and included in updated versions of the software agent.
- the font service manager 212 may execute other operations in some arrangements.
- the font service manager 212 may determine if a web browser is capable of supporting or not supporting color fonts and other potential features (e.g., scalable font formats such as OpenType fonts). Receiving information from a device (e.g., the type of browser being executed by the device in a request such as request 310 ), the font service manager 212 may be able to determine if color fonts are supported by the device and execute appropriate operations. For example, information associated with the asset presenter (e.g., web browser 304 ) and collected by a user agent may be provided in the request (being sent from the device to the font service provider 208 ). From the provided information and possibly other information (e.g., present at the font service provider 208 ), the font service manager 212 may determine the color font capabilities of the asset presenter executed by the device and take appropriate action.
- asset presenter e.g., web browser 304
- the font service manager 212 may determine the color font capabilities of the asset presenter executed by the device and take appropriate action.
- the software agents 306 , 308 may be capable of performing other operations. For example, operations may be respectively executed by the software agents 306 , 308 to collect information regarding color information, typographical features and other content of the web asset being provided by the web asset file(s) 206 .
- each software agent may read the CSS file included with the web asset file(s) 206 to identify which font information (e.g., color information, classes, etc.) may be used by the asset.
- the software agent may also read the HTML file included with the web asset file(s) 206 to identify the particular colors, characters, features, etc. that may be used by the web asset.
- the software agent may read information of the HTML file from other sources, for example, information from a document object model (DOM), a node-based structure used to organize the information (e.g., a DOM tree), etc.
- DOM document object model
- a node-based structure used to organize the information e.g., a DOM tree
- one or more advantageous operations may be executed. For example, if a relatively small number of colors, characters, glyphs, etc. for a particular font are identified as being presented for the web asset, an appropriate font subset that only includes those identified colors, characters, glyphs, typographical features (e.g., OpenType font features) etc.
- Incremental subsetting techniques may also be employed. For example, after a subset is produced for the color fonts, characters, typographical features, etc. present in a first page of a web asset, this identified information may not be used for producing subset(s) for subsequent pages (e.g., a second page) of the web asset. By filtering out color fonts, characters, typographical features, etc. already present in a subset, less processing time and memory may be consumed in a redundant manner.
- operations of the software agents 306 , 308 may be initiated by one or more conditions being satisfied, one or more events occurring, etc.
- the software agents may not use the contents of the web asset file(s) 206 until appropriately signaled that one or more events have occurred.
- applications such as a text-to-speech application may process the contents of the web asset file(s) 206 prior to being used by the software agents 306 , 308 .
- one or more signals may be sent (or other type of signaling technique employed) to notify the software agents 306 , 308 that the web asset files(s) 206 may be accessed and used.
- operations of the software agent may execute substantially in parallel with operations of other applications that also use the contents of the web asset file(s) 206 (e.g., the software agent and one or more other applications may access content of the web asset file(s) in parallel).
- each of the user devices 100 , 302 may send a corresponding request 310 , 312 to the font service provider.
- each device is wirelessly connected to the one or more networks (e.g., the Internet) for exchanging information with the font service provider 208 , as represented with the respective graphics 314 , 316 .
- the font service manager 212 Upon receiving the requests 310 , 312 , the font service manager 212 prepares color font information for the devices based upon the information provided in each respective request. For example, dependent upon the capability of the corresponding browser, different types of information may be respectively prepared and sent by the font service provider 208 .
- a color font file 318 is prepared and sent to the device 302 executing the web browser 304 that assists the device in supporting color fonts.
- the information included in the color font file 318 allows the device 302 to express the color font of the web asset as authored.
- the color font file 318 may include color font formats that are directly supported by the web browser 304 .
- such a color font format may be implemented in a format that includes data structures capable of supporting a variety of typographic visual symbols of many languages.
- a format such as a variant of the OpenType format may be capable of defining color fonts along with other types of typographical features for one or more scalable computer fonts.
- Such formats may be advantageous.
- the color font file 318 may include other types of color font information.
- one or more other formats may be implemented for providing color font information.
- the asset presenter (e.g., web browser) of the device may be compatible with a family of specifications of an extensible markup language (XML) based file format for two-dimensional vector graphics such as scalable vector graphics (SVG). Formats such as SVG, inline SVG, SVG Tiny (e.g., for mobile devices), etc. can be used for static imagery (e.g., individual images) and dynamic imagery (e.g., interactive, animated imagery, etc.).
- XML extensible markup language
- SVG Tiny e.g., for mobile devices
- static imagery e.g., individual images
- dynamic imagery e.g., interactive, animated imagery, etc.
- layering techniques e.g., apply one color to a background layer, apply a second color to a foreground layer, etc.
- color font information e.g., in the color font file 318
- the asset presenter e.g., web browser 304
- one or more techniques may be implemented to enable color fonts.
- one or more executable files may be provided to the asset presenter (e.g., a non-supporting web browser) such that when executed each character present in the web asset is replicated into multiple glyphs such that each may be assigned a specific color.
- one or more JavaScript files may be provided and when executed, the DOM tree associated with a target web asset is altered at run-time such that each character present in the asset is replicated into multiple glyphs and assigned a corresponding color.
- Two or more of the replicated glyphs may share a common font, or, two or more different fonts may be used by the replicated glyphs.
- the executable files may layer the replicated glyphs such that a multi-color character may be presented in one or more fonts (e.g., web fonts).
- the executed file or files e.g. JavaScript files
- a software agent, etc. may insert, adjust, etc. data in the DOM tree.
- recognizing that the web browser 102 of the device 100 does not support color fonts may be sent to the user device (compared to the color font file 318 sent to the user device 302 capable of supporting such color fonts).
- One or more techniques may be implemented to provide color font information to non-supporting web browsers for presenting, for example, multi-color font characters.
- multiple files may be sent from the font service provider 208 to the non-supporting browser 102 of user device 100 .
- a color font file 320 is delivered from the font service provider 208 that includes some color font information needed to present the color font content of the web asset.
- information is only provided for the content included in the web asset to be presented.
- a subset of information may be provided (e.g., font color information for characters present in the web asset), thereby conserving sources such as memory, processing time, throughput (and/or other transmission characteristics), etc.
- an executable file 322 may be provided by the font service provider 208 .
- the executable file 322 e.g., a JavaScript file
- the executable file 322 includes logic for producing, processing, etc. color font information.
- the executable file 322 may include logic for adjusting the DOM tree of the target web asset for replicating characters and assigning colors to the corresponding glyphs.
- the executable file may include logic for layering the replicated glyphs for producing multi-color characters, for example. Similar to the color font files 318 , 320 , the contents of the executable file 322 may be reduced based upon the subset of material included in the web asset.
- logic may be absent from the executable file 322 if corresponding characters and colors are not included in the content of the web asset.
- multiple executable files may be sent from the font service provider 208 to the device rather than a single executable file.
- multiple files may be used for delivering the logic for providing color font information.
- subsetted color font information may be delivered in an individual file or concatenated from multiple files into a single file.
- the content of files may be combined.
- a single file e.g., an executable file that contains the content needed by an asset presenter (e.g., the non-supporting web browser 102 ) may be provided.
- the information e.g., provided by one or more font files, executable files, etc. may be used for other applications.
- this information may be utilized by an editor, executed locally (e.g., by a user device) or remotely (e.g., at the font service provider or other location), for corresponding applications (e.g., creating content, editing content, managing content, etc.).
- an editor that allows a user to select various types of characters (e.g., to create different types of presentations, assets, applications, etc.) may utilize the color font information. Similar to providing characters for selection, the editor may also provide colors and various color patterns and palettes for content creation.
- various types of user interfaces may be implemented. For example, interfaces may be implemented that are directed toward use on a local computer. Similarly, interfaces may be implemented for remotely located computer systems (e.g., cloud-based computer systems and services) and other types of computer and network architectures.
- a graphical representation 400 is presented that includes font characters that use multiple colors.
- the multiple colors applied to each character give the appearance that each letter of the word “HELLO” is made of bamboo sticks.
- color font information may be included in the color font information.
- gradients of one or more colors may be represented in the color font information.
- effects e.g., lighting effects, etc.
- the incident angle of a light source may be simulated (and potentially adjusted).
- Physical texture may also be represented by in color font information.
- one or more representations of physical textures may be represented in the information (e.g., the color font file 318 provided to an asset presenter capable of supporting color fonts, the color font file 320 and/or the executable file 322 provided to an asset presenter unable to support color fonts).
- the color font file 318 provided to an asset presenter capable of supporting color fonts
- gradients, textures, etc. may be represented by vector graphics (e.g., SVG, inline SVG, SVG Tiny, etc.) or other techniques that use geometrical primitives for representing images and allow the images to be scaled without significant degrading of clarity. Textures may be represented along one or more axes, for example, to create texture patterns.
- a graphical element that represents a texture element may be mirrored along an x-axis and a y-axis to produce a two-dimensional representation of the texture.
- a texture path may be produced that extends along the single axis.
- the texture representation may be adjusted (e.g., scaled up, scaled down, offset, bent, etc.) to provide the visual effect of interest (e.g., have a texture path follow a straight line, curved line, etc.; represent a two-dimensional surface with the texture, etc.).
- color information could also be used for producing three-dimensional characters.
- color font information representing solid colors, color gradients, textures, etc. may be used to define three-dimensional characters based upon the location of one or more virtual light sources.
- other geometrical locations may be used for defining the shading, tone, etc. of three dimensional characters (or combinations of two and three dimensional characters).
- the perspective of one or more viewers may be defined and used to determine the colors, gradients, textures, etc. to be applied to portions of the characters.
- colors, gradients and textures may be applied to provide a certain esoteric visual effect at the perspective of the viewer.
- a virtual light source or light sources may be used for dynamically changing characters.
- characters that incorporate one or more animations e.g., the crossbar of a letter “T” spins about an axis defined by the vertical bar of the letter
- colors, gradients, textures, etc. may be used to present the animated characters from a particular viewing perspective while being illuminated by one or more virtual light sources.
- data representing real light sources may be used for determining colors, gradients, textures, etc. to be applied to portions of characters.
- data from one or more sensors may be used to determine parameters (e.g., incident angle, location, orientation, etc.), properties (e.g., light intensity, polarization, etc.), etc. of one or more real light sources (e.g., the sun, street lights, surface reflections, etc.) to determine appropriate colors, gradients, textures, etc. for applying to characters.
- parameters e.g., incident angle, location, orientation, etc.
- properties e.g., light intensity, polarization, etc.
- real light sources e.g., the sun, street lights, surface reflections, etc.
- Viewer perspective and other viewing characteristics may also be included in defining the presentable characters.
- information may be provided from the font service provider 208 such that the presented text (e.g., represented in a multi-color font) may take advantage of other capabilities of an asset presenter such as a web browser.
- the web browser may be capable of interacting with the text to allow a user to select a portion of the text (e.g., highlight the text through pointing device operations), copy and paste the text (e.g., into another executed application), search the content of the text (e.g., for user-provided search terms), etc.
- additional information may be provided by the font service provider 208 to allow for such interactions along with assisting with color font support to present the text.
- additional data being provided may represent spatial information associated with the font glyphs but not include any additional data for visual information (e.g., character outlines or fill).
- glyph spacing information may be provided but glyph marking information may be absent.
- the web browser is able to recognize and use this spatial information.
- the spatial information may assist the web browser with positioning a cursor between the text characters.
- the web browser can allow the text to be searched, portions selected, copied (for pasting in other applications), etc. regardless of whether color fonts are supported by the browser.
- One or more techniques may be employed to provide such an empty or invisible font that provides spacing information but is absent additional visual information.
- such invisible font information may be included in one or more files provided by the font service provider 208 .
- the font service provider 208 may also provide a file that includes such invisible font information.
- a similar file that includes invisible font information may be sent along with a file with color font information (e.g., color font file 318 ) from the font service provider 208 .
- Other combinations of files may be employed for providing the invisible font information.
- the invisible font information may be combined with the color font information and sent in a single file (such as the color font file 320 ).
- the invisible font information may also be sent from other sources.
- such invisible font information may be included in the web asset file(s) (e.g., included in the HTML file defining a webpage).
- a node may be defined for each word (to be displayed) for instructing that the word be presented in such an invisible font.
- the web browser can overprint the invisible font with a color font.
- the web browser can be assisted in presenting a color font and the web browser is also capable of allowing text to be searched, selected, copied (for pasting into another application), etc. by using the invisible font data.
- two characters 500 , 502 are presented that employ a font that uses multiple colors (represented in shades of gray) for each character.
- an invisible font for each character (represented by hash-lined boxes 504 , 506 ) provides spatial information such as for positioning a cursor on either side or between the characters.
- the layering position of the color font and the invisible font may be adjusted.
- the invisible font may be initially presented and overprinted by the color font.
- the layer position of the invisible font and the color font may be reversed such that the invisible font lies over the color font.
- selection of one or more characters may be easier for the user (e.g., operating a pointing device).
- one or more techniques may be implemented. For example, based upon a pointing device activity being detected (e.g., the user left-clicks on a mouse), the positions of the invisible font and the color font may reverse. Once reversed, the user can then select the desired character(s) for other operations (e.g., copying, cutting, pasting, etc.).
- a flowchart 600 represents operations of a font service manager (e.g., the font service manager 212 shown in FIG. 2 ).
- Operations of the font service manager are typically executed by a single computing device (e.g., the server 214 also shown in FIG. 3 ); however, operations of the font service manager may be executed by multiple computing devices.
- operation execution may be distributed among two or more locations.
- Operations of the font service manager may include receiving 602 receiving information that requests one or more colored fonts of a web asset for an asset presenter (e.g., a web browser) being executed by a computing device.
- the received information may include information about the computing device (e.g., indicate whether the asset presenter being executed by the computing device is capable of presenting the one or more colored fonts of the web asset.
- a request may be sent from the computing device to the font service provider (where the font service manager is executed) that contains information indicative of whether a web browser executed by the device supports color fonts (e.g., information that identifies web browser, the computing device, etc.).
- the request may be absent information indicative of whether the asset presenter is capable (or not) of supporting colored fonts.
- Operations may also include, in response to receiving the information, sending 604 color font information to the computing device to allow content (e.g., characters, etc.) of the web asset represented in colored fonts to be presented by the computing device.
- the color font information is provided by an executable file and a color font file, or, an executable file that includes content of the color font file.
- a color font file may be sent by the font service provider that includes inline SVG information along with an executable file (e.g., a JavaScript file) for producing color font characters.
- an executable file e.g., a JavaScript file
- an executable file e.g., a JavaScript file
- the content of the color font file e.g., inline SVG information
- Other file combinations and file content combinations may be realized. For example, subsets of color font information may be produced and packaged prior to sending the information to the computing device.
- a flowchart 606 represents other potential operations of a font service manager (e.g., the font service manager 212 shown in FIG. 2 ).
- operations of the font service manager are typically executed by a single computing device (e.g., the server 214 also shown in FIG. 3 ); however, operations of the font service manager may be executed by multiple computing devices.
- operation execution may be distributed among two or more locations.
- Operations of the font service manager may include receiving 608 information that indicates whether an asset presenter (e.g., a web browser) being executed by a computing device is capable of presenting one or more colored fonts. For example, a request may be sent from the computing device to the font service provider (where the font service manager is executed) that contains information indicative of whether a web browser executed by the device supports color fonts (e.g., information that identifies web browser, the computing device, etc.). Operations may also include, in response to receiving the information, sending 610 color font information to the computing device to allow content (e.g., characters, etc.) of the web asset represented in colored fonts to be presented by the computing device.
- an asset presenter e.g., a web browser
- a request may be sent from the computing device to the font service provider (where the font service manager is executed) that contains information indicative of whether a web browser executed by the device supports color fonts (e.g., information that identifies web browser, the computing device, etc.).
- Operations may also
- a color font file may be sent by the font service provider that includes inline SVG information, an executable file (e.g., a JavaScript file) and/or other information for producing color font characters. Other operations may also subset the color font information prior to sending the information to the computing device.
- FIG. 7 is a block diagram showing an example of a system 700 for providing hosted storage and accessing the hosted storage from a client device 702 .
- a hosted storage service 720 may provide access to stored data (e.g., font information) by applications (e.g., web browsers) running on computing devices operating separately from one another, provide offsite data backup and restore functionality, provide data storage to a computing device with limited storage capabilities, and/or provide storage functionality not implemented on a computing device.
- stored data e.g., font information
- applications e.g., web browsers
- the system 700 may provide scalable stores for storing data resources.
- the client device 702 may upload data resources to the hosted storage service 720 and control access to the uploaded data resources. Access control may include a range of sharing levels (e.g., private, shared with one or more individuals, shared with one or more groups, public, etc.). Data stored in hosted storage service 720 can be secured from unauthorized access.
- the hosted storage service 720 can use a simple and consistent application programming interface, or API, which can allow arbitrary quantities of structured or unstructured data to be kept private or shared between individuals, organizations, or with the world at large.
- the client device 702 may access, retrieve, be provided, store, etc. data in the hosted storage service 720 for any number of a variety of reasons. For example, data may be stored for business reasons (e.g., provide identification information to attain access clearance for font data at the hosted storage service 720 ), or for use in data processing by other services.
- the client device 702 may be implemented using a computing device, such as the computing device 800 or the mobile device 850 described with respect to FIG. 8 .
- the client device 702 may communicate with the hosted storage service 720 via a network 704 , such as the Internet.
- the client device 702 may communicate across the network using communication protocols such as, for example, one or more of Transmission Control Protocol/Internet Protocol (TCP/IP), Hypertext Transfer Protocol (HTTP), Secure Shell Remote Protocol (SSH), or Application Program Interfaces (API). While only a single client device 702 is shown, there may be multiple client devices communicating across the network 704 with the hosted storage service 720 and/or other services and devices.
- TCP/IP Transmission Control Protocol/Internet Protocol
- HTTP Hypertext Transfer Protocol
- SSH Secure Shell Remote Protocol
- API Application Program Interfaces
- the hosted storage service 720 may be implemented such that client applications executing on client device 702 , such as a client application 703 , may store, retrieve, or otherwise manipulate data resources in the hosted storage service 720 .
- the hosted storage service 720 may be implemented by one or more server devices, which may be implemented using a computing device, such as the computing device 800 or mobile device 850 described with respect to FIG. 8 .
- the hosted storage service 720 may be implemented by multiple server devices operating in the same, or different, data centers.
- the hosted storage service 720 generally includes an interface frontend 706 , an interface backend 708 , a storage backend 710 , and metadata 716 for resources stored in the storage backend 710 .
- the hosted storage service 720 may also include an authenticator 709 to verify that a user requesting one or more fonts should be provided access to the fonts (e.g., based on a service subscription, rental period, etc.).
- the interface frontend 706 may receive requests from and send responses to the client device 702 .
- the hosted storage service 720 may be implemented as a Web Service with a corresponding set of Web Service Application Programming Interfaces (APIs).
- the Web Service APIs may be implemented, for example, as a Representational State Transfer (REST)-based HTTP interface or a Simple Object Access Protocol (SOAP)-based interface.
- Interface frontend 706 may receive messages from the client 702 and parse the requests into a format usable by the hosted storage service 720 , such as a remote procedure call (RPC) to an interface backend 708 .
- the interface frontend 706 may write responses generated by the hosted storage service 720 for transmission to the client 702 .
- multiple interface frontends 706 may be implemented, for example to support multiple access protocols.
- the interface frontend 706 may include a graphical front end, for example to display on a web browser for data access.
- the interface frontend 706 may include a sub-system to enable managed uploads and downloads of large files (e.g., for functionality such as pause, resume, and recover from time-out).
- the interface frontend 706 may monitor load information and update logs, for example to track and protect against denial of service (DOS) attacks.
- DOS denial of service
- the Web Service API may be a REST-based HTTP interface.
- a data resource is accessed as a resource, uniquely named using a uniform resource identifier (URI), and the client application 703 and service 720 exchange representations of resource state using a defined set of operations.
- requested actions may be represented as verbs, such as by HTTP GET, PUT, POST, HEAD, and DELETE verbs.
- the GET verb may be used to retrieve a resource
- the HEAD verb may be used to retrieve information about a resource without retrieving the resource itself.
- the DELETE verb may be used to delete a resource from the hosted storage service 720 .
- the PUT and POST verbs may be used to upload a resource to the service 720 .
- PUT requests may come from the client 702 and contain authentication and authorization credentials and resource metadata in a header, such as an HTTP header.
- POST requests may be received when a client 702 wants to upload from a web browser form.
- the form POST upload protocol for the hosted storage service 720 may involve multiple form fields to provide authentication, authorization, and resource metadata. More generally, any of the API requests may include credentials for authentication and authorization, for example in a header of the request.
- An authorization header may be included in the REST requests, which may include an access key to identify the entity sending the request.
- a user may be authenticated based on credentials stored in a browser cookie, which may be appended to the API requests. If no valid cookie is present, a redirect to an authentication frontend may be generated, and the authentication frontend may be used to generate the browser cookie.
- the authentication frontend may be used by systems and services in addition to the hosted storage service 720 (e.g., if the organization operating the hosted storage service 720 also operates other web services such as email service).
- a user may also or alternatively be authenticated based on authentication credentials from an external credentialing service or an external service that includes credentialing functionality. User or group identifier information may be calculated from the external service's credential information. Requests sent by the client 702 to the interface frontend 706 may be translated and forwarded to the external service for authentication.
- resources stored in the hosted storage service 720 may be referenced by resource identifiers.
- the hosted storage service 720 may define namespaces to which a valid resource identifier must conform.
- the namespace may require that resource identifiers be a sequence of Unicode characters whose UTF-8 encoding is at most 1024 bytes long.
- the namespace may require that resource identifiers be globally unique identifiers (GUIDs), which may be 128-bit integers.
- GUIDs globally unique identifiers
- Resources may be stored in hosted storage service 720 in buckets.
- each bucket is uniquely named in the hosted storage service 720
- each data resource is uniquely named in a bucket
- every bucket and data resource combination is unique.
- Data resources may be uniquely identified by a URI that includes the bucket name and the resource name, and identifies the hosted storage service 720 .
- the interface backend 708 along with the authenticator 709 may handle request authentication and authorization, may manage data and metadata, and may track activity such as for billing. As one example, the interface backend 608 may query the authenticator 709 when a request for one or more fonts is received.
- the interface backend 708 may also provide additional or alternative functionality. For example, the interface backend 708 may provide functionality for independent frontend/backend scaling for resource utilization and responsiveness under localized heavy loads. Data management may be encapsulated in the interface backend 708 while communication serving may be encapsulated in the interface frontend 706 .
- the interface backend 708 may isolate certain security mechanisms from the client-facing interface frontend 706 .
- the interface backend 708 may expose an interface usable by both the interface frontend 706 and other systems.
- some features of the interface backend 708 are accessible only by an interface frontend (not shown) used by the owners of the hosted storage service 720 (internal users). Such features may include those needed for administrative tasks (e.g., resolving a resource reference to a low level disk address).
- the interface backend 708 may handle request authentication (e.g., ensuring a user's credentials are valid) and authorization (e.g., verifying that a requested operation is permitted).
- the interface backend may also provide encryption and decryption services to prevent unauthorized access to data, even by internal users.
- the interface backend 708 may manage metadata 716 associated with data resources, for example in a MySQL database or BigTable. User-specified names labeling the buckets can be completely defined within the metadata 716 , and resource metadata 716 can map a resource name to one or more datastores 712 storing the resource.
- the metadata 716 can also contain bucket and resource creation times, resource sizes, hashes, and access control lists 718 (ACL 718 ) for both buckets and resources.
- the interface backend 708 can log activity and track storage consumption to support accounting for billing and chargebacks. In some examples, this includes quota monitoring in each dimension in which customers are charged (e.g., reads, writes, network transfers, total storage in use).
- the ACLs 718 may generally define who is authorized to perform actions on corresponding buckets or resources, and the nature of the permitted actions.
- the ACLs 718 may be an unordered list of ⁇ scope, role ⁇ pairs, plus Boolean flags.
- the scope may define a user or group of users and the role may define the access permissions for the user or group.
- the union of all ⁇ scope, role ⁇ pairs may define access rights.
- more specific ⁇ scope, role ⁇ pairs override more general ones.
- the storage backend 710 may contain multiple datastores 712 a - 712 c . Although three datastores 712 are shown, more or fewer are possible. Each of the datastores 712 a - 712 c may store data resources 714 a - 714 c in a particular format. For example, data store 712 a may store a data resource 714 a as a Binary Large Object (BLOB), data store 712 b may store a data resource 714 b in a distributed file system (e.g., Network File System), and data store 712 c may store a data resource 714 c in a database (e.g., MySQL).
- BLOB Binary Large Object
- data store 712 b may store a data resource 714 b in a distributed file system (e.g., Network File System)
- data store 712 c may store a data resource 714 c in a database (e.g., MySQL).
- FIG. 8 shows an example of example computer device 800 and example mobile computer device 850 , which can be used to implement the techniques described herein. For example, a portion or all of the operations of the font service manager 212 (shown in FIG. 2 ) may be executed by the computer device 800 and/or the mobile computer device 850 .
- Computing device 800 is intended to represent various forms of digital computers, including, e.g., laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers.
- Computing device 850 is intended to represent various forms of mobile devices, including, e.g., personal digital assistants, tablet computing devices, cellular telephones, smartphones, and other similar computing devices.
- the components shown here, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the techniques described and/or claimed in this document.
- Computing device 800 includes processor 802 , memory 804 , storage device 806 , high-speed interface 808 connecting to memory 804 and high-speed expansion ports 810 , and low speed interface 812 connecting to low speed bus 814 and storage device 806 .
- processor 802 can process instructions for execution within computing device 800 , including instructions stored in memory 804 or on storage device 806 to display graphical data for a GUI on an external input/output device, including, e.g., display 816 coupled to high speed interface 808 .
- multiple processors and/or multiple buses can be used, as appropriate, along with multiple memories and types of memory.
- multiple computing devices 800 can be connected, with each device providing portions of the necessary operations (e.g., as a server bank, a group of blade servers, or a multi-processor system).
- Memory 804 stores data within computing device 800 .
- memory 804 is a volatile memory unit or units.
- memory 804 is a non-volatile memory unit or units.
- Memory 804 also can be another form of computer-readable medium, including, e.g., a magnetic or optical disk.
- Storage device 806 is capable of providing mass storage for computing device 800 .
- storage device 806 can be or contain a computer-readable medium, including, e.g., a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid state memory device, or an array of devices, including devices in a storage area network or other configurations.
- a computer program product can be tangibly embodied in a data carrier.
- the computer program product also can contain instructions that, when executed, perform one or more methods, including, e.g., those described above.
- the data carrier is a computer- or machine-readable medium, including, e.g., memory 804 , storage device 806 , memory on processor 802 , and the like.
- High-speed controller 808 manages bandwidth-intensive operations for computing device 800 , while low speed controller 812 manages lower bandwidth-intensive operations. Such allocation of functions is an example only.
- high-speed controller 808 is coupled to memory 804 , display 816 (e.g., through a graphics processor or accelerator), and to high-speed expansion ports 810 , which can accept various expansion cards (not shown).
- low-speed controller 812 is coupled to storage device 806 and low-speed expansion port 814 .
- the low-speed expansion port which can include various communication ports (e.g., USB, Bluetooth®, Ethernet, wireless Ethernet), can be coupled to one or more input/output devices, including, e.g., a keyboard, a pointing device, a scanner, or a networking device including, e.g., a switch or router, e.g., through a network adapter.
- input/output devices including, e.g., a keyboard, a pointing device, a scanner, or a networking device including, e.g., a switch or router, e.g., through a network adapter.
- Computing device 800 can be implemented in a number of different forms, as shown in the figure. For example, it can be implemented as standard server 820 , or multiple times in a group of such servers. It also can be implemented as part of rack server system 824 . In addition or as an alternative, it can be implemented in a personal computer including, e.g., laptop computer 822 . In some examples, components from computing device 800 can be combined with other components in a mobile device (not shown), including, e.g., device 850 . Each of such devices can contain one or more of computing device 800 , 850 , and an entire system can be made up of multiple computing devices 800 , 850 communicating with each other.
- Computing device 850 includes processor 852 , memory 864 , an input/output device including, e.g., display 854 , communication interface 866 , and transceiver 868 , among other components.
- Device 850 also can be provided with a storage device, including, e.g., a microdrive or other device, to provide additional storage.
- a storage device including, e.g., a microdrive or other device, to provide additional storage.
- Each of components 850 , 852 , 864 , 854 , 866 , and 868 are interconnected using various buses, and several of the components can be mounted on a common motherboard or in other manners as appropriate.
- Processor 852 can execute instructions within computing device 850 , including instructions stored in memory 864 .
- the processor can be implemented as a chipset of chips that include separate and multiple analog and digital processors.
- the processor can provide, for example, for coordination of the other components of device 850 , including, e.g., control of user interfaces, applications run by device 850 , and wireless communication by device 850 .
- Processor 852 can communicate with a user through control interface 858 and display interface 856 coupled to display 854 .
- Display 854 can be, for example, a TFT LCD (Thin-Film-Transistor Liquid Crystal Display) or an OLED (Organic Light Emitting Diode) display, or other appropriate display technology.
- Display interface 856 can comprise appropriate circuitry for driving display 854 to present graphical and other data to a user.
- Control interface 858 can receive commands from a user and convert them for submission to processor 852 .
- external interface 862 can communicate with processor 842 , so as to enable near area communication of device 850 with other devices.
- External interface 862 can provide, for example, for wired communication in some implementations, or for wireless communication in other implementations, and multiple interfaces also can be used.
- Memory 864 stores data within computing device 850 .
- Memory 864 can be implemented as one or more of a computer-readable medium or media, a volatile memory unit or units, or a non-volatile memory unit or units.
- Expansion memory 874 also can be provided and connected to device 850 through expansion interface 872 , which can include, for example, a SIMM (Single In Line Memory Module) card interface.
- SIMM Single In Line Memory Module
- expansion memory 874 can provide extra storage space for device 850 , or also can store applications or other data for device 850 .
- expansion memory 874 can include instructions to carry out or supplement the processes described above, and can include secure data also.
- expansion memory 874 can be provided as a security module for device 850 , and can be programmed with instructions that permit secure use of device 850 .
- secure applications can be provided through the SIMM cards, along with additional data, including, e.g., placing identifying data on the SIMM card in a non-hackable manner.
- the memory can include, for example, flash memory and/or NVRAM memory, as discussed below.
- a computer program product is tangibly embodied in a data carrier.
- the computer program product contains instructions that, when executed, perform one or more methods, including, e.g., those described above.
- the data carrier is a computer- or machine-readable medium, including, e.g., memory 864 , expansion memory 874 , and/or memory on processor 852 , which can be received, for example, over transceiver 868 or external interface 862 .
- Device 850 can communicate wirelessly through communication interface 866 , which can include digital signal processing circuitry where necessary. Communication interface 866 can provide for communications under various modes or protocols, including, e.g., GSM voice calls, SMS, EMS, or MMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS, among others. Such communication can occur, for example, through radio-frequency transceiver 868 . In addition, short-range communication can occur, including, e.g., using a Bluetooth®, WiFi, or other such transceiver (not shown). In addition, GPS (Global Positioning System) receiver module 870 can provide additional navigation- and location-related wireless data to device 850 , which can be used as appropriate by applications running on device 850 . Sensors and modules such as cameras, microphones, compasses, accelerators (for orientation sensing), etc. maybe included in the device.
- GPS Global Positioning System
- Device 850 also can communicate audibly using audio codec 860 , which can receive spoken data from a user and convert it to usable digital data. Audio codec 860 can likewise generate audible sound for a user, including, e.g., through a speaker, e.g., in a handset of device 850 . Such sound can include sound from voice telephone calls, can include recorded sound (e.g., voice messages, music files, and the like) and also can include sound generated by applications operating on device 850 .
- Audio codec 860 can receive spoken data from a user and convert it to usable digital data. Audio codec 860 can likewise generate audible sound for a user, including, e.g., through a speaker, e.g., in a handset of device 850 . Such sound can include sound from voice telephone calls, can include recorded sound (e.g., voice messages, music files, and the like) and also can include sound generated by applications operating on device 850 .
- Computing device 850 can be implemented in a number of different forms, as shown in the figure. For example, it can be implemented as cellular telephone 880 . It also can be implemented as part of smartphone 882 , personal digital assistant, or other similar mobile device.
- implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof.
- ASICs application specific integrated circuits
- These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which can be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
- machine-readable medium and computer-readable medium refer to a computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions.
- PLDs Programmable Logic Devices
- the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying data to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer.
- a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
- a keyboard and a pointing device e.g., a mouse or a trackball
- Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be a form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in a form, including acoustic, speech, or tactile input.
- feedback provided to the user can be a form of sensory feedback (e.g., visual feedback, auditory feedback,
- the systems and techniques described here can be implemented in a computing system that includes a back end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front end component (e.g., a client computer having a user interface or a Web browser through which a user can interact with an implementation of the systems and techniques described here), or a combination of such back end, middleware, or front end components.
- the components of the system can be interconnected by a form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.
- LAN local area network
- WAN wide area network
- the Internet the global information network
- the computing system can include clients and servers.
- a client and server are generally remote from each other and typically interact through a communication network.
- the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
- the engines described herein can be separated, combined or incorporated into a single or combined engine.
- the engines depicted in the figures are not intended to limit the systems described here to the software architectures shown in the figures.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Document Processing Apparatus (AREA)
- User Interface Of Digital Computer (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
Claims (37)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/135,973 US9569865B2 (en) | 2012-12-21 | 2013-12-20 | Supporting color fonts |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261745153P | 2012-12-21 | 2012-12-21 | |
US14/135,973 US9569865B2 (en) | 2012-12-21 | 2013-12-20 | Supporting color fonts |
Publications (2)
Publication Number | Publication Date |
---|---|
US20140176563A1 US20140176563A1 (en) | 2014-06-26 |
US9569865B2 true US9569865B2 (en) | 2017-02-14 |
Family
ID=50071701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/135,973 Expired - Fee Related US9569865B2 (en) | 2012-12-21 | 2013-12-20 | Supporting color fonts |
Country Status (2)
Country | Link |
---|---|
US (1) | US9569865B2 (en) |
WO (1) | WO2014100582A2 (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130215126A1 (en) * | 2012-02-17 | 2013-08-22 | Monotype Imaging Inc. | Managing Font Distribution |
US9691169B2 (en) | 2014-05-29 | 2017-06-27 | Monotype Imaging Inc. | Compact font hinting |
US9805288B2 (en) | 2013-10-04 | 2017-10-31 | Monotype Imaging Inc. | Analyzing font similarity for presentation |
US9817615B2 (en) | 2012-12-03 | 2017-11-14 | Monotype Imaging Inc. | Network based font management for imaging devices |
US10115215B2 (en) | 2015-04-17 | 2018-10-30 | Monotype Imaging Inc. | Pairing fonts for presentation |
US10455056B2 (en) * | 2015-08-21 | 2019-10-22 | Abobe Inc. | Cloud-based storage and interchange mechanism for design elements |
US10572574B2 (en) | 2010-04-29 | 2020-02-25 | Monotype Imaging Inc. | Dynamic font subsetting using a file size threshold for an electronic document |
US10909429B2 (en) | 2017-09-27 | 2021-02-02 | Monotype Imaging Inc. | Using attributes for identifying imagery for selection |
US11334750B2 (en) | 2017-09-07 | 2022-05-17 | Monotype Imaging Inc. | Using attributes for predicting imagery performance |
US11537262B1 (en) | 2015-07-21 | 2022-12-27 | Monotype Imaging Inc. | Using attributes for font recommendations |
US11657602B2 (en) | 2017-10-30 | 2023-05-23 | Monotype Imaging Inc. | Font identification from imagery |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140362104A1 (en) * | 2013-06-11 | 2014-12-11 | Microsoft Corporation | Layered z-order and hinted color fonts with dynamic palettes |
US10032438B2 (en) | 2015-04-30 | 2018-07-24 | Intuit Inc. | Rendering graphical assets natively on multiple screens of electronic devices |
US11153366B2 (en) * | 2019-03-01 | 2021-10-19 | International Business Machines Corporation | Lightweight web font customization integrated with glyph demanding assessment |
US11436764B2 (en) * | 2019-08-06 | 2022-09-06 | Oracle International Corporation | Dynamic generation and delivery of scalable graphic images in web applications |
US10769348B1 (en) * | 2019-09-23 | 2020-09-08 | Typetura Llc | Dynamic typesetting |
Citations (210)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4244657A (en) | 1978-06-08 | 1981-01-13 | Zaner-Bloser, Inc. | Font and method for printing cursive script |
US4998210A (en) | 1986-02-05 | 1991-03-05 | Minolta Camera Kabushiki Kaisha | Character generator |
JPH05217816A (en) | 1992-02-06 | 1993-08-27 | Hitachi Denshi Ltd | Alignment pattern |
JPH05215915A (en) | 1992-01-31 | 1993-08-27 | Asahi Optical Co Ltd | Multilayer reflection increase film |
US5347266A (en) | 1990-03-13 | 1994-09-13 | Hewlett-Packard Company | Method and device for accessing shared character patterns, and resulting stored decompressible font structure |
JPH06258982A (en) | 1993-02-05 | 1994-09-16 | Xerox Corp | System for electronic printing of plurality of color-indelible documents |
WO1994023379A1 (en) | 1993-04-05 | 1994-10-13 | Taligent, Inc. | Font selection system |
JPH0711733B2 (en) | 1987-02-13 | 1995-02-08 | 富士ゼロックス株式会社 | Programmable copier |
US5412771A (en) | 1992-02-07 | 1995-05-02 | Signature Software, Inc. | Generation of interdependent font characters based on ligature and glyph categorizations |
US5416898A (en) | 1992-05-12 | 1995-05-16 | Apple Computer, Inc. | Apparatus and method for generating textual lines layouts |
US5444829A (en) | 1988-08-24 | 1995-08-22 | Hitachi, Ltd. | System for centrally controlling letter data |
US5453938A (en) | 1991-07-09 | 1995-09-26 | Seikosha Co., Ltd. | Compression generation method for font data used in printers |
US5526477A (en) | 1994-01-04 | 1996-06-11 | Digital Equipment Corporation | System and method for generating glyphs of unknown characters |
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 |
US5586242A (en) | 1994-04-01 | 1996-12-17 | Hewlett-Packard Company | Font manager with selective access of installed fonts |
US5606649A (en) | 1995-09-08 | 1997-02-25 | Dynalab, Inc. | Method of encoding a document with text characters, and method of sending a document with text characters from a transmitting computer system to a receiving computer system |
US5619721A (en) | 1991-05-15 | 1997-04-08 | Kabushiki Kaisha Toshiba | Controlling font data memory access for display and non-display purposes using character content for access criteria |
US5630028A (en) | 1996-05-28 | 1997-05-13 | Bowne & Co., Inc. | Method of representing graphic data using text |
US5737599A (en) | 1995-09-25 | 1998-04-07 | Rowe; Edward R. | Method and apparatus for downloading multi-page electronic documents with hint information |
US5748975A (en) | 1995-07-06 | 1998-05-05 | Sun Microsystems, Inc. | System and method for textual editing of structurally-represented computer programs with on-the-fly typographical display |
JPH10124030A (en) | 1996-08-26 | 1998-05-15 | Fujitsu Ltd | Font processing device and method in network environment |
US5757384A (en) | 1994-08-19 | 1998-05-26 | Mitsubishi Denki Kabushiki Kaisha | Apparatus and method for font thinning and bolding based upon font outline |
US5781714A (en) | 1994-05-27 | 1998-07-14 | Bitstream Inc. | Apparatus and methods for creating and using portable fonts |
WO1999000747A1 (en) | 1997-06-27 | 1999-01-07 | Microsoft Corporation | A method for rendering glyphs using a layout services library |
US5877776A (en) | 1996-04-26 | 1999-03-02 | Apple Computer, Inc. | Method and system for supporting multiple font formats by a font scaler sub-system |
US5940581A (en) | 1996-03-21 | 1999-08-17 | Apple Computer, Inc. | Dynamic font management for large character sets |
US5995718A (en) | 1996-03-18 | 1999-11-30 | Canon Kabushiki Kaisha | Information processing apparatus which secures an exclusive memory for storing a registered font and method therefor |
US6012071A (en) | 1996-01-29 | 2000-01-04 | Futuretense, Inc. | Distributed electronic publishing system |
US6016142A (en) | 1998-02-09 | 2000-01-18 | Trimble Navigation Limited | Rich character set entry from a small numeric keypad |
US6031549A (en) | 1995-07-19 | 2000-02-29 | Extempo Systems, Inc. | System and method for directed improvisation by computer controlled characters |
US6044205A (en) | 1996-02-29 | 2000-03-28 | Intermind Corporation | Communications system for transferring information between memories according to processes transferred with the information |
US6065008A (en) | 1997-10-01 | 2000-05-16 | Microsoft Corporation | System and method for secure font subset distribution |
US6073147A (en) | 1997-06-10 | 2000-06-06 | Apple Computer, Inc. | System for distributing font resources over a computer network |
US6111654A (en) * | 1999-04-21 | 2000-08-29 | Lexmark International, Inc. | Method and apparatus for replacing or modifying a postscript built-in font in a printer |
US6141002A (en) | 1996-11-12 | 2000-10-31 | Opentv, Inc. | System and method for downloading and rendering glyphs in a set top box |
US6249908B1 (en) | 1998-03-27 | 2001-06-19 | Microsoft Corporation | System and method for representing graphical font data and for converting the font data to font instructions |
US6252671B1 (en) | 1998-05-22 | 2001-06-26 | Adobe Systems Incorporated | System for downloading fonts |
US6282327B1 (en) | 1999-07-30 | 2001-08-28 | Microsoft Corporation | Maintaining advance widths of existing characters that have been resolution enhanced |
US6313920B1 (en) | 1998-08-17 | 2001-11-06 | Microsoft Corporation | System and method for remote printing using incremental font subsetting |
US6320587B1 (en) | 1996-08-26 | 2001-11-20 | Fujitsu Limited | Font processing apparatus in network environment and method thereof |
WO2001091088A1 (en) | 2000-05-23 | 2001-11-29 | Opentv Corp. | Method and system for dynamic font subsetting |
US6330577B1 (en) | 1997-10-15 | 2001-12-11 | Samsung Electronics Co., Ltd. | Apparatus and method for displaying font information by using preview window |
US20020010725A1 (en) | 2000-03-28 | 2002-01-24 | Mo Lawrence Wai Ming | Internet-based font server |
US6343301B1 (en) | 1999-02-24 | 2002-01-29 | Navigation Technologies Corp. | Method and system for collecting data for updating a geographic database |
US20020033824A1 (en) | 1998-03-27 | 2002-03-21 | Microsoft Corporation | Method for authoring hints for a font using a graphical user interface |
US20020052916A1 (en) | 1999-09-10 | 2002-05-02 | Avantgo, Inc. | System, Method, and computer program product for customizing channels, content, and data for mobile devices |
US20020057853A1 (en) | 1997-07-15 | 2002-05-16 | Akihiro Usami | Image reading apparatus |
US20020087702A1 (en) | 2000-12-29 | 2002-07-04 | Koichi Mori | Remote contents displaying method with adaptive remote font |
US20020093506A1 (en) | 2001-01-16 | 2002-07-18 | Hobson Jay A. | Apparatus and method for storing and retrieving images for transmission to an output device |
US6426751B1 (en) | 1999-04-01 | 2002-07-30 | Adobe Systems Incorporated | Font feature file processing |
US20020174186A1 (en) | 2001-05-15 | 2002-11-21 | Koichi Hashimoto | Electronic mail typestyle processing device |
US6490051B1 (en) | 1998-09-21 | 2002-12-03 | Microsoft Corporation | Printer driver and method for supporting worldwide single binary font format with built in support for double byte characters |
US20020194261A1 (en) | 1998-03-31 | 2002-12-19 | Atsushi Teshima | Font sharing system and method, and recording medium storing program for executing font sharing method |
US20030014545A1 (en) | 2001-07-12 | 2003-01-16 | International Business Machines Corporation | System and method for presenting text upon the display of a server that employs an X window graphical interface |
US6512531B1 (en) | 1999-04-09 | 2003-01-28 | Adobe Systems Incorporated | Font navigation tool |
US6522330B2 (en) | 1997-02-17 | 2003-02-18 | Justsystem Corporation | Character processing system and method |
US6522347B1 (en) | 2000-01-18 | 2003-02-18 | Seiko Epson Corporation | Display apparatus, portable information processing apparatus, information recording medium, and electronic apparatus |
US20030076350A1 (en) | 2001-10-23 | 2003-04-24 | Toshiba America Information Systems, Inc | Interface for content development |
US6583789B1 (en) | 1998-12-03 | 2003-06-24 | International Business Machines Corporation | Method and system for processing glyph-based quality variability requests |
TW544595B (en) | 2000-04-21 | 2003-08-01 | Dynacomware Taiwan Inc | System and method for nonstandard character access |
US20030197698A1 (en) | 2002-04-17 | 2003-10-23 | Perry Ronald N. | Enhancing textured range images using a 2D editor |
WO2003023614A3 (en) | 2001-09-12 | 2003-11-27 | Hewlett Packard Co | System and method to automatically obtain a service |
US6657625B1 (en) | 1999-06-09 | 2003-12-02 | Microsoft Corporation | System and method of caching glyphs for display by a remote terminal |
US6675358B1 (en) | 1998-11-12 | 2004-01-06 | International Business Machines Corporation | Font access, registration, display and printing method and a method for processing electronic documents having variant fonts |
US6678688B1 (en) | 2000-10-26 | 2004-01-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for composite font generation |
US6687879B1 (en) | 1998-07-09 | 2004-02-03 | Fuji Photo Film Co., Ltd. | Font retrieval apparatus and method using a font link table |
WO2004012099A2 (en) | 2002-07-31 | 2004-02-05 | Adobe Systems Incorporated | Glyphlets |
US6704648B1 (en) | 2002-05-29 | 2004-03-09 | Navigation Technologies Corp. | Bearing data for route guidance |
US6704116B1 (en) | 1999-08-19 | 2004-03-09 | Saad D. Abulhab | Method and font for representing Arabic characters, and articles utilizing them |
US6718519B1 (en) | 1998-12-31 | 2004-04-06 | International Business Machines Corporation | System and method for outputting character sets in best available fonts |
US20040088657A1 (en) | 2002-11-01 | 2004-05-06 | Microsoft Corporation | Method for selecting a font |
US6738526B1 (en) | 1999-07-30 | 2004-05-18 | Microsoft Corporation | Method and apparatus for filtering and caching data representing images |
US6754875B1 (en) | 1998-11-17 | 2004-06-22 | Adobe Systems Incorporated | Applying a computer-implemented test to determine whether to replace adjacent characters in a word with a ligature glyph |
US20040119714A1 (en) | 2002-12-18 | 2004-06-24 | Microsoft Corporation | International automatic font size system and method |
US6760029B1 (en) | 1999-02-17 | 2004-07-06 | Adobe Systems Incorporated | Generating a glyph |
US6771267B1 (en) | 2000-03-22 | 2004-08-03 | Adobe Systems Incorporated | Merging digital fonts |
US20040177056A1 (en) | 2003-03-06 | 2004-09-09 | Davis William Nelson | Font rental system and method |
US20040189643A1 (en) | 2003-03-25 | 2004-09-30 | Frisken Sarah F | Method for typesetting a set glyphs represented as a set of two dimensional distance fields |
US20040207627A1 (en) | 2003-04-16 | 2004-10-21 | Konsella Shane R. | System and method for storing public and secure font data in a font file |
US6810504B2 (en) | 1997-10-22 | 2004-10-26 | Flashpoint Technology, Inc. | System and method for implementing a user interface for use with Japanese characters |
US6813747B1 (en) | 1998-12-31 | 2004-11-02 | International Business Machines Corporation | System and method for output of multipart documents |
US20040233198A1 (en) | 2003-03-05 | 2004-11-25 | Kabushiki Kaisha Toshiba | Font memory for display |
US6853980B1 (en) | 1999-09-07 | 2005-02-08 | Bitstream Inc. | System for selecting, distributing, and selling fonts |
US20050033814A1 (en) | 2003-08-04 | 2005-02-10 | Naomi Ota | Communication terminal apparatus and processing method for sending and receiving email |
TW200511041A (en) | 2003-05-30 | 2005-03-16 | Konica Minolta Photo Imaging | Foreign character register information providing system, foreign character register apparatus and information processing method thereof, text recognition support system, and text recognition support apparatus and information processing method thereof |
US6882344B1 (en) | 2000-07-25 | 2005-04-19 | Extensis, Inc. | Method for examining font files for corruption |
US20050094173A1 (en) | 2003-10-30 | 2005-05-05 | International Business Machines Corporation | Printing system that manages font resources using system independent resource references |
US20050111045A1 (en) | 2003-11-21 | 2005-05-26 | Canon Kabushiki Kaisha | Image forming method, image forming apparatus, and program |
US20050128508A1 (en) | 2003-12-11 | 2005-06-16 | Microsoft Corporation | System for transferring documents and resources to a printer |
US20050149942A1 (en) | 2000-01-14 | 2005-07-07 | Microsoft Corporation | Cross-process common system resource data sharing |
US20050193336A1 (en) | 2004-02-27 | 2005-09-01 | Vadim Fux | Font data processing system and method |
US20050190186A1 (en) | 2004-02-26 | 2005-09-01 | Klassen Gerhard D. | Method of rendering text on an output device |
US20050200871A1 (en) | 2004-02-27 | 2005-09-15 | Brother Kogyo Kabushiki Kaisha | Print data transmission to imager of print data for downloadable font in data transmitting sequence reflecting differences in page sequence between original pages and print pages |
US6952210B1 (en) | 1997-12-05 | 2005-10-04 | Adobe Systems Incorporated | Method of generating multiple master typefaces containing kanji characters |
WO2005001675A3 (en) | 2003-06-30 | 2005-10-20 | Syed S Hyder | Algorithmic generation of afu calligraphy |
US20050264570A1 (en) | 2004-05-28 | 2005-12-01 | Beat Stamm | Appropriately rendering a graphical object when a corresponding outline has exact or inexact control points |
US20050270553A1 (en) | 2004-05-18 | 2005-12-08 | Canon Kabushiki Kaisha | Document generation apparatus and file conversion system |
US20050275656A1 (en) | 2004-06-15 | 2005-12-15 | Toby Corbin | Method and arrangement for font building |
JP2002507289A5 (en) | 1998-06-26 | 2006-01-05 | ||
US20060010371A1 (en) | 2004-04-30 | 2006-01-12 | Microsoft Corporation | Packages that contain pre-paginated documents |
US20060017731A1 (en) | 2004-07-26 | 2006-01-26 | Microsoft Corporation | Font representations |
US6993538B2 (en) | 2003-01-28 | 2006-01-31 | Microsoft Corporation | System and process for identifying objects and/or points nearby a given object or point |
US20060061790A1 (en) | 2004-09-22 | 2006-03-23 | Fuji Xerox Co., Ltd. | Image forming method and apparatus |
US20060072137A1 (en) | 2004-10-04 | 2006-04-06 | Canon Kabushiki Kaisha | Embedding function, information processing method therefor, and program and storage medium used therewith |
US20060072162A1 (en) | 2004-08-31 | 2006-04-06 | Tetsuya Nakamura | Mail data processing method, mail server, program for mail server, terminal device and program for terminal device |
US20060072136A1 (en) | 2004-09-24 | 2006-04-06 | Hodder Leonard B | Multiple font management system and method |
US20060103654A1 (en) | 2003-09-30 | 2006-05-18 | Microsoft Corporation | System And Method Of Caching Glyphs For Display By A Remote Terminal |
US7050079B1 (en) | 2000-01-04 | 2006-05-23 | International Business Machines Corporation | System and method for dynamically generating viewable graphics |
US7064757B1 (en) | 1999-05-07 | 2006-06-20 | Apple Computer, Inc. | Automatic synthesis of font tables for character layout |
US20060168639A1 (en) | 2002-12-09 | 2006-07-27 | Koninklijke Philips Electronics N.V. | Interactive television system with partial character set generator |
US20060241861A1 (en) | 2005-04-21 | 2006-10-26 | Denso Corporation | Map display device and navigation system therewith |
US20060245727A1 (en) | 2005-04-28 | 2006-11-02 | Hiroshi Nakano | Subtitle generating apparatus and method |
US20060269137A1 (en) | 2005-05-26 | 2006-11-30 | Evans Charles E | System and method for generating a custom font |
US20060267986A1 (en) | 2005-05-31 | 2006-11-30 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting and receiving partial font file |
US20060285138A1 (en) | 2005-06-21 | 2006-12-21 | Thomas Merz | Method of determining unicode values corresponding to text in digital documents |
US20070006076A1 (en) | 2005-06-30 | 2007-01-04 | Dynacomware Taiwan Inc. | System and method for providing Asian Web font documents |
US20070002016A1 (en) | 2005-06-29 | 2007-01-04 | Samsung Electronics Co., Ltd. | Method and apparatus for inputting function of mobile terminal using user's grip posture while holding mobile terminal |
US20070008309A1 (en) | 2003-02-10 | 2007-01-11 | David Sahuc | Method to transmit and receive font information in streaming systems |
US7184046B1 (en) | 1999-09-28 | 2007-02-27 | Monotype Imaging Inc. | Method and apparatus for font storage reduction |
US20070050419A1 (en) | 2005-08-23 | 2007-03-01 | Stephen Weyl | Mixed media reality brokerage network and methods of use |
US7188313B2 (en) | 2001-10-03 | 2007-03-06 | Hallmark Cards, Incorporated | Context sensitive font generation |
US20070055931A1 (en) | 2003-05-14 | 2007-03-08 | Hiroaki Zaima | Document data output device capable of appropriately outputting document data containing a text and layout information |
US20070139413A1 (en) | 2005-12-19 | 2007-06-21 | Microsoft Corporation | Composite characters font hinting |
US20070139412A1 (en) | 2005-12-19 | 2007-06-21 | Microsoft Corporation | Automatic font control value determination |
US20070159646A1 (en) | 2006-01-06 | 2007-07-12 | Microsoft Corporation | Techniques for granular font subsetting for efficient document consumption |
US20070172199A1 (en) | 2004-02-16 | 2007-07-26 | Sony Corporation | Reproduction device, reproduction method, program storage medium, and program |
US20070211062A1 (en) | 2006-03-13 | 2007-09-13 | International Business Machines Corporation | Methods and systems for rendering complex text using glyph identifiers in a presentation data stream |
US20070283047A1 (en) | 2002-10-01 | 2007-12-06 | Theis Ronald L A | System and method for processing alphanumeric characters for display on a data processing device |
US20080028304A1 (en) | 2006-07-25 | 2008-01-31 | Monotype Imaging, Inc. | Method and apparatus for font subsetting |
US20080030502A1 (en) | 2006-08-04 | 2008-02-07 | Monotype Imaging, Inc. | Diacritics positioning system for digital typography |
US20080154911A1 (en) | 2006-12-26 | 2008-06-26 | Dynacomware Taiwan Inc. | System and method for on-line generation of asian documents with multiple font faces |
US20080282186A1 (en) | 2007-05-11 | 2008-11-13 | Clikpal, Inc. | Keyword generation system and method for online activity |
US20080303822A1 (en) | 2007-06-09 | 2008-12-11 | Nathan Daniel Taylor | Font metadata |
US20080306916A1 (en) | 2007-06-09 | 2008-12-11 | Julio Amable Gonzalez | Auto-activation of fonts |
US7477988B2 (en) | 2006-05-16 | 2009-01-13 | Navteq North America, Llc | Dual road geometry representation for position and curvature-heading |
US20090031220A1 (en) | 2005-11-02 | 2009-01-29 | Streamezzo | Method of managing character fonts within multimedia scenes, and the corresponding computer program and terminal |
US20090063964A1 (en) | 2007-09-04 | 2009-03-05 | Apple Inc. | Font preloading |
US20090119678A1 (en) | 2007-11-02 | 2009-05-07 | Jimmy Shih | Systems and methods for supporting downloadable applications on a portable client device |
US7539939B1 (en) | 2000-07-25 | 2009-05-26 | Creativepro.Com, Inc. | Preview window to preview text in several different fonts simultaneously |
US20090158134A1 (en) * | 2007-12-14 | 2009-06-18 | Sap Ag | Method and apparatus for form adaptation |
US7552008B2 (en) | 2001-07-18 | 2009-06-23 | Regents Of The University Of Minnesota | Populating geospatial database for onboard intelligent vehicle applications |
US20090183069A1 (en) | 2008-01-15 | 2009-07-16 | Microsoft Corporation | Font/Script Association |
US7583397B2 (en) | 2003-09-30 | 2009-09-01 | Canon Kabushiki Kaisha | Method for generating a display list |
US20090275351A1 (en) | 2007-01-11 | 2009-11-05 | Kt Corporation | Mobile communication terminal, server, system and method for message service with font data |
US20090287998A1 (en) | 2000-11-06 | 2009-11-19 | Verisign, Inc. | Text Creating and Editing System and Method with Dynamic Data Loading |
US20090303241A1 (en) | 2008-06-06 | 2009-12-10 | Shaiwal Priyadarshi | Systems and methods for font file optimization for multimedia files |
US20100014104A1 (en) | 2008-05-16 | 2010-01-21 | Software Imaging Limited | Method and apparatus for managing fonts |
EP2166488A2 (en) | 2008-09-18 | 2010-03-24 | Xerox Corporation | Handwritten word spotter using synthesized typed queries |
US20100088606A1 (en) | 2008-10-07 | 2010-04-08 | Canon Kabushiki Kaisha | Image processing system, server apparatus, client apparatus, control method, and storage medium |
US20100088694A1 (en) | 2004-12-23 | 2010-04-08 | Koninklijke Philips Electronics, N.V. | Method and apparatus for configuring software resources for playing network programs |
US20100091024A1 (en) | 2008-05-16 | 2010-04-15 | Nokia Corporation | Method and device for generating custom fonts |
US20100115454A1 (en) | 2008-10-30 | 2010-05-06 | Raja Singh Tuli | Method for reducing user-perceived lag on text data exchange with a remote server |
US20100164984A1 (en) | 2008-12-31 | 2010-07-01 | Shantanu Rane | Method for Embedding Messages into Documents Using Distance Fields |
US7752222B1 (en) | 2007-07-20 | 2010-07-06 | Google Inc. | Finding text on a web page |
US20100218086A1 (en) | 2009-02-20 | 2010-08-26 | Microsoft Corporation | Font handling for viewing documents on the web |
US20100231598A1 (en) | 2009-03-10 | 2010-09-16 | Google Inc. | Serving Font Glyphs |
US20100275161A1 (en) | 2009-04-22 | 2010-10-28 | Dicamillo Adrienne T | Font Selector And Method For The Same |
US7836094B2 (en) | 2004-04-30 | 2010-11-16 | Microsoft Corporation | Method and apparatus for maintaining relationships between parts in a package |
US20100321393A1 (en) | 2009-06-22 | 2010-12-23 | Monotype Imaging Inc. | Font data streaming |
US20110093565A1 (en) | 2009-10-16 | 2011-04-21 | Extensis Inc. | Serving Font Files in Varying Formats Based on User Agent Type |
US20110090229A1 (en) | 2009-10-16 | 2011-04-21 | Extensis Inc. | Activation of Fonts Using Font Sets |
US20110090230A1 (en) | 2009-10-16 | 2011-04-21 | Extensis Inc. | Reduced Glyph Font Files |
US7937658B1 (en) | 2006-04-21 | 2011-05-03 | Adobe Systems Incorporated | Methods and apparatus for retrieving font data |
US7944447B2 (en) | 2007-06-22 | 2011-05-17 | Apple Inc. | Adaptive and dynamic text filtering |
US20110115797A1 (en) | 2009-11-19 | 2011-05-19 | Kaplan Gregory A | Dynamic Streaming of Font Subsets |
US20110131153A1 (en) | 2009-11-30 | 2011-06-02 | International Business Machines Corporation | Dynamically controlling a computer's display |
US7958448B2 (en) | 2005-10-25 | 2011-06-07 | Celartem, Inc. | Systems, methods, user interfaces, and computer-readable media for activating and managing fonts |
US20110188761A1 (en) | 2010-02-02 | 2011-08-04 | Boutros Philip | Character identification through glyph data matching |
US20110238495A1 (en) | 2008-03-24 | 2011-09-29 | Min Soo Kang | Keyword-advertisement method using meta-information related to digital contents and system thereof |
US20110271180A1 (en) | 2010-04-29 | 2011-11-03 | Monotype Imaging Inc. | Initiating Font Subsets |
US20110276872A1 (en) | 2010-05-06 | 2011-11-10 | Xerox Corporation | Dynamic font replacement |
US20110289407A1 (en) | 2010-05-18 | 2011-11-24 | Naik Devang K | Font recommendation engine |
US20110310432A1 (en) | 2010-06-18 | 2011-12-22 | Konica Minolta Business Technologies, Inc. | Computer readable recording medium storing print setting program, print setting apparatus, computer readable recording medium storing control program of printing apparatus, and printing apparatus |
US20120001922A1 (en) | 2009-01-26 | 2012-01-05 | Escher Marc | System and method for creating and sharing personalized fonts on a client/server architecture |
US20120016964A1 (en) | 2010-07-17 | 2012-01-19 | Veen Jeffrey P | Method and systems for serving fonts during web browsing sessions |
US20120033874A1 (en) | 2010-08-05 | 2012-02-09 | Xerox Corporation | Learning weights of fonts for typed samples in handwritten keyword spotting |
US8116791B2 (en) | 2005-10-31 | 2012-02-14 | Fontip Ltd. | Sending and receiving text messages using a variety of fonts |
US20120066590A1 (en) | 2010-09-10 | 2012-03-15 | Jeffrey Harris | Systems and Methods for Enhanced Font Management |
US20120072978A1 (en) * | 2010-09-16 | 2012-03-22 | International Business Machines, Inc. | Desired Font Rendering |
US20120092345A1 (en) | 2010-10-13 | 2012-04-19 | Bitstream, Inc. | System and method for displaying complex scripts with a cloud computing architecture |
US20120102176A1 (en) | 2010-10-21 | 2012-04-26 | Monotype Imaging Inc. | Extracting and managing font style elements |
US20120102391A1 (en) | 2010-10-21 | 2012-04-26 | Monotype Imaging Inc. | Identifiers for web font templates |
US20120127069A1 (en) | 2010-11-24 | 2012-05-24 | Soma Sundaram Santhiveeran | Input Panel on a Display Device |
US20120134590A1 (en) | 2009-12-02 | 2012-05-31 | David Petrou | Identifying Matching Canonical Documents in Response to a Visual Query and in Accordance with Geographic Information |
US20120215640A1 (en) | 2005-09-14 | 2012-08-23 | Jorey Ramer | System for Targeting Advertising to Mobile Communication Facilities Using Third Party Data |
US8306356B1 (en) | 2007-09-28 | 2012-11-06 | Language Technologies, Inc. | System, plug-in, and method for improving text composition by modifying character prominence according to assigned character information measures |
US20120288190A1 (en) | 2011-05-13 | 2012-11-15 | Tang ding-yuan | Image Reflow at Word Boundaries |
US20120307263A1 (en) | 2011-05-31 | 2012-12-06 | Toshiba Tec Kabushiki Kaisha | Network printer and printing method using same |
US20120306852A1 (en) | 2011-06-06 | 2012-12-06 | Monotype Imaging Inc. | Producing Three-Dimensional Graphics |
US20120323694A1 (en) | 2011-06-15 | 2012-12-20 | Blue Kai, Inc. | Non-invasive sampling and fingerprinting of online users and their behavior |
US20120323971A1 (en) | 2011-06-14 | 2012-12-20 | Sybase, Inc. | Optimizing data storage and access of an in-memory database |
US20130033498A1 (en) | 2011-08-01 | 2013-02-07 | Microsoft Corporation | Reducing font instructions |
US8413051B2 (en) | 2008-10-20 | 2013-04-02 | Celartem, Inc. | Contextually previewing fonts |
US20130120396A1 (en) | 2009-11-19 | 2013-05-16 | Gregory A. Kaplan | Incrementally Building A Font |
US20130127872A1 (en) | 2010-08-31 | 2013-05-23 | Gregory A. Kaplan | Dynamic Augmentation of Extensible Font Subsets |
US20130163027A1 (en) | 2011-12-22 | 2013-06-27 | Xerox Corporation | Secure federation of cloud print services |
US20130179761A1 (en) | 2011-07-12 | 2013-07-11 | Inkling Systems, Inc. | Systems and methods for creating, editing and publishing cross-platform interactive electronic works |
US20130215126A1 (en) | 2012-02-17 | 2013-08-22 | Monotype Imaging Inc. | Managing Font Distribution |
US20130215133A1 (en) | 2012-02-17 | 2013-08-22 | Monotype Imaging Inc. | Adjusting Content Rendering for Environmental Conditions |
US8601374B2 (en) | 2006-02-13 | 2013-12-03 | Google Inc. | Account administration for hosted services |
US20130321617A1 (en) | 2012-05-30 | 2013-12-05 | Doron Lehmann | Adaptive font size mechanism |
US20140025756A1 (en) | 2012-07-23 | 2014-01-23 | Samuel N. Kamens | Inter-modal messaging communications |
US8643542B2 (en) | 2010-02-04 | 2014-02-04 | Astrium Gmbh | Method for self-calibration of frequency offsets |
US8644810B1 (en) | 2010-10-22 | 2014-02-04 | Joingo, Llc | Method and system for dynamic font support on mobile devices |
US8731905B1 (en) | 2012-02-22 | 2014-05-20 | Quillsoft Ltd. | System and method for enhancing comprehension and readability of text |
US20140153012A1 (en) | 2012-12-03 | 2014-06-05 | Monotype Imaging Inc. | Network Based Font Management for Imaging Devices |
EP2857983A2 (en) | 2013-10-04 | 2015-04-08 | Monotype Imaging, Inc. | Analyzing font similarity for presentation |
US20150100882A1 (en) | 2012-03-19 | 2015-04-09 | Corel Corporation | Method and system for interactive font feature access |
US20150193386A1 (en) | 2012-05-03 | 2015-07-09 | David Adam Wurtz | System and Method of Facilitating Font Selection and Manipulation of Fonts |
-
2013
- 2013-12-20 WO PCT/US2013/076917 patent/WO2014100582A2/en active Application Filing
- 2013-12-20 US US14/135,973 patent/US9569865B2/en not_active Expired - Fee Related
Patent Citations (234)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4244657A (en) | 1978-06-08 | 1981-01-13 | Zaner-Bloser, Inc. | Font and method for printing cursive script |
US4998210A (en) | 1986-02-05 | 1991-03-05 | Minolta Camera Kabushiki Kaisha | Character generator |
JPH0711733B2 (en) | 1987-02-13 | 1995-02-08 | 富士ゼロックス株式会社 | Programmable copier |
US20010052901A1 (en) | 1988-08-24 | 2001-12-20 | Hitachi, Ltd. | System for centrally controlling letter data |
US5444829A (en) | 1988-08-24 | 1995-08-22 | Hitachi, Ltd. | System for centrally controlling letter data |
US5347266A (en) | 1990-03-13 | 1994-09-13 | Hewlett-Packard Company | Method and device for accessing shared character patterns, and resulting stored decompressible font structure |
US5619721A (en) | 1991-05-15 | 1997-04-08 | Kabushiki Kaisha Toshiba | Controlling font data memory access for display and non-display purposes using character content for access criteria |
US5453938A (en) | 1991-07-09 | 1995-09-26 | Seikosha Co., Ltd. | Compression generation method for font data used in printers |
JPH05215915A (en) | 1992-01-31 | 1993-08-27 | Asahi Optical Co Ltd | Multilayer reflection increase film |
JPH05217816A (en) | 1992-02-06 | 1993-08-27 | Hitachi Denshi Ltd | Alignment pattern |
US5412771A (en) | 1992-02-07 | 1995-05-02 | Signature Software, Inc. | Generation of interdependent font characters based on ligature and glyph categorizations |
US5416898A (en) | 1992-05-12 | 1995-05-16 | Apple Computer, Inc. | Apparatus and method for generating textual lines layouts |
JPH06258982A (en) | 1993-02-05 | 1994-09-16 | Xerox Corp | System for electronic printing of plurality of color-indelible documents |
WO1994023379A1 (en) | 1993-04-05 | 1994-10-13 | Taligent, Inc. | Font selection system |
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 |
US5526477A (en) | 1994-01-04 | 1996-06-11 | Digital Equipment Corporation | System and method for generating glyphs of unknown characters |
US5586242A (en) | 1994-04-01 | 1996-12-17 | Hewlett-Packard Company | Font manager with selective access of installed fonts |
US5781714A (en) | 1994-05-27 | 1998-07-14 | Bitstream Inc. | Apparatus and methods for creating and using portable fonts |
US5757384A (en) | 1994-08-19 | 1998-05-26 | Mitsubishi Denki Kabushiki Kaisha | Apparatus and method for font thinning and bolding based upon font outline |
US5748975A (en) | 1995-07-06 | 1998-05-05 | Sun Microsystems, Inc. | System and method for textual editing of structurally-represented computer programs with on-the-fly typographical display |
US6031549A (en) | 1995-07-19 | 2000-02-29 | Extempo Systems, Inc. | System and method for directed improvisation by computer controlled characters |
US5606649A (en) | 1995-09-08 | 1997-02-25 | Dynalab, Inc. | Method of encoding a document with text characters, and method of sending a document with text characters from a transmitting computer system to a receiving computer system |
US5737599A (en) | 1995-09-25 | 1998-04-07 | Rowe; Edward R. | Method and apparatus for downloading multi-page electronic documents with hint information |
US6012071A (en) | 1996-01-29 | 2000-01-04 | Futuretense, Inc. | Distributed electronic publishing system |
US6044205A (en) | 1996-02-29 | 2000-03-28 | Intermind Corporation | Communications system for transferring information between memories according to processes transferred with the information |
US5995718A (en) | 1996-03-18 | 1999-11-30 | Canon Kabushiki Kaisha | Information processing apparatus which secures an exclusive memory for storing a registered font and method therefor |
US5940581A (en) | 1996-03-21 | 1999-08-17 | Apple Computer, Inc. | Dynamic font management for large character sets |
US5877776A (en) | 1996-04-26 | 1999-03-02 | Apple Computer, Inc. | Method and system for supporting multiple font formats by a font scaler sub-system |
US5630028A (en) | 1996-05-28 | 1997-05-13 | Bowne & Co., Inc. | Method of representing graphic data using text |
US6320587B1 (en) | 1996-08-26 | 2001-11-20 | Fujitsu Limited | Font processing apparatus in network environment and method thereof |
JPH10124030A (en) | 1996-08-26 | 1998-05-15 | Fujitsu Ltd | Font processing device and method in network environment |
US6141002A (en) | 1996-11-12 | 2000-10-31 | Opentv, Inc. | System and method for downloading and rendering glyphs in a set top box |
US6522330B2 (en) | 1997-02-17 | 2003-02-18 | Justsystem Corporation | Character processing system and method |
US6073147A (en) | 1997-06-10 | 2000-06-06 | Apple Computer, Inc. | System for distributing font resources over a computer network |
WO1999000747A1 (en) | 1997-06-27 | 1999-01-07 | Microsoft Corporation | A method for rendering glyphs using a layout services library |
US20020057853A1 (en) | 1997-07-15 | 2002-05-16 | Akihiro Usami | Image reading apparatus |
US6065008A (en) | 1997-10-01 | 2000-05-16 | Microsoft Corporation | System and method for secure font subset distribution |
US6330577B1 (en) | 1997-10-15 | 2001-12-11 | Samsung Electronics Co., Ltd. | Apparatus and method for displaying font information by using preview window |
US6810504B2 (en) | 1997-10-22 | 2004-10-26 | Flashpoint Technology, Inc. | System and method for implementing a user interface for use with Japanese characters |
US6952210B1 (en) | 1997-12-05 | 2005-10-04 | Adobe Systems Incorporated | Method of generating multiple master typefaces containing kanji characters |
US6016142A (en) | 1998-02-09 | 2000-01-18 | Trimble Navigation Limited | Rich character set entry from a small numeric keypad |
US6249908B1 (en) | 1998-03-27 | 2001-06-19 | Microsoft Corporation | System and method for representing graphical font data and for converting the font data to font instructions |
US20020033824A1 (en) | 1998-03-27 | 2002-03-21 | Microsoft Corporation | Method for authoring hints for a font using a graphical user interface |
US20020194261A1 (en) | 1998-03-31 | 2002-12-19 | Atsushi Teshima | Font sharing system and method, and recording medium storing program for executing font sharing method |
US6901427B2 (en) | 1998-03-31 | 2005-05-31 | Fuji Photo Film Co., Ltd. | Font sharing system in which data representing a character string can be communicated between a client computer and a server wherein only layout frames are displayed in a preview area of a display screen |
US6252671B1 (en) | 1998-05-22 | 2001-06-26 | Adobe Systems Incorporated | System for downloading fonts |
JP2002507289A5 (en) | 1998-06-26 | 2006-01-05 | ||
US6687879B1 (en) | 1998-07-09 | 2004-02-03 | Fuji Photo Film Co., Ltd. | Font retrieval apparatus and method using a font link table |
US7346845B2 (en) | 1998-07-09 | 2008-03-18 | Fujifilm Corporation | Font retrieval apparatus and method |
US6313920B1 (en) | 1998-08-17 | 2001-11-06 | Microsoft Corporation | System and method for remote printing using incremental font subsetting |
US6490051B1 (en) | 1998-09-21 | 2002-12-03 | Microsoft Corporation | Printer driver and method for supporting worldwide single binary font format with built in support for double byte characters |
US6675358B1 (en) | 1998-11-12 | 2004-01-06 | International Business Machines Corporation | Font access, registration, display and printing method and a method for processing electronic documents having variant fonts |
US6754875B1 (en) | 1998-11-17 | 2004-06-22 | Adobe Systems Incorporated | Applying a computer-implemented test to determine whether to replace adjacent characters in a word with a ligature glyph |
US6583789B1 (en) | 1998-12-03 | 2003-06-24 | International Business Machines Corporation | Method and system for processing glyph-based quality variability requests |
US6813747B1 (en) | 1998-12-31 | 2004-11-02 | International Business Machines Corporation | System and method for output of multipart documents |
US6718519B1 (en) | 1998-12-31 | 2004-04-06 | International Business Machines Corporation | System and method for outputting character sets in best available fonts |
US6760029B1 (en) | 1999-02-17 | 2004-07-06 | Adobe Systems Incorporated | Generating a glyph |
US6343301B1 (en) | 1999-02-24 | 2002-01-29 | Navigation Technologies Corp. | Method and system for collecting data for updating a geographic database |
US6426751B1 (en) | 1999-04-01 | 2002-07-30 | Adobe Systems Incorporated | Font feature file processing |
US6512531B1 (en) | 1999-04-09 | 2003-01-28 | Adobe Systems Incorporated | Font navigation tool |
US6111654A (en) * | 1999-04-21 | 2000-08-29 | Lexmark International, Inc. | Method and apparatus for replacing or modifying a postscript built-in font in a printer |
US7064757B1 (en) | 1999-05-07 | 2006-06-20 | Apple Computer, Inc. | Automatic synthesis of font tables for character layout |
US6657625B1 (en) | 1999-06-09 | 2003-12-02 | Microsoft Corporation | System and method of caching glyphs for display by a remote terminal |
US7064758B2 (en) | 1999-06-09 | 2006-06-20 | Microsoft Corporation | System and method of caching glyphs for display by a remote terminal |
US6738526B1 (en) | 1999-07-30 | 2004-05-18 | Microsoft Corporation | Method and apparatus for filtering and caching data representing images |
US6282327B1 (en) | 1999-07-30 | 2001-08-28 | Microsoft Corporation | Maintaining advance widths of existing characters that have been resolution enhanced |
US6704116B1 (en) | 1999-08-19 | 2004-03-09 | Saad D. Abulhab | Method and font for representing Arabic characters, and articles utilizing them |
US6853980B1 (en) | 1999-09-07 | 2005-02-08 | Bitstream Inc. | System for selecting, distributing, and selling fonts |
US20020052916A1 (en) | 1999-09-10 | 2002-05-02 | Avantgo, Inc. | System, Method, and computer program product for customizing channels, content, and data for mobile devices |
US7184046B1 (en) | 1999-09-28 | 2007-02-27 | Monotype Imaging Inc. | Method and apparatus for font storage reduction |
US7050079B1 (en) | 2000-01-04 | 2006-05-23 | International Business Machines Corporation | System and method for dynamically generating viewable graphics |
US20050149942A1 (en) | 2000-01-14 | 2005-07-07 | Microsoft Corporation | Cross-process common system resource data sharing |
US6522347B1 (en) | 2000-01-18 | 2003-02-18 | Seiko Epson Corporation | Display apparatus, portable information processing apparatus, information recording medium, and electronic apparatus |
US6771267B1 (en) | 2000-03-22 | 2004-08-03 | Adobe Systems Incorporated | Merging digital fonts |
US20020010725A1 (en) | 2000-03-28 | 2002-01-24 | Mo Lawrence Wai Ming | Internet-based font server |
TW544595B (en) | 2000-04-21 | 2003-08-01 | Dynacomware Taiwan Inc | System and method for nonstandard character access |
WO2001091088A1 (en) | 2000-05-23 | 2001-11-29 | Opentv Corp. | Method and system for dynamic font subsetting |
US7155672B1 (en) | 2000-05-23 | 2006-12-26 | Spyglass, Inc. | Method and system for dynamic font subsetting |
US7539939B1 (en) | 2000-07-25 | 2009-05-26 | Creativepro.Com, Inc. | Preview window to preview text in several different fonts simultaneously |
US6882344B1 (en) | 2000-07-25 | 2005-04-19 | Extensis, Inc. | Method for examining font files for corruption |
US6678688B1 (en) | 2000-10-26 | 2004-01-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for composite font generation |
US20090287998A1 (en) | 2000-11-06 | 2009-11-19 | Verisign, Inc. | Text Creating and Editing System and Method with Dynamic Data Loading |
US20020087702A1 (en) | 2000-12-29 | 2002-07-04 | Koichi Mori | Remote contents displaying method with adaptive remote font |
US20020093506A1 (en) | 2001-01-16 | 2002-07-18 | Hobson Jay A. | Apparatus and method for storing and retrieving images for transmission to an output device |
US20020174186A1 (en) | 2001-05-15 | 2002-11-21 | Koichi Hashimoto | Electronic mail typestyle processing device |
US20030014545A1 (en) | 2001-07-12 | 2003-01-16 | International Business Machines Corporation | System and method for presenting text upon the display of a server that employs an X window graphical interface |
US7552008B2 (en) | 2001-07-18 | 2009-06-23 | Regents Of The University Of Minnesota | Populating geospatial database for onboard intelligent vehicle applications |
WO2003023614A3 (en) | 2001-09-12 | 2003-11-27 | Hewlett Packard Co | System and method to automatically obtain a service |
US6907444B2 (en) | 2001-09-12 | 2005-06-14 | Hewlett-Packard Development Company, L.P. | System and method to automatically obtain a service |
US7188313B2 (en) | 2001-10-03 | 2007-03-06 | Hallmark Cards, Incorporated | Context sensitive font generation |
US20030076350A1 (en) | 2001-10-23 | 2003-04-24 | Toshiba America Information Systems, Inc | Interface for content development |
US20030197698A1 (en) | 2002-04-17 | 2003-10-23 | Perry Ronald N. | Enhancing textured range images using a 2D editor |
US6704648B1 (en) | 2002-05-29 | 2004-03-09 | Navigation Technologies Corp. | Bearing data for route guidance |
WO2004012099A2 (en) | 2002-07-31 | 2004-02-05 | Adobe Systems Incorporated | Glyphlets |
US20040025118A1 (en) | 2002-07-31 | 2004-02-05 | Renner John S. | Glyphlets |
US20070283047A1 (en) | 2002-10-01 | 2007-12-06 | Theis Ronald L A | System and method for processing alphanumeric characters for display on a data processing device |
US20040088657A1 (en) | 2002-11-01 | 2004-05-06 | Microsoft Corporation | Method for selecting a font |
US7228501B2 (en) | 2002-11-01 | 2007-06-05 | Microsoft Corporation | Method for selecting a font |
US20060168639A1 (en) | 2002-12-09 | 2006-07-27 | Koninklijke Philips Electronics N.V. | Interactive television system with partial character set generator |
US20040119714A1 (en) | 2002-12-18 | 2004-06-24 | Microsoft Corporation | International automatic font size system and method |
US6993538B2 (en) | 2003-01-28 | 2006-01-31 | Microsoft Corporation | System and process for identifying objects and/or points nearby a given object or point |
US7701458B2 (en) | 2003-02-10 | 2010-04-20 | Thomson Licensing | Method to transmit and receive font information in streaming systems |
US20070008309A1 (en) | 2003-02-10 | 2007-01-11 | David Sahuc | Method to transmit and receive font information in streaming systems |
US20040233198A1 (en) | 2003-03-05 | 2004-11-25 | Kabushiki Kaisha Toshiba | Font memory for display |
US20040177056A1 (en) | 2003-03-06 | 2004-09-09 | Davis William Nelson | Font rental system and method |
US20040189643A1 (en) | 2003-03-25 | 2004-09-30 | Frisken Sarah F | Method for typesetting a set glyphs represented as a set of two dimensional distance fields |
US20040207627A1 (en) | 2003-04-16 | 2004-10-21 | Konsella Shane R. | System and method for storing public and secure font data in a font file |
US6856317B2 (en) | 2003-04-16 | 2005-02-15 | Hewlett-Packard Development Company, L.P. | System and method for storing public and secure font data in a font file |
US20070055931A1 (en) | 2003-05-14 | 2007-03-08 | Hiroaki Zaima | Document data output device capable of appropriately outputting document data containing a text and layout information |
TW200511041A (en) | 2003-05-30 | 2005-03-16 | Konica Minolta Photo Imaging | Foreign character register information providing system, foreign character register apparatus and information processing method thereof, text recognition support system, and text recognition support apparatus and information processing method thereof |
WO2005001675A3 (en) | 2003-06-30 | 2005-10-20 | Syed S Hyder | Algorithmic generation of afu calligraphy |
US20050033814A1 (en) | 2003-08-04 | 2005-02-10 | Naomi Ota | Communication terminal apparatus and processing method for sending and receiving email |
US7580038B2 (en) | 2003-09-30 | 2009-08-25 | Microsoft Corporation | System and method of caching glyphs for display by a remote terminal |
US20060103654A1 (en) | 2003-09-30 | 2006-05-18 | Microsoft Corporation | System And Method Of Caching Glyphs For Display By A Remote Terminal |
US20060103653A1 (en) | 2003-09-30 | 2006-05-18 | Microsoft Corporation | System And Method Of Caching Glyphs For Display By A Remote Terminal |
US7583397B2 (en) | 2003-09-30 | 2009-09-01 | Canon Kabushiki Kaisha | Method for generating a display list |
US20050094173A1 (en) | 2003-10-30 | 2005-05-05 | International Business Machines Corporation | Printing system that manages font resources using system independent resource references |
US20050111045A1 (en) | 2003-11-21 | 2005-05-26 | Canon Kabushiki Kaisha | Image forming method, image forming apparatus, and program |
US20050128508A1 (en) | 2003-12-11 | 2005-06-16 | Microsoft Corporation | System for transferring documents and resources to a printer |
US20070172199A1 (en) | 2004-02-16 | 2007-07-26 | Sony Corporation | Reproduction device, reproduction method, program storage medium, and program |
US7768513B2 (en) | 2004-02-26 | 2010-08-03 | Research In Motion Limited | Method of rendering text on an output device |
US20050190186A1 (en) | 2004-02-26 | 2005-09-01 | Klassen Gerhard D. | Method of rendering text on an output device |
US20050200871A1 (en) | 2004-02-27 | 2005-09-15 | Brother Kogyo Kabushiki Kaisha | Print data transmission to imager of print data for downloadable font in data transmitting sequence reflecting differences in page sequence between original pages and print pages |
US20050193336A1 (en) | 2004-02-27 | 2005-09-01 | Vadim Fux | Font data processing system and method |
US8689101B2 (en) | 2004-02-27 | 2014-04-01 | Blackberry Limited | Font data processing system and method |
US20060010371A1 (en) | 2004-04-30 | 2006-01-12 | Microsoft Corporation | Packages that contain pre-paginated documents |
US7836094B2 (en) | 2004-04-30 | 2010-11-16 | Microsoft Corporation | Method and apparatus for maintaining relationships between parts in a package |
US20050270553A1 (en) | 2004-05-18 | 2005-12-08 | Canon Kabushiki Kaisha | Document generation apparatus and file conversion system |
US20050264570A1 (en) | 2004-05-28 | 2005-12-01 | Beat Stamm | Appropriately rendering a graphical object when a corresponding outline has exact or inexact control points |
US7492365B2 (en) | 2004-06-15 | 2009-02-17 | International Business Machines Corporation | Method and system for font building |
US20050275656A1 (en) | 2004-06-15 | 2005-12-15 | Toby Corbin | Method and arrangement for font building |
US20060017731A1 (en) | 2004-07-26 | 2006-01-26 | Microsoft Corporation | Font representations |
US20060072162A1 (en) | 2004-08-31 | 2006-04-06 | Tetsuya Nakamura | Mail data processing method, mail server, program for mail server, terminal device and program for terminal device |
US20060061790A1 (en) | 2004-09-22 | 2006-03-23 | Fuji Xerox Co., Ltd. | Image forming method and apparatus |
US20060072136A1 (en) | 2004-09-24 | 2006-04-06 | Hodder Leonard B | Multiple font management system and method |
US7882432B2 (en) | 2004-10-04 | 2011-02-01 | Canon Kabushiki Kaisha | Information processing apparatus having font-information embedding function, information processing method therefor, and program and storage medium used therewith |
US20060072137A1 (en) | 2004-10-04 | 2006-04-06 | Canon Kabushiki Kaisha | Embedding function, information processing method therefor, and program and storage medium used therewith |
US20100088694A1 (en) | 2004-12-23 | 2010-04-08 | Koninklijke Philips Electronics, N.V. | Method and apparatus for configuring software resources for playing network programs |
US20060241861A1 (en) | 2005-04-21 | 2006-10-26 | Denso Corporation | Map display device and navigation system therewith |
US20060245727A1 (en) | 2005-04-28 | 2006-11-02 | Hiroshi Nakano | Subtitle generating apparatus and method |
US20060269137A1 (en) | 2005-05-26 | 2006-11-30 | Evans Charles E | System and method for generating a custom font |
US20060267986A1 (en) | 2005-05-31 | 2006-11-30 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting and receiving partial font file |
US20060285138A1 (en) | 2005-06-21 | 2006-12-21 | Thomas Merz | Method of determining unicode values corresponding to text in digital documents |
US7636885B2 (en) | 2005-06-21 | 2009-12-22 | Pdflib Gmbh | Method of determining Unicode values corresponding to the text in digital documents |
US20070002016A1 (en) | 2005-06-29 | 2007-01-04 | Samsung Electronics Co., Ltd. | Method and apparatus for inputting function of mobile terminal using user's grip posture while holding mobile terminal |
US20070006076A1 (en) | 2005-06-30 | 2007-01-04 | Dynacomware Taiwan Inc. | System and method for providing Asian Web font documents |
US20070050419A1 (en) | 2005-08-23 | 2007-03-01 | Stephen Weyl | Mixed media reality brokerage network and methods of use |
US20120215640A1 (en) | 2005-09-14 | 2012-08-23 | Jorey Ramer | System for Targeting Advertising to Mobile Communication Facilities Using Third Party Data |
US7958448B2 (en) | 2005-10-25 | 2011-06-07 | Celartem, Inc. | Systems, methods, user interfaces, and computer-readable media for activating and managing fonts |
US8116791B2 (en) | 2005-10-31 | 2012-02-14 | Fontip Ltd. | Sending and receiving text messages using a variety of fonts |
US20090307585A1 (en) | 2005-11-02 | 2009-12-10 | Streamezzo | Method of managing character fonts within multimedia scenes, and the corresponding computer program and terminal |
US20090031220A1 (en) | 2005-11-02 | 2009-01-29 | Streamezzo | Method of managing character fonts within multimedia scenes, and the corresponding computer program and terminal |
US8381115B2 (en) | 2005-11-02 | 2013-02-19 | Streamezzo | Method of managing character fonts within multimedia scenes, and the corresponding computer program and terminal |
US7505040B2 (en) | 2005-12-19 | 2009-03-17 | Microsoft Corporation | Composite characters font hinting |
US20070139413A1 (en) | 2005-12-19 | 2007-06-21 | Microsoft Corporation | Composite characters font hinting |
US20070139412A1 (en) | 2005-12-19 | 2007-06-21 | Microsoft Corporation | Automatic font control value determination |
US20070159646A1 (en) | 2006-01-06 | 2007-07-12 | Microsoft Corporation | Techniques for granular font subsetting for efficient document consumption |
US8601374B2 (en) | 2006-02-13 | 2013-12-03 | Google Inc. | Account administration for hosted services |
US20070211062A1 (en) | 2006-03-13 | 2007-09-13 | International Business Machines Corporation | Methods and systems for rendering complex text using glyph identifiers in a presentation data stream |
US7937658B1 (en) | 2006-04-21 | 2011-05-03 | Adobe Systems Incorporated | Methods and apparatus for retrieving font data |
US7477988B2 (en) | 2006-05-16 | 2009-01-13 | Navteq North America, Llc | Dual road geometry representation for position and curvature-heading |
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 |
US20080028304A1 (en) | 2006-07-25 | 2008-01-31 | Monotype Imaging, Inc. | Method and apparatus for font subsetting |
US20080030502A1 (en) | 2006-08-04 | 2008-02-07 | Monotype Imaging, Inc. | Diacritics positioning system for digital typography |
US20080154911A1 (en) | 2006-12-26 | 2008-06-26 | Dynacomware Taiwan Inc. | System and method for on-line generation of asian documents with multiple font faces |
US20090275351A1 (en) | 2007-01-11 | 2009-11-05 | Kt Corporation | Mobile communication terminal, server, system and method for message service with font data |
US20080282186A1 (en) | 2007-05-11 | 2008-11-13 | Clikpal, Inc. | Keyword generation system and method for online activity |
US20080306916A1 (en) | 2007-06-09 | 2008-12-11 | Julio Amable Gonzalez | Auto-activation of fonts |
US20080303822A1 (en) | 2007-06-09 | 2008-12-11 | Nathan Daniel Taylor | Font metadata |
US7944447B2 (en) | 2007-06-22 | 2011-05-17 | Apple Inc. | Adaptive and dynamic text filtering |
US8098250B2 (en) | 2007-06-22 | 2012-01-17 | Apple Inc. | Adaptive and dynamic text filtering |
US7752222B1 (en) | 2007-07-20 | 2010-07-06 | Google Inc. | Finding text on a web page |
US20090063964A1 (en) | 2007-09-04 | 2009-03-05 | Apple Inc. | Font preloading |
US8306356B1 (en) | 2007-09-28 | 2012-11-06 | Language Technologies, Inc. | System, plug-in, and method for improving text composition by modifying character prominence according to assigned character information measures |
US20090119678A1 (en) | 2007-11-02 | 2009-05-07 | Jimmy Shih | Systems and methods for supporting downloadable applications on a portable client device |
US20090158134A1 (en) * | 2007-12-14 | 2009-06-18 | Sap Ag | Method and apparatus for form adaptation |
US20090183069A1 (en) | 2008-01-15 | 2009-07-16 | Microsoft Corporation | Font/Script Association |
US20110238495A1 (en) | 2008-03-24 | 2011-09-29 | Min Soo Kang | Keyword-advertisement method using meta-information related to digital contents and system thereof |
US20100091024A1 (en) | 2008-05-16 | 2010-04-15 | Nokia Corporation | Method and device for generating custom fonts |
US20100014104A1 (en) | 2008-05-16 | 2010-01-21 | Software Imaging Limited | Method and apparatus for managing fonts |
US20090303241A1 (en) | 2008-06-06 | 2009-12-10 | Shaiwal Priyadarshi | Systems and methods for font file optimization for multimedia files |
EP2166488A2 (en) | 2008-09-18 | 2010-03-24 | Xerox Corporation | Handwritten word spotter using synthesized typed queries |
US20100088606A1 (en) | 2008-10-07 | 2010-04-08 | Canon Kabushiki Kaisha | Image processing system, server apparatus, client apparatus, control method, and storage medium |
US8413051B2 (en) | 2008-10-20 | 2013-04-02 | Celartem, Inc. | Contextually previewing fonts |
US8201093B2 (en) | 2008-10-30 | 2012-06-12 | Raja Singh Tuli | Method for reducing user-perceived lag on text data exchange with a remote server |
US20100115454A1 (en) | 2008-10-30 | 2010-05-06 | Raja Singh Tuli | Method for reducing user-perceived lag on text data exchange with a remote server |
US20100164984A1 (en) | 2008-12-31 | 2010-07-01 | Shantanu Rane | Method for Embedding Messages into Documents Using Distance Fields |
US20120001922A1 (en) | 2009-01-26 | 2012-01-05 | Escher Marc | System and method for creating and sharing personalized fonts on a client/server architecture |
US20100218086A1 (en) | 2009-02-20 | 2010-08-26 | Microsoft Corporation | Font handling for viewing documents on the web |
US20100231598A1 (en) | 2009-03-10 | 2010-09-16 | Google Inc. | Serving Font Glyphs |
US20100275161A1 (en) | 2009-04-22 | 2010-10-28 | Dicamillo Adrienne T | Font Selector And Method For The Same |
US20100321393A1 (en) | 2009-06-22 | 2010-12-23 | Monotype Imaging Inc. | Font data streaming |
US20110090229A1 (en) | 2009-10-16 | 2011-04-21 | Extensis Inc. | Activation of Fonts Using Font Sets |
US20110090230A1 (en) | 2009-10-16 | 2011-04-21 | Extensis Inc. | Reduced Glyph Font Files |
US20110093565A1 (en) | 2009-10-16 | 2011-04-21 | Extensis Inc. | Serving Font Files in Varying Formats Based on User Agent Type |
US20130120396A1 (en) | 2009-11-19 | 2013-05-16 | Gregory A. Kaplan | Incrementally Building A Font |
US20110115797A1 (en) | 2009-11-19 | 2011-05-19 | Kaplan Gregory A | Dynamic Streaming of Font Subsets |
US20110131153A1 (en) | 2009-11-30 | 2011-06-02 | International Business Machines Corporation | Dynamically controlling a computer's display |
US20120134590A1 (en) | 2009-12-02 | 2012-05-31 | David Petrou | Identifying Matching Canonical Documents in Response to a Visual Query and in Accordance with Geographic Information |
US20110188761A1 (en) | 2010-02-02 | 2011-08-04 | Boutros Philip | Character identification through glyph data matching |
US8643542B2 (en) | 2010-02-04 | 2014-02-04 | Astrium Gmbh | Method for self-calibration of frequency offsets |
US20110271180A1 (en) | 2010-04-29 | 2011-11-03 | Monotype Imaging Inc. | Initiating Font Subsets |
US20110276872A1 (en) | 2010-05-06 | 2011-11-10 | Xerox Corporation | Dynamic font replacement |
US20110289407A1 (en) | 2010-05-18 | 2011-11-24 | Naik Devang K | Font recommendation engine |
US20110310432A1 (en) | 2010-06-18 | 2011-12-22 | Konica Minolta Business Technologies, Inc. | Computer readable recording medium storing print setting program, print setting apparatus, computer readable recording medium storing control program of printing apparatus, and printing apparatus |
US20120016964A1 (en) | 2010-07-17 | 2012-01-19 | Veen Jeffrey P | Method and systems for serving fonts during web browsing sessions |
US20120033874A1 (en) | 2010-08-05 | 2012-02-09 | Xerox Corporation | Learning weights of fonts for typed samples in handwritten keyword spotting |
US8643652B2 (en) | 2010-08-31 | 2014-02-04 | Adobe Systems Incorporated | Dynamic augmentation of extensible font subsets |
US20130127872A1 (en) | 2010-08-31 | 2013-05-23 | Gregory A. Kaplan | Dynamic Augmentation of Extensible Font Subsets |
US20120066590A1 (en) | 2010-09-10 | 2012-03-15 | Jeffrey Harris | Systems and Methods for Enhanced Font Management |
US20120072978A1 (en) * | 2010-09-16 | 2012-03-22 | International Business Machines, Inc. | Desired Font Rendering |
US20120092345A1 (en) | 2010-10-13 | 2012-04-19 | Bitstream, Inc. | System and method for displaying complex scripts with a cloud computing architecture |
US20120102391A1 (en) | 2010-10-21 | 2012-04-26 | Monotype Imaging Inc. | Identifiers for web font templates |
US20120102176A1 (en) | 2010-10-21 | 2012-04-26 | Monotype Imaging Inc. | Extracting and managing font style elements |
US8644810B1 (en) | 2010-10-22 | 2014-02-04 | Joingo, Llc | Method and system for dynamic font support on mobile devices |
US20120127069A1 (en) | 2010-11-24 | 2012-05-24 | Soma Sundaram Santhiveeran | Input Panel on a Display Device |
US20120288190A1 (en) | 2011-05-13 | 2012-11-15 | Tang ding-yuan | Image Reflow at Word Boundaries |
US20120307263A1 (en) | 2011-05-31 | 2012-12-06 | Toshiba Tec Kabushiki Kaisha | Network printer and printing method using same |
US20120306852A1 (en) | 2011-06-06 | 2012-12-06 | Monotype Imaging Inc. | Producing Three-Dimensional Graphics |
US20120323971A1 (en) | 2011-06-14 | 2012-12-20 | Sybase, Inc. | Optimizing data storage and access of an in-memory database |
US20120323694A1 (en) | 2011-06-15 | 2012-12-20 | Blue Kai, Inc. | Non-invasive sampling and fingerprinting of online users and their behavior |
US20130179761A1 (en) | 2011-07-12 | 2013-07-11 | Inkling Systems, Inc. | Systems and methods for creating, editing and publishing cross-platform interactive electronic works |
US20130033498A1 (en) | 2011-08-01 | 2013-02-07 | Microsoft Corporation | Reducing font instructions |
US20130163027A1 (en) | 2011-12-22 | 2013-06-27 | Xerox Corporation | Secure federation of cloud print services |
US20130215133A1 (en) | 2012-02-17 | 2013-08-22 | Monotype Imaging Inc. | Adjusting Content Rendering for Environmental Conditions |
US20130215126A1 (en) | 2012-02-17 | 2013-08-22 | Monotype Imaging Inc. | Managing Font Distribution |
US8731905B1 (en) | 2012-02-22 | 2014-05-20 | Quillsoft Ltd. | System and method for enhancing comprehension and readability of text |
US20150100882A1 (en) | 2012-03-19 | 2015-04-09 | Corel Corporation | Method and system for interactive font feature access |
US20150193386A1 (en) | 2012-05-03 | 2015-07-09 | David Adam Wurtz | System and Method of Facilitating Font Selection and Manipulation of Fonts |
US20130321617A1 (en) | 2012-05-30 | 2013-12-05 | Doron Lehmann | Adaptive font size mechanism |
US20140025756A1 (en) | 2012-07-23 | 2014-01-23 | Samuel N. Kamens | Inter-modal messaging communications |
US20140153012A1 (en) | 2012-12-03 | 2014-06-05 | Monotype Imaging Inc. | Network Based Font Management for Imaging Devices |
EP2857983A2 (en) | 2013-10-04 | 2015-04-08 | Monotype Imaging, Inc. | Analyzing font similarity for presentation |
Non-Patent Citations (33)
Title |
---|
"A first experiment with multicoloured web fonts," Manufactura Independente website, Feb. 28, 2011, Retrieved from the internet: http://blog.manufacturaindependente.org/2011/02/a-first-experiment-with-multicoloured-web-fonts/. |
"Announcing Speakeasy: A new open-source language tool from Typekit," Oct. 28, 2010, on-line http://blog.typekit.com/2010/10/28/announcing-speakeasy-a-new-open-source-language-tool-from-typekit/. |
"colorfont/v1," Feb. 28, 2011, retrieved from the internet: http://manufacturaindependente.com/colorfont/v1/. |
"Flash CS4 Professional ActionScript 2.0", 2007, retrieved on http://help.adobe.com/en-US/AS2LCR/Flash-10.0/help.html?content=00000284.html on Aug. 31, 2015. |
"photofont.com-Use photofonts," Sep. 2, 2012, retrieved from the internet: http://web.archive.org/web/20120902021143/http://photofont.com/photofont/use/web. |
"Saffron Type System", retrieved from the internet Nov. 12, 2014, 7 pages. |
Adobe Systems Incorporated, "PostScript Language Reference-Third Edition," Feb. 1999, pp. 313-390. |
Adobe Systems Incorporated, "The Type 42 Font Format Specification," Technical Note #5012, Jul. 31, 1998, pp. 1-24. |
Adobe Systems Incorporated, "To Unicode Mapping File Tutorial," Adobe Technical Note, XP002348387, May 2003. |
Apple Computers, "The True Type Font File," Oct. 27, 2000, pp. 1-17. |
Celik et al., "W3C, CSS3 Module: Fonts," W3C Working Draft, Jul. 31, 2001, pp. 1-30. |
Doughty, Mike, "Using OpenType® Fonts with Adobe® InDesign®," Jun. 11, 2012 retrieved from the internet: http://webarchive.org/web/20121223032924/http://www.sketchpad.net/opentype-indesign.htm (retrieved Sep. 22, 2014), 2 pages. |
European Search Report, 13179728.4, Sep. 10, 2015, 3 pages. |
European Search Report, 14184499.3, Jul. 13, 2015, 7 pages. |
European Search Report, 14187549.2, Jul. 30, 2015 7 pages. |
Extensis, Suitcase 10.2, Quick Start Guide for Macintosh, 2001, 23 pgs. |
Goswami, Gautum, "Quite 'Writly' Said!," One Brick at a Time, Aug. 21, 2006, Retrieved from the internet: :http://gautamg.wordpress.com/2006/08/21/quj.te-writely-said/ (retrieved on Sep. 23, 2013), 3 pages. |
International Preliminary Report on Patentability issued in PCT application No. PCT/US2013/071519 dated Jun. 9, 2015, 9 pages. |
International Search Report & Written Opinion issued in PCT application No. PCT/US10/01272, mailed Jun. 15, 2010, 6 pages. |
International Search Report & Written Opinion issued in PCT application No. PCT/US2011/034050 dated Jul. 15, 2011, 13 pages. |
International Search Report & Written Opinion, PCT/US2013/026051, mailed Jun. 5, 2013, 9 pages. |
International Search Report & Written Opinion, PCT/US2013/071519, mailed Mar. 5, 2013, 12 pages. |
International Search Report & Written Opinion, PCT/US2013/076917, mailed Jul. 9, 2014, 11 pages. |
International Search Report & Written Opinion, PCT/US2014/010786, mailed Sep. 30, 2014, 9 pages. |
Japanese Office Action, 2009-521768, mailed Aug. 28, 2012. |
Japanese Office Action, 2013-508184, mailed Apr. 1, 2015. |
Ma Wei-Ying et al., "Framework for adaptive content delivery in heterogeneous network environments", Jan. 24, 2000, Retrieved from the Internet: http://www.cooltown.hp.com/papers/adcon/MMCN2000. |
Open Text Exceed, User's Guide, Version 14, Nov. 2009, 372 pgs. |
Saurabh, Kataria et al., "Font retrieval on a large scale: An experimental study", 2010 17th IEEE International Conference on Image Processing (ICIP 2010); Sep. 26-29, 2010; Hong Kong, China, IEEE, Piscataway, NJ, USA, Sep. 26, 2010, pp. 2177-2180. |
Supplementary European Search Report, European Patent Office, European patent application No. EP 07796924, dated Dec. 27, 2010, 8 pages. |
TrueType Fundamentals, Microsoft Typography, Nov. 1997, pp. 1-17. |
Universal Type Server, Upgrading from Suitcase Server, Sep. 29, 2009, 18 pgs. |
Wenzel, Martin, "An Introduction to OpenType Substitution Features," Dec. 26, 2012, Retrieved from the internet: http://web.archive.org/web/20121226233317/http://ilovetypography.com/OpenType/opentype-features. Html (retrieved on Sep. 18, 2014), 12 pages. |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10572574B2 (en) | 2010-04-29 | 2020-02-25 | Monotype Imaging Inc. | Dynamic font subsetting using a file size threshold for an electronic document |
US20130215126A1 (en) * | 2012-02-17 | 2013-08-22 | Monotype Imaging Inc. | Managing Font Distribution |
US9817615B2 (en) | 2012-12-03 | 2017-11-14 | Monotype Imaging Inc. | Network based font management for imaging devices |
US9805288B2 (en) | 2013-10-04 | 2017-10-31 | Monotype Imaging Inc. | Analyzing font similarity for presentation |
US9691169B2 (en) | 2014-05-29 | 2017-06-27 | Monotype Imaging Inc. | Compact font hinting |
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 |
US10455056B2 (en) * | 2015-08-21 | 2019-10-22 | Abobe Inc. | Cloud-based storage and interchange mechanism for design elements |
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 |
Also Published As
Publication number | Publication date |
---|---|
WO2014100582A3 (en) | 2014-08-28 |
US20140176563A1 (en) | 2014-06-26 |
WO2014100582A2 (en) | 2014-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9569865B2 (en) | Supporting color fonts | |
US9626337B2 (en) | Advanced text editor | |
CN110663040B (en) | Method and system for securely embedding dashboard into content management system | |
US20140136957A1 (en) | Supporting Scalable Fonts | |
US9817615B2 (en) | Network based font management for imaging devices | |
US10810363B2 (en) | Image annotations in collaborative content items | |
US9805288B2 (en) | Analyzing font similarity for presentation | |
EP2849086A2 (en) | Font management for editing electronic documents | |
US9645992B2 (en) | Methods and apparatuses for interaction with web applications and web application data | |
US10572574B2 (en) | Dynamic font subsetting using a file size threshold for an electronic document | |
AU2009225393B2 (en) | File access via conduit application | |
JP2019012529A (en) | Document management and collaboration system | |
US20120102176A1 (en) | Extracting and managing font style elements | |
WO2016100541A1 (en) | Network based static font subset management | |
US10331756B2 (en) | Accessibility tagger for non-accessibility enabled webpages | |
KR20130126610A (en) | Identifiers for style sheets | |
US11562037B2 (en) | Crawlability of single page applications | |
US20180101974A1 (en) | Portable typelet file | |
CN105843786A (en) | Layout file displaying method and device | |
US20150205767A1 (en) | Link appearance formatting based on target content | |
US20140281916A1 (en) | Supporting Font Character Kerning | |
US20130124480A1 (en) | System and Method for Viewer Based Image Metadata Sanitization | |
US10261979B2 (en) | Method and apparatus for rendering a screen-representation of an electronic document | |
WO2014074104A1 (en) | Supporting scalable fonts | |
US20170315972A1 (en) | Transforming web-based digital content to enable native rendering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MONOTYPE IMAGING INC., MASSACHUSETTS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KAASILA, SAMPO JUHANI;ORCUTT, DANIEL ROBERT;LEPPER, MARK PETER;REEL/FRAME:031827/0567 Effective date: 20131220 |
|
AS | Assignment |
Owner name: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT, MASSACHUSETTS Free format text: SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MONOTYPE IMAGING HOLDINGS INC.;MYFONTS INC.;AND OTHERS;REEL/FRAME:036627/0925 Effective date: 20150915 Owner name: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT, MASS Free format text: SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MONOTYPE IMAGING HOLDINGS INC.;MYFONTS INC.;AND OTHERS;REEL/FRAME:036627/0925 Effective date: 20150915 |
|
FEPP | Fee payment procedure |
Free format text: PAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
CC | Certificate of correction | ||
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, MA Free format text: PATENT SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MONOTYPE IMAGING HOLDINGS INC.;IMAGING HOLDINGS CORP.;AND OTHERS;REEL/FRAME:049566/0513 Effective date: 20190322 Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, MASSACHUSETTS Free format text: PATENT SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MONOTYPE IMAGING HOLDINGS INC.;IMAGING HOLDINGS CORP.;AND OTHERS;REEL/FRAME:049566/0513 Effective date: 20190322 |
|
AS | Assignment |
Owner name: MONOTYPE IMAGING HOLDINGS INC., MASSACHUSETTS Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:048691/0513 Effective date: 20190322 Owner name: MYFONTS INC., MASSACHUSETTS Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:048691/0513 Effective date: 20190322 Owner name: SWYFT MEDIA INC., MASSACHUSETTS Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:048691/0513 Effective date: 20190322 Owner name: MONOTYPE IMAGING INC., MASSACHUSETTS Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:048691/0513 Effective date: 20190322 Owner name: MONOTYPE ITC INC., MASSACHUSETTS Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:048691/0513 Effective date: 20190322 Owner name: IMAGING HOLDINGS CORP., MASSACHUSETTS Free format text: TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT;ASSIGNOR:SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT;REEL/FRAME:048691/0513 Effective date: 20190322 |
|
AS | Assignment |
Owner name: MONOTYPE IMAGING HOLDINGS INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:050711/0170 Effective date: 20191011 Owner name: MYFONTS INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:050711/0170 Effective date: 20191011 Owner name: OLAPIC, INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:050711/0170 Effective date: 20191011 Owner name: MONOTYPE IMAGING INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:050711/0170 Effective date: 20191011 Owner name: MONOTYPE ITC INC., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:050711/0170 Effective date: 20191011 Owner name: IMAGING HOLDINGS CORP., MASSACHUSETTS Free format text: RELEASE OF SECURITY INTEREST AT REEL/FRAME 049566/0513;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:050711/0170 Effective date: 20191011 |
|
AS | Assignment |
Owner name: DEUTSCHE BANK AG NEW YORK BRANCH, NEW YORK Free format text: FIRST LIEN PATENT SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MYFONTS INC.;REEL/FRAME:050716/0539 Effective date: 20191011 Owner name: AUDAX PRIVATE DEBT LLC, AS COLLATERAL AGENT, NEW Y Free format text: SECOND LIEN PATENT SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MYFONTS INC.;REEL/FRAME:050716/0514 Effective date: 20191011 Owner name: AUDAX PRIVATE DEBT LLC, AS COLLATERAL AGENT, NEW YORK Free format text: SECOND LIEN PATENT SECURITY AGREEMENT;ASSIGNORS:MONOTYPE IMAGING INC.;MYFONTS INC.;REEL/FRAME:050716/0514 Effective date: 20191011 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20210214 |
|
AS | Assignment |
Owner name: MYFONTS INC., MASSACHUSETTS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:AUDAX PRIVATE DEBT LLC;REEL/FRAME:066739/0610 Effective date: 20240229 Owner name: MONOTYPE IMAGING INC., MASSACHUSETTS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:AUDAX PRIVATE DEBT LLC;REEL/FRAME:066739/0610 Effective date: 20240229 Owner name: MYFONTS INC., MASSACHUSETTS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:DEUTSCHE BANK AG NEW YORK BRANCH;REEL/FRAME:066651/0123 Effective date: 20240229 Owner name: MONOTYPE IMAGING INC., MASSACHUSETTS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:DEUTSCHE BANK AG NEW YORK BRANCH;REEL/FRAME:066651/0123 Effective date: 20240229 |