Method and system for virtual machine rendering of non-latin1 unicode glyphs
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-modifiedWhat 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.