9.1 Using Fonts

In Oracle Reports, fonts come into play in several areas:

9.1.1 Fonts in Oracle Reports Builder

Oracle Reports Builder provides a list of fonts that are available on the system in the font picker box.

Figure 9-1 Font list in Oracle Reports Builder

Description of Figure 9-1 follows
Description of "Figure 9-1 Font list in Oracle Reports Builder"

On Windows, the font list is derived from the fonts that are installed on the system along with the fonts available on the current default printer. A small printer icon before the font name identifies printer fonts. True Type fonts are associated with a TTF icon.

On UNIX, the font list is derived by querying the X-server display on which the application is running for the available fonts. The command is similar to the UNIX xlsfonts command, which lists all of the available fonts for the X-server display. From this font list, Oracle Reports Builder generates a list of usable fonts with the valid style, weight, width, size, and encoding characteristics to match the character set. The character set is driven by the NLS_LANG environment variable. Oracle Reports Builder includes only those fonts with an encoding of iso8859-1, unless specified differently in the toolkit resource file, Tk2Motif*fontMapCs. For more information on Tk2Motif*fontMapCs, refer to Section 9.3, "Font Configuration Files".

9.1.2 Fonts in Report Output

During report formatting, fonts associated with the layout objects are first checked against the font alias file, uifont.ali, (refer to Section 9.3, "Font Configuration Files"). If an entry in the font alias file is found, the mapped font is used instead of the original one. The mapped font is then searched for in the list of fonts available on the system or printer. If a particular font is not found, Oracle Reports will look for the nearest matching font under the same character set which can be used instead.

With the new font model supported on UNIX in 11g Release 1 (11.1.1), report output is in most cases the same on UNIX as on Windows, allowing for simplified cross-platform deployment. Oracle Reports reads the font metrics from the appropriate TTF files from the font directory to correctly format the report output. This eliminates the issue of text misalignment due to font metrics mismatches. Fonts for which TTF files are available are found automatically. Note that if a TTF font file is not found, then the font lookup mechanism reverts to the pre-11g implementation. With the new font model, there is no change in the builder. The Font Model does a role only during the runtime and not at the design time.

9.1.2.1 Font lookup

On Windows, the font lookup mechanism is simple due to the availability of printer drivers, which have the capability of uploading fonts from the system as needed. Any output from Oracle Reports running on Windows will contain fonts from either one of the following:

  • The system

  • The printer

For this reason, Oracle Reports considers both the printer and the system fonts when looking for the available fonts.

On UNIX, the fonts available for generating output are either one of the following:

9.1.3 Fonts in the User Interface

Text in the user interface of Oracle Reports Builder, like the window title, menu items, message boxes, and data model object names, use fonts taken from the system resource files for the current language. These system resource files are supplied with Oracle Reports installation. In Oracle Reports, you can map these fonts in the [rwbuilder] section of uifont.ali. If found, the mapped font is used instead of the original font. Otherwise, Oracle Reports uses the original font.

On UNIX, these fonts are defined in Tk2Motif.rgb under Tk2Motif*fontList. If the font is not defined, then the default font (fixed for default character set) is used instead. The default system font need not be the one defined in Tk2Motif.rgb. If the defined font does not match the character set on which the application is running, some other available font will be used following the font lookup algorithm discussed in the previous section.

In order to maintain the look and feel of the Windows, Oracle Reports makes extensive use of the system font, which is obtained from the Windows system parameters. For non-Unicode environments, the font is obtained from the icon objects. You can change it by modifying the fonts through Display Property > Appearance. Select Icon from the drop down box and select the desired font name and size. For Japanese Unicode systems, the font is MS Gothic. For Korean, it's MS Sans Serif. For simplified, traditional, and Hong Kong it's Arial. For other languages, it's Lucida Sans Unicode.

You can also change the Windows tool tip font by changing the icon font as described above. This change is not completely reflected across Oracle Reports Builder because some tool tip fonts are taken from the resource file.

In Oracle Reports, fonts for the Web Source view are selected by making an entry in the alias file under the [rwbuilder] section. The entry required for this change should only be aliased to the character set and not to any specific font. For example, if you want to use Arial Unicode MS when NLS_LANG is set to UTF8, then you should create an entry like this one:

.....UTF8 = "Arial Unicode MS".....

Refer to Section 9.4, "Font Aliasing" for more information.

The supported styles are: Plain, Italic, Oblique, Underline, Outline, Shadow, Inverted, Overstrike, and Blink.

The supported weights are: Ultralight, Extralight, Light, Demilight, Medium, Demibold, Bold, Extrabold, and Ultrabold.

You should not use fonts with a weight of Regular because this weight is not supported and may cause Oracle Reports Builder to display undesirable results.