Table 11-6 shows the cross platform deployment scenario where the destination format is multibyte PDF created using PDF font subsetting. For more information on PDF font features, refer to Chapter 10, "Using PDF in Oracle Reports".
|Development Platform||Deployment Platform||Destination Format|
This section discusses designing and deploying a report for multibyte PDF output in the following subsections:
To prepare your report before you deploy it on a UNIX platform:
Create a new report with a TrueType multibyte font. For example, Simplified Arabic font with the
AR8ISO8859P6 character set.
Use only those fonts in your report that:
Are available on UNIX. All font files that are available on Windows (TTF files) may not be available on UNIX (AFM or TFM files). If you have the correct AFM or TFM font file available on the UNIX platform, you can continue to use it (AFM for PostScript and TFM for PCL).
Note:AFM support is extended only to single-byte PostScript file generation, with the exception of Japanese encoding.
The encoding schemes supported for the AFM files are:
Can scale well. For example, MS Sans Serif does not scale well to a different size, whereas Tahoma does. The reason is that the MS Sans Serif font is a raster font that does not scale well to any size and usually has rounding issues. On the other hand, Tahoma font is a TrueType font that is very similar in visual appearance to the MS Sans Serif font. Additionally, Tahoma is a vector font that can be scaled to any size and rotated to any angle.
For fonts with AFM files not readily available on UNIX, or if you encounter any font issues in the report output such as text misalignment, you can convert and generate an AFM file from the Windows TTF file using freely available third party utilities, such as
ttf2pt1. Do not attempt to convert to a TFM file, as this may not produce reliable results.
To deploy your report on a UNIX platform:
Locate the TTF files corresponding to the fonts used in your report. Convert these TTF files to AFM to ensure that you will have the AFM files for the fonts used in your report.
Use a True Type to Type 1 font converter utility to convert the TTF files to AFM files. For example,
Post-conversion, remove the
.afm extension in the AFM file name. For example:
Copy the Windows TTF file used in your report to the fonts directory on your UNIX machine. For example,
Add the path to the TTF file in the
REPORTS_PATH environment variable.
Copy the AFM file to the
screenprinter.ppd file with any text editor.
Note:If you have defined a default printer by including an entry in
ORACLE_INSTANCE/config/FRComponent/frcommon/guicommon/tk/admin/uiprint.txt, then you will have to make the appropriate entries in the printer's PPD file for a PostScript printer or in the HPD file for a PCL printer.
Beginning with Oracle Reports 10g Release 1 (9.0.4), a default printer surface that mimics the screen (
screenprinter.ppd) is used for formatting if you have not set up a default printer. You will also need to make the necessary font and resolution entries in the
screenprinter.ppd file, if you have not set up a default printer.
The PPD and HPD files are located at:
Oracle Reports searches for HPD or PPD files initially in the Oracle Instance location and then in the Oracle Home location.
Refer to Section 9.8.1, "ScreenPrinter" for more information on the
Ensure that the PPD/HPD file used contains an entry for each AFM or TFM file that you use in your report. PPD/HPD files are configuration files containing printer driver settings and the list of all the fonts supported by the printer.
Navigate to the to the
Font Information section in the PPD file and add the necessary entries for the font files in the following format:
*Font Arial: Standard "(Version 2.76)" Standard ROM *Font CourierNew: Standard "(Version 2.76)" Standard ROM
Ensure that the AFM file name exactly matches the font name specified in the PPD file as Oracle Reports searches for this file based on the font name in the PPD file.
Ensure that the
uiprint.txt has the entry for the appropriate PPD file:
hpljet42.ppd file with any text editor.
Note:Copy the PPD file from
ORACLE_HOME/guicommon/tk/admin/PPDto the following location:
Ensure that the PPD/HPD file used contains an entry for each AFM or TFM file that you use in your report.
Navigate to the
Font Information section and add the necessary entries for the new AFM files in the following order:
*Font SimplifiedArabic: Standard "(001.01)" Standard ROM
Ensure that the fonts used in your report are not aliased.
uifont.ali and comment the entries, if any, where Simplified Arabic font is aliased to some other font. For example:
uifont.alifile is located in the following directory on Windows and UNIX:
Use font aliasing only if you are unable to generate the AFM file for a particular font. You can then alias the missing font to the closest match. The fonts must be made available on the machine displaying the report output and not necessarily on the machine generating the report output.
[PDF:Subset] section, add the appropriate entries to subset the fonts.
[ PDF:Subset ] "SimplifiedArabic" = "simpo.ttf"
For PDF file portability, you can use either font subsetting or font embedding. File portability ensures that the PDF report does not depend on the machine where it is viewed to have the fonts installed.
Run the report to PDF and view it.
The PDF should contain the font that you have used in your report. For example, the David font.
To verify the fonts used, do the following:
In Acrobat Reader 6.0, choose File >Document Properties > Fonts.
In Acrobat Reader 3.0 and above, choose File >Document Info > Fonts.
The Original Font column should display the David font.
If you encounter deployment issues, review the following troubleshooting information:
If you do not get the correct fonts in the PDF output, set the environment variable
DEBUG_SLFIND to a log file name, for example,
debug.txt, and run the report. The font files that are looked up while parsing the PPD file as well as the fonts used will be written to the log file
debug.txt. Specifically, check for the following:
The PPD file that you modified should be picked up. If it is not picked up it is a configuration issue. Refer to Chapter 8, "Managing Fonts in Oracle Reports".
The AFM files that you have copied to AFM directory should be picked up next.
See Chapter 10, "Using PDF in Oracle Reports" for more information on
This section contains frequently asked questions (FAQs) pertaining to deploying a report to multibyte PDF output.
What are the cross-platform issues for the PDF output when using CID multibyte fonts?
To enable multibyte language support in PDF reports with CID multibyte fonts, you need to make sure that the Asian font package is installed for your Acrobat Reader on the machine where you are going to view these PDF files. The Asian font package is available at the Adobe Web site.
Why is the formatting of my report not correct when using multibyte fonts on UNIX, or why do I see misaligned text in the report?
If you have used
ttf2pt1 to create the AFM file,
ttf2pt1 has a limitation in that it creates AFM files with metrics information for only the first 256 characters of the font. The first 256 characters are for Latin-1 characters. So, if your font contains more than 256 characters, metrics information will not be available for the additional characters. Oracle Reports uses default metrics information contained in the AFM file when it encounters characters in the report that are not in the AFM file. These default metrics may not match the exact metrics of the characters used in the report. For this reason, formatting will not be correct. To avoid this situation when you are using characters beyond the first 256 characters of the font, you can use fixed width fonts where all the characters have the same width. For example, Miriam Fixed is a fixed width font for Hebrew and can be used to avoid formatting issues.