The present invention relates to techniques for font generation and display in computerized systems.
It is well-known in the art that font rendering of 1-bit fonts allows for only two colors on a bitmap font. Persons skilled in the art will appreciate that one of the two colors needs to be transparent so that any underlying content is still visible; the other color defines the main font color. A significant problem with using a 1-bit font in this way is well-known in the art: there is often a sharp contrast between the font color and the background causing flickering and generally poor quality font rendering.
Reference is now made to
Reference is now made to
Anti-aliasing, is explained, for example, at the following site on the World Wide Web:
www.isocalc.com/tutorials/antialias.htm
The following references are also believed to represent the state of the art:
U.S. Pat. No. 5,390,289 to Beitel, et al.; and
Published U.S. Patent Application No. 2002/0167530 of Hiratsuka, et al.
The disclosures of all references mentioned above and throughout the present specification, as well as the disclosures of all references mentioned in those references, are hereby incorporated herein by reference.
The present invention, in preferred embodiments thereof, seeks to provide improved techniques for font generation and display in computerized systems; the techniques provided by the present invention are particularly, but not exclusively, useful in systems which have the ability to display only 1-bit fonts, and systems in which display of more-than-1-bit fonts is difficult.
Production of a true anti-alias font, as is known in the prior art, requires increased processing resources and time. In a context in which hardware resources are limited, processing will be slowed significantly because of the need to analyze both font and background colors, and then to re-calculate each pixel color to create the anti-alias font on the fly.
The present invention, in preferred embodiments thereof, overcomes the limitations of the prior art by providing more than one 1-bit font element, typically but not necessarily two 1-bit font elements, and rendering the fonts over each other to simulate anti-aliasing. Therefore, it is not necessary to perform conventional anti-alias processing, in which a 2 bit (or more bits) font is rendered, in order to display the simulated anti-alias font. In some contexts in which hardware resources are limited such a font may be quite suitable. For example, in a case of a typical digital television system having a set-top-box with limiting processing power, the inventors of the present invention believe that such a simulated anti-aliasing font, when displayed on a typical television display, adequately simulates an anti-alias font.
There is thus provided in accordance with a preferred embodiment of the present invention a method for displaying a simulated anti-alias font on a display device, the method including providing a first font element, the first font element being semi-transparent, providing a second font element, and rendering the first font element and the second font element on top of each other on the display device, thereby displaying a simulated anti-alias font including at least part of the first font element and at least part of the second font element.
Further in accordance with a preferred embodiment of the present invention the second font element is at least partially slimmer than the first font element.
Still further in accordance with a preferred embodiment of the present invention the first font element has a transparency level between 20 percent and 80 percent.
Additionally in accordance with a preferred embodiment of the present invention the first font element and the second font element are one-bit font elements.
Moreover in accordance with a preferred embodiment of the present invention, the method includes providing a third font element, the third font element being semi-transparent, the third font element having a different transparency level than a transparency level of the first font element, wherein the rendering is performed by rendering the first font element, the second font element and the third font element on top of each other, thereby displaying the simulated anti-alias font, the simulated anti-alias font also including at least part of the third font element.
Further in accordance with a preferred embodiment of the present invention the first font element has a transparency level between 20 percent and 60 percent and the third font element has a transparency level between 40 percent and 80 percent.
Still further in accordance with a preferred embodiment of the present invention the third font element is a one-bit font element.
Additionally in accordance with a preferred embodiment of the present invention the simulated anti-alias font is displayed using only one-bit font elements.
There is also provided in accordance with another preferred embodiment of the present invention a system for displaying a simulated anti-alias font on a display device, the system including a font store to provide a plurality of font elements including a first font element and a second font element, the first font element being semi-transparent, and a font rendering module to render the first font element and the second font element on top of each other on the display device, thereby displaying a simulated anti-alias font including at least part of the first font element and at least part of the second font element.
Additionally in accordance with a preferred embodiment of the present invention the second font element is at least partially slimmer than the first font element.
Moreover in accordance with a preferred embodiment of the present invention the first font has a transparency level between 20 percent and 80 percent.
Further in accordance with a preferred embodiment of the present invention the first font element and the second font element are one-bit font elements.
Still further in accordance with a preferred embodiment of the present invention the font elements include a third font element, the third font element being semi-transparent, the third font element having a different transparency level than a transparency level of the first font element, the font rendering module being adapted to render the first font element, the second font element and the third font element on top of each other, thereby displaying the simulated anti-alias font also including at least part of the third font element.
Additionally in accordance with a preferred embodiment of the present invention the first font element has a transparency level between 20 percent and 60 percent and the third font element has a transparency level between 40 percent and 80 percent.
Moreover in accordance with a preferred embodiment of the present invention the third font element is a one-bit font element.
Further in accordance with a preferred embodiment of the present invention the simulated anti-alias font is displayed using only one-bit font elements.
The present invention will be understood and appreciated more fully from the following detailed description, taken in conjunction with the drawings in which:
By way of introduction, in preferred embodiments of the present invention, two 1-bit font elements are provided. At least one of the font elements is preferably semi-transparent. The font elements are preferably rendered over the top of each other on a display device thereby displaying a simulated anti-alias font including at least part of each font element, the semi-transparency typically being used to simulate the anti-aliasing. Therefore, it is not necessary to perform conventional anti-alias processing, in which a 2 bit (or more bits) font is rendered, in order to display the simulated anti-alias font; the simulated anti-alias font is displayed using only one-bit font elements. The term “only one-bit” as used in the specification and claims is defined to exclude two (or more bits) fonts or font elements. It will be appreciated that more than two font elements, and font rendering more than twice, may be used for additional color depth.
The term “font element” in all of its grammatical forms as used in the claims and the specification of the present application is defined to include the following: an element which when rendered on top of one or more font elements forms a font character, an element which forms a font character by itself, and/or an element which when rendered on top of a font character enhances the font character.
Reference is now made to
Reference is now made to
Reference is now made to
Reference is now made to
The font element 28 is typically displayed on a display device 34. The font element 30 is preferably rendered on top of the font element 28 on the display device 34, thereby displaying a simulated two-tone anti-alias font 36. The font element 32 is then typically rendered on top of the two-tone anti-alias font 36, thereby displaying a simulated three-tone anti-alias font 38 including at least part of each of the font elements 28, 30, 32. It will be appreciated by those ordinarily skilled in the art that the font elements 28, 30, 32 can be rendered on top of each other in any order.
Reference is now made to
The font rendering system 40 preferably includes a font store 42 to provide a plurality of font elements, at least one of the font elements being a semi-transparent font element (block 46) for example, but not limited to the font elements 22, 24 of
A particularly detailed preferred method for producing font elements, such as the font elements 22, 24 of
Industry standard software for producing and editing bitmap fonts is preferably used; a preferred example of such software is BitFonter, commercially available from FontLab Ltd. of 136 East 8th St, PMB 230, Port Angeles, Wash. 98362 USA. In the following description, features of BitFonter are described; persons skilled in the art will appreciate that similar features of another appropriate software product for producing and editing bitmap fonts may be used, mutatis mutandis.
A 2-bit font is generally imported into the software at the desired size, at grayscale with typically four levels of gray.
The full font character set is editable in the viewer. The font artist typically goes through each of the glyphs to edit them, generally using a window which displays the characters in a large format, with each square in a grid representing the individual pixels that make up the character (glyph).
The 2-bit font is made of 4 colors: white, which is the fully transparent color; two levels of gray which produce the anti-aliasing of the 2-bit font; and black, which is the fully opaque color.
The designer needs to reduce the character from 4 colors to 3: white, one gray and black; however, it is not as simple as reducing both the grays to a single gray; certain gray pixels will become black or white. The resulting font looks like the font which will be finally rendered on the screen (such as, for example, the font 26 of
The next step is to separate the font into separate font elements of two colors only, i.e. white and one other color, thereby producing two or three new 1-bit font elements (such as, for example, the font elements 22, 24 of
It will be appreciated that various features of the invention which are, for clarity, described in the contexts of separate embodiments may also be provided in combination in a single embodiment. Conversely, various features of the invention which are, for brevity, described in the context of a single embodiment may also be provided separately or in any suitable sub-combination. It will also be appreciated by persons skilled in the art that the present invention is not limited by what has been particularly shown and described hereinabove. Rather the scope of the invention is defined only by the claims which follow.
Number | Date | Country | Kind |
---|---|---|---|
0500410.6 | Jan 2005 | GB | national |
The present application claims priority from UK Patent Application S/N 0500410.6 of NDS Limited, filed on 10 Jan. 2005 and U.S. Provisional Patent Application Ser. No. 60/643,032 of King, et al. filed on 11 Jan. 2005, the disclosures of which are hereby incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
60643032 | Jan 2005 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/GB05/02459 | Jun 2005 | US |
Child | 11392172 | Mar 2006 | US |