US2002093683A1PendingUtilityA1

Method and system for virtual machine rendering of non-latin1 unicode glyphs

Assignee: IBMPriority: Dec 3, 1998Filed: Oct 26, 2001Published: Jul 18, 2002
Est. expiryDec 3, 2018(expired)· nominal 20-yr term from priority
G06F 40/129
43
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Using the concept of off-screen rendering, a Unicode encoding value for a non-Latin1 glyph is converted into a bitmap image using Java™ in order to print glyphs that are not supported by a printer. The method uses the JDK application information together with the platform specific operating system's information to perform a non-operating system specific rendering or generic rendering of the non-Latin1 Unicode glyphs for use in printing the glyphs. This solution is glyph-based instead of font-based and works within the confines of Java™ classes and methods. It is primarily an extension of the Java language that exposes a host font manager, such as a TrueType™ font engine, in such a way as to bring the bitmap of a glyph into an application or applet executing on the virtual machine. The bitmap of the glyph may then be printed.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
         1 . A method for glyph processing comprising: 
 implementing methods, as an extension of Java language, that expose a host font manager; and    executing the methods to provide a bitmap of a glyph to an application or an applet executing on a virtual machine.    
     
     
         2 . A method for glyph processing comprising: 
 determining a glyph encoding value; and    obtaining glyph specific information using a Java call based on the glyph encoding value.    
     
     
         3 . The method as in  claim 2  wherein the glyph specific information comprises size, width, height, and positioning data of the glyph.  
     
     
         4 . A method for glyph processing comprising: 
 determining a glyph encoding value; and    obtaining glyph data using a Java call based on the glyph encoding value.    
     
     
         5 . The method as in  claim 4  wherein the glyph data comprises a bitmap of the glyph.  
     
     
         6 . A method for printing a series of glyphs on a printer within a computer system, wherein said series of glyphs comprises zero or more glyphs, the method comprising the computer-implemented steps of: 
 (a) determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    (c) if the printer can render said each glyph, generating a request to print said each glyph; and    (d) if the printer cannot render said each glyph, rendering said glyph as bitmapped image data and generating a request to print said bitmapped image data.    
     
     
         7 . The method as recited in  claim 6 , wherein said each glyph is specified using an encoding value in the Unicode encoding standard.  
     
     
         8 . The method as recited in  claim 6 , wherein said each glyph is specified using an encoding value within the non-Latin1 encoding values of the Unicode encoding standard.  
     
     
         9 . The method as recited in  claim 6 , wherein said each glyph is rendered in step (d) in a virtual machine.  
     
     
         10 . The method as recited in  claim 9 , wherein said virtual machine is a Java virtual machine.  
     
     
         11 . A method for printing a series of glyphs on a printer within a computer system, wherein said series of glyphs comprises zero or more glyphs, the method comprising the computer-implemented steps of: 
 (b) receiving a request to print a series of glyphs;    (c) determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    (e) if the printer can render said each glyph, generating a request to print said each glyph; and    (f) if the printer cannot render said glyph, rendering said glyph as bitmapped image data and generating a request to print said bitmapped image data.    
     
     
         12 . The method as recited in  claim 11 , wherein said each glyph is specified using an encoding value in the Unicode encoding standard.  
     
     
         13 . The method as recited in  claim 11 , wherein said each glyph is specified using an encoding value within the non-Latin1 encoding values of the Unicode encoding standard.  
     
     
         14 . The method as recited in  claim 11 , wherein said each glyph is rendered in step (d) in a virtual machine.  
     
     
         15 . The method as recited in  claim 14 , wherein said virtual machine is a Java virtual machine.  
     
     
         16 . A method for printing a series of glyphs on a printer within a computer system, said computer system comprising a virtual machine executing on a host computer, wherein said series of glyphs comprises zero or more glyphs, the method comprising the computer-implemented steps of: 
 (a) receiving, within the virtual machine, a request to print a series of glyphs, each glyph in said series of glyphs specified by a Unicode encoding value;    (d) determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    (e) if the printer can render said each glyph, rendering said each glyph in the printer as first bitmapped image data and printing said first bitmapped image data; and    (f) if the printer cannot render said glyph, rendering said glyph in the virtual machine as second bitmapped image data and printing said second bitmapped image data.    
     
     
         17 . The method as recited in  claim 16 , wherein said rendering of said each glyph in step (d) further comprises: 
 (d) (1) determining whether said each glyph is represented in host font information, and if so, retrieving font metric data from the host font information prior to rendering.    
     
     
         18 . The method as recited in  claim 17 , wherein said font metric data comprises bitmapped image data for the glyph.  
     
     
         19 . The method as recited in  claim 18 , wherein said rendering of said each glyph in step (d) further comprises: 
 (d) (2) in response to retrieving font metric data, converting the font metric data into bitmapped image data within a graphic environment of the virtual machine prior to rendering.    
     
     
         20 . The method as recited in  claim 16 , wherein said rendering of said each glyph in step (d) further comprises: 
 (d) (3) determining whether said each glyph is represented in host font information, and if not, printing default bitmapped image data for said each glyph.    
     
     
         21 . The method as recited in  claim 16 , wherein said virtual machine is a Java virtual machine.  
     
     
         22 . The method as recited in  claim 17 , wherein said step of retrieving font metric data further comprises retrieving said font metric data from a host font engine on said host computer or a host font manager on said host computer.  
     
     
         23 . The method as recited in  claim 17 , wherein said font metric data further comprises TrueType™ font information.  
     
     
         24 . A virtual machine comprising: 
 implementation means for implementing methods, as an extension of Java language, that expose a host font manager; and    execution means for executing the methods to provide a bitmap of a glyph to an application or an applet executing on the virtual machine.    
     
     
         25 . A data processing system for glyph processing comprising: 
 implementation means for implementing methods, as an extension of Java language, that expose a host font manager; and    execution means for executing the methods to provide a bitmap of a glyph to an application or an applet executing on a virtual machine.    
     
     
         26 . A data processing system for glyph processing comprising: 
 determination means for determining a glyph encoding value; and    retrieval means for retrieving glyph specific information using a Java call based on the glyph encoding value.    
     
     
         27 . The data processing system as recited in  claim 26  wherein the glyph specific information comprises size, width, height, and positioning data of the glyph.  
     
     
         28 . A data processing system for glyph processing comprising: 
 determination means for determining a glyph encoding value; and    retrieval means for retrieving glyph data using a Java call based on the glyph encoding value.    
     
     
         29 . The data processing system as in  claim 28  wherein the glyph data comprises a bitmap of the glyph.  
     
     
         30 . A printer apparatus comprising: 
 receiving means for receiving printer specific language data comprising a glyph encoding value; and    receiving means for receiving glyph data obtained using a Java call based on the glyph encoding value.    
     
     
         31 . A virtual machine comprising: 
 implementation means for implementing methods, as an extension of Java language, that expose a host font manager; and    execution means for executing the methods to provide a bitmap of a glyph to an application or an applet executing on the virtual machine.    
     
     
         32 . A data processing system for printing a series of glyphs on a printer within the data processing system, wherein said series of glyphs comprises zero or more glyphs, the data processing system comprising: 
 (a) determination means for determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    (b) generation means for generating a request to print said each glyph if the printer can render said each glyph; and    (c) rendering means for rendering said each glyph, if the printer cannot render said each glyph, as bitmapped image data and generation means generating a request to print said bitmapped image data.    
     
     
         33 . The data processing system as recited in  claim 32 , wherein said each glyph is specified using an encoding value in the Unicode encoding standard.  
     
     
         34 . The data processing system as recited in  claim 32 , wherein said each glyph is specified using an encoding value within the non-Latin1 encoding values of the Unicode encoding standard.  
     
     
         35 . The data processing system as recited in  claim 32 , wherein said each glyph is rendered in step (d) in a virtual machine.  
     
     
         36 . The data processing system as recited in  claim 35 , wherein said virtual machine is a Java virtual machine.  
     
     
         37 . A data processing system for printing a series of glyphs on a printer within the data processing system, wherein said series of glyphs comprises zero or more glyphs, the data processing system comprising: 
 (d) means for receiving a request to print a series of glyphs;    (e) means for determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    (f) means for generating a request to print said each glyph if the printer can render said each glyph; and    (g) means for rendering said each glyph, if the printer cannot render said each glyph, as bitmapped image data and generation means for generating a request to print said bitmapped image data.    
     
     
         38 . The data processing system as recited in  claim 37 , wherein said each glyph is specified using an encoding value in the Unicode encoding standard.  
     
     
         39 . The data processing system as recited in  claim 37 , wherein said each glyph is specified using an encoding value within the non-Latin1 encoding values of the Unicode encoding standard.  
     
     
         40 . The data processing system as recited in  claim 37 , wherein said each glyph is rendered in step (d) in a virtual machine.  
     
     
         41 . The data processing system as recited in  claim 40 , wherein said virtual machine is a Java virtual machine.  
     
     
         42 . A data processing system for printing of a series of glyphs on a printer within the data processing system, said data processing system comprising a virtual machine executing on a host computer, wherein said series of glyphs comprises zero or more glyphs, the data processing system comprising: 
 (b) receiving means for receiving, within the virtual machine, a request to print a series of glyphs, each glyph in said series of glyphs specified by a Unicode encoding value;    (h) determination means for determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    (i) generation means for generating a request to print said each glyph if the printer can render said each glyph; and    (j) rendering means for rendering said each glyph in the virtual machine, if the printer cannot render said each glyph, as bitmapped image data and generation means for generating a request to print said bitmapped image data.    
     
     
         43 . The data processing system as recited in  claim 42 , wherein said rendering means for rendering said each glyph in step (d) further comprises: 
 (d) (1) determination means for determining whether said each glyph is represented in host font information, and if so, retrieval means for retrieving font metric data from the host font information prior to rendering.    
     
     
         44 . The data processing system as recited in  claim 43 , wherein said font metric data comprises bitmapped image data for the glyph.  
     
     
         45 . The data processing system as recited in  claim 44 , wherein said rendering means for rendering said each glyph in step (d) further comprises: 
 (d) (2) in response to retrieving font metric data, conversion means for converting the font metric data into bitmapped image data within a graphic environment of the virtual machine prior to rendering.    
     
     
         46 . The data processing system as recited in  claim 42 , wherein said rendering means for rendering said each glyph in step (d) further comprises: 
 (d) (3) determination means for determining whether said each glyph is represented in host font information, and if not, default print request generation means for generating a print request of default bitmapped image data for said each glyph.    
     
     
         47 . The data processing system as recited in  claim 42 , wherein said virtual machine is a Java virtual machine.  
     
     
         48 . The data processing system as recited in  claim 43 , wherein said retrieval means for retrieving font metric data further comprises retrieval means for retrieving said font metric data from a host font engine on said host computer or a host font manager on said host computer.  
     
     
         49 . The data processing system as recited in  claim 43 , wherein said font metric data further comprises TrueType™ font information.  
     
     
         50 . A computer program product for use within a data processing system for glyph processing comprising: 
 a computer usable medium;    first instructions for implementing methods, as an extension of Java language, that expose a host font manager; and    second instructions for executing the methods to provide a bitmap of a glyph to an application or an applet executing on a virtual machine.    
     
     
         51 . A computer program product for use within a data processing system for glyph processing comprising: 
 a computer usable medium;    first instructions for determining a glyph encoding value; and    second instructions for obtaining glyph specific information using a Java call based on the glyph encoding value.    
     
     
         52 . The computer program product as in  claim 51  wherein the glyph specific information comprises size, width, height, and positioning data of the glyph.  
     
     
         53 . A computer program product for use within a data processing system for glyph processing comprising: 
 a computer usable medium;    first instructions for determining a glyph encoding value; and    second instructions for obtaining glyph data using a Java call based on the glyph encoding value.    
     
     
         54 . The computer program product as in  claim 52  wherein the glyph data comprises a bitmap of the glyph.  
     
     
         55 . A computer program product for use within a data processing system for printing a series of glyphs on a printer within a computer system, wherein said series of glyphs comprises zero or more glyphs, the computer program product comprising: 
 a computer usable medium;    first instructions for determining, for each glyph in said series of glyphs, whether the printer can render said each glyph;    second instructions for generating a request to print said each glyph if the printer can render said each glyph; and    third instructions for rendering said glyph as bitmapped image data and generating a request to print said bitmapped image data if the printer cannot render said each glyph.    
     
     
         56 . The computer program product as recited in  claim 55 , wherein said each glyph is specified using an encoding value in the Unicode encoding standard.  
     
     
         57 . The computer program product as recited in  claim 55 , wherein said each glyph is specified using an encoding value within the non-Latin1 encoding values of the Unicode encoding standard.  
     
     
         58 . The computer program product as recited in  claim 55 , wherein said each glyph is rendered in step (d) in a virtual machine.  
     
     
         59 . The computer program product as recited in  claim 58 , wherein said virtual machine is a Java virtual machine.

Join the waitlist — get patent alerts

Track US2002093683A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.