ADDFNTTBLE (Add Font Table Entry)
Purpose
The Add Font Table Entry (ADDFNTTBLE) command adds an entry in the specified font table. This command adds an entry in the user font mapping tables used by PSF/400 that controls:
- Host resident to printer resident font character set mapping
- Printer resident to host resident font character set mapping
- Host resident to printer resident code page mapping
- Printer resident to host resident code page mapping
- Printer resident to printer resident font substitution mapping
To override the mapping of an existing entry in the system font and code page tables, you need to add a corresponding entry in the user tables.
In performing the printer to host and host to printer font mapping (first four tables above), the user tables are searched first for a match. If no match is found, then the System font or code page tables are searched.
For the printer resident to printer resident font substitution table, the following processing is done by the system:
- If the printer resident font specified in the print job is supported by the printer, then it is used. The printer resident to print resident font substitution table is not searched.
- If the printer resident font specified in the print job is not supported by the printer, then the printer-resident to printer-resident font substitution table is searched.
- If a matching entry is found in the printer resident font substitution table and the entry is supported by the printer, then the specified substitute font in the printer resident font substitution table is used.
- If a matching entry is not found in the printer resident font substitution table or if the specified substitute font is not supported by the printer, then the system will use its internal font substitution tables to perform the font substitution.
Refer to Appendix D in the Printer Device Programming book for more information on font mapping tables.
Restriction: The PSF/400 feature is required to use this command.
Required Parameters
- FNTTBL
- Specifies the name of the font table to be changed.
*PHFCS: The printer resident to host resident font character set table is to be changed (add an entry).
This table would be used when your application (like Office Vision/400, DDS, etc) references printer resident fonts and the printer (3827, 3825, 3820, 3900 Model 1, etc) does not support resident fonts. PSF/400 must map the references from printer resident fonts to host resident fonts and down load them.
*PHCP: The printer resident to host resident code page mapping table is to be changed (add an entry).
This table is like the QPHFCS table, in that it is used when the application references printer resident code pages and the printer being used does not support printer resident code pages. The printer resident code page must be mapped to a host resident code page and down loaded to the printer by PSF/400.
*HPFCS: The host resident to printer resident font character set table is to be changed (add an entry).
This table is used when your application references host resident fonts (font character sets and code pages) and the printer (4224, 4234, 4230, 64XX,etc) does not support down loading of host resident fonts. PSF/400 must map the references from host resident fonts to printer resident fonts.
*HPCP: The host resident to printer resident code page mapping table is to be changed (add an entry).
This table is like the QHPFCS table, in that it is used when the application references host resident code pages and the printer being used does not support host resident code pages. The host resident code page must be mapped to a printer resident code page and down loaded to the printer by PSF/400.
The name of the font table must be specified when a printer resident to printer resident font substitution table is changed. This printer resident font substitution table should be used when all three of the following conditions exit.
- You are printing to a PSF/400 attached printer
- Your application specifies a printer resident font which is not supported by the printer you are using.
- You want to specify a different substitute printer resident font than the one selected by the system.
To use a printer resident to printer resident font substitution table with a particular PSF/400 printer, you need to specify the name of the font table on the FNTTBL parameter of the Create PSF Configuration (CRTPSFCFG) or Change PSF Configuration (CHGPSFCFG) command.
The name of the printer resident to printer resident font substitution table can be qualified by one of the following library values:
*CURLIB: The current library is used to store the font table. If no library is specified as the current library for the job, the QGPL library is used.
library-name: Specify the name of the library where you want to store the font table.
font-table-name: Specify the name of the printer resident to printer resident font substitution table to be created.
Optional Parameters
- PHFCS
- Specifies the printer resident to host resident font character set mapping. The printer resident font, along with it's specified attributes will be mapped to a host resident font character set.
Element 1: From Font Identifier
from-font-identifier: Specify the printer resident font identifier to be mapped to a host resident font.
Element 2: Font Width
*PTSIZE: The width for this font identifier will be calculated from the point size specified. When *PTSIZE is specified for width, the point size parameter can not be *NONE or *WIDTH. When mapping a typographic raster font (2304 - 3839, 4096 - 53247, 61440 - 65534), a point size value should be specified. The width value can be *PTSIZE or a value can be given.
*NONE: No width is specified for this font identifier. *NONE should be specified when mapping to an outline font.
font-width: Specify a width for the font identifier. When mapping a fixed pitch raster font (1 - 750, 3840 - 4095), a width should be specified. The point size value can be *WIDTH or a value can be given. See Appendix D in the Printer Device Programming book for more information on font widths for printer resident fonts.
Element 3: Font Attributes
*NONE: No special font attributes are specified on this font.
*BOLD: The printer resident font is a bold font.
*ITALIC: The printer resident font is an italic font.
*BOLDITC: The printer resident font is a bold italic font.
*DBLWIDE: The printer resident font is a double wide font.
*ITCDBLWIDE: The printer resident font is an italic double wide font.
Element 4: Graphic Character Set
Specifies the graphic character set for the font identifier. This parameter allows you to map a font identifier to more than one host font character set (based upon graphic character set). The value specified is mapped to a superset graphic character set. See the Printer Device Programming book for information on superset graphic character sets.
*SYSVAL: The graphic character set specified in the system value QCHRID is used. A change to this system value will only take effect for the font mapping tables when the print writer is started. If QCHRID is changed and a printer is currently active, end the print writer and start it again.
graphic-character-set: Specify the graphic character set for the font identifier. The graphic character set is the first part of the graphic character identifier which consists of the graphic character set and code page. For example, for the graphic character identifier 697 500, 697 is the graphic character set and 500 is the code page. In this example, specify 697 for the graphic character set.
Element 5: Point Size
*WIDTH: The font point size is computed from the font width value specified. When mapping a fixed pitch raster font (1 - 750, 3840 - 4095), it is recommended that a width value should be specified and the point size value should be *WIDTH.
*NONE: No point size is specified for this font identifier. *NONE should be specified when mapping to an outline font.
point-size: Specify a point size ranging from 0.1 through 999.9. When mapping a typographic raster font (2304 - 3839, 4096 - 53247, 61440 - 65534), a point size value should be specified.
Element 6: To Font Character Set
to-character-set: Specify the font character set.
Element 7: Font Type
*RASTER: The host resident font is a raster font.
*OUTLINE: The host resident font is a outline font.
- HPFCS
- Specifies the host resident to printer resident font character set mapping. The host resident font, along with it's specified attributes will be mapped to a printer resident font.
Element 1: From Host Font Character Set
from-font-character-set: Specify the font character set.
Element 2: Font Type
*RASTER: The host resident font is a raster font.
*OUTLINE: The host resident font is a outline font.
Element 3: To Font Identifier
*NONE: To disable the mapping of a host resident to printer resident font, specify *NONE for the font identifier. See the Printer Device Programming
to-font-identifier: Specify the printer resident font identifier to be mapped from a host resident font.
Element 4: Font Width
*PTSIZE: The width for this font identifier will be calculated from the point size specified. When *PTSIZE is specified for width, the point size parameter can not be *NONE or *WIDTH. When mapping a typographic raster font (2304 - 3839, 4096 - 53247, 61440 - 65534), a point size value should be specified. The width value can be *PTSIZE or a value can be given.
*NONE: No width is specified for this font identifier. *NONE should be specified when mapping to an outline font.
font-width: Specify a width for the font identifier. When mapping a fixed pitch raster font (1 - 750, 3840 - 4095), a width should be specified. The point size value can be *WIDTH or a value can be given. See Appendix D in the Printer Device Programming book for more information on font widths for printer resident fonts.
Element 5: Font Attributes
*NONE: No special font attributes are specified on this font.
*BOLD: The printer resident font is a bold font.
*ITALIC: The printer resident font is an italic font.
*BOLDITC: The printer resident font is a bold italic font.
*DBLWIDE: The printer resident font is a double wide font.
*ITCDBLWIDE: The printer resident font is an italic double wide font.
Element 6: Graphic Character Set
Specifies the graphic character set for the font identifier. This parameter allows you to map a font identifier to more than one host font character set (based upon graphic character set). The value specified is mapped to a superset graphic character set. See the Printer Device Programming book for information on superset graphic character sets.
*SYSVAL: The graphic character set specified in the system value QCHRID is used. A change to this system value will only take effect for the font mapping tables when the print writer is started. If QCHRID is changed and a printer is currently active, end the print writer and start it again.
graphic-character-set: Specify the graphic character set for the font identifier. The graphic character set is the first part of the graphic character identifier which consists of the graphic character set and code page. For example, for the graphic character identifier 697 500, 697 is the graphic character set and 500 is the code page. In this example, specify 697 for the graphic character set.
Element 7: Point Size
*WIDTH: The font point size is computed from the font width value specified. When mapping a fixed pitch raster font (1 - 750, 3840 - 4095), it is recommended that a width value should be specified and the point size value should be *WIDTH.
*NONE: No point size is specified for this font identifier. *NONE should be specified when mapping to an outline font.
point-size: Specify a point size ranging from 0.1 through 999.9. When mapping a typographic raster font (2304 - 3839, 4096 - 53247, 61440 - 65534), a point size value should be specified.
- PPFCS
- Specifies the printer resident font substitution mapping. When a printer resident font is not supported by a printer, you can specify the substitute printer resident font to be used instead of the substitute printer resident font selected by the system.
Element 1: From Font Identifier
from-font-identifier: Specify the printer resident font identifier for which a new substition printer resident font is to be added. See Appendix D in the Printer Device Programming book for more information on printer resident fonts that are supported, and which ones are scalable (require point size) and which ones are not scalable (specify point size *NONE).
Element 2: From Point Size
*NONE: No font point size is specified. This should be specified for all non-scalable fonts.
*ALL: Specifies that all point sizes for a scalable font will be mapped. If the font is not scalable, then this will treated the same as *NONE.
from-point-size: Specify a point size ranging from 0.1 through 999.9.
Element 3: To Font Identifier
to-font-identifier: Specify the substitute printer resident font.
Element 4: To Point Size
*NONE: No font point size is specified. This should be specified for all non-scalable fonts.
*ALL: Specifies that all point sizes for a scalable font will be mapped. If the font is not scalable, then this will treated the same as *NONE.
to-point-size: Specify a point size ranging from 0.1 through 999.9.
- PHCP
- Specifies the printer resident to host resident code page mapping. The printer resident code page will be mapped to a host resident code page
Element 1: From Graphic Character Set
*SYSVAL: The graphic character set specified in the system value QCHRID is used. A change to this system value will only take effect for the font mapping tables when the print writer is started. If QCHRID is changed and a printer is currently active, end the print writer and start it again.
from-graphic-character-set: Specify the graphic character set for the printer resident code page. The graphic character set is the first part of the graphic character identifier which consists of the graphic character set and code page. For example, for the graphic character identifier 697 500, 697 is the graphic character set and 500 is the code page. In this example, specify 697 for the graphic character set.
Element 2: From Code Page
from-code-page: Specify the printer resident code page value
Element 3: To Host Code Page
to-host-code-page: Specify the host resident code page value
- HPCP
- Maps a host resident code page to a printer resident code page. The host resident code page will be mapped to a printer resident code page
Element 1: From Host Code Page
from-code-page: Specify the name of the host resident code page
Element 2: To Graphic Character Set
*SYSVAL: The graphic character set specified in the system value QCHRID is used. A change to this system value will only take effect for the font mapping tables when the print writer is started. If QCHRID is changed and a printer is currently active, end the print writer and start it again.
to-graphic-character-set: Specify the graphic character set for the printer resident code page. The graphic character set is the first part of the graphic character identifier which consists of the graphic character set and code page. For example, for the graphic character identifier 697 500, 697 is the graphic character set and 500 is the code page. In this example, specify 697 for the graphic character set.
Element 3: To Code Page
to-code-page: Specify the printer resident code page value
Examples for ADDFNTTBLE
Example 1: Override Existing Font Entry in System Table
ADDFNTTBLE FNTTBL(*PHFCS) PHFCS((254 84 *NONE 2039 7.0) (C0D0GT18 *RASTER))This command adds an entry to the QPHFCS table (printer resident to host resident font character set table). To override the mapping of an existing entry in the System printer resident to host resident font character set table, you need to add a corresponding entry in the QPHFCS table. The following is the recommended steps to change the mapping of an entry in the system tables.
- Use the DSPFNTTBL command (DSPFNTTBL FNTTBL(*SYSPHFCS) OUTPUT(*PRINT)) to print the entries in the system font mapping table.
- Find the entry you want to change, and add an entry to the corresponding user font mapping table. In the above example, font identifier 254, width of 84, and point size 7.0 is to be added. to the user font table (QPHFCS). The width of 84 and point size of 7.0 is gotten from the system table. The entry has no special attributes (*NONE) and graphic character set 2039 is used.
In performing the font mapping, the attributes of the resident font specified in the print application are compared to those in the font table QPHFCS. If a match is found, then the specified host resident font (C0D0GT18) is down loaded to the printer. If no match is found, then the System printer resident to host resident font character set table is searched.
Note that the print application may specify the normal graphic character set (for example, 697 in 697 500 specified in QCHRID system value). The 697 is mapped to 2039 and will result in a match for this entry.
Example 2: Override Existing Font Symbol Entry in System Table
ADDFNTTBLE FNTTBL(*PHFCS) PHFCS((254 84 *NONE 1275 7.0) (C0SYMBOL *RASTER))This command adds an entry to the QPHFCS table (printer resident to host resident font character set table) for use when using the special symbols code page (code page 259). As specified in Example 1, to override an existing entry in the System printer resident to host resident font character set table, you need to add a corresponding entry in the QPHFCS table.
Use the DSPFNTTBL command to display the system font mapping table and find the entry you want to change. In this example, you want to add an entry that mappings a printer resident to host resident font character set for the special symbol code page (259). As in the previous example, font identifier 254, width of 84, and point size 7.0 is to be added to the user font table (QPHFCS). The width of 84 and point size of 7.0 is gotten from the system table. The entry has no special attributes (*NONE) and graphic character set 1275 is used.
We now have two entries in the printer resident to host resident font character set table. Both entries have the same font identifier, width, and point size. The first entry will be used when the standard code page and graphic set is used by the application (697 500 in this example). The second entry will be used when a print application specifies special symbols (340 259).
Example 3: Add Font Entry that does not exist in System Table
ADDFNTTBLE FNTTBL(*PHFCS) PHFCS((65500 *PTSIZE *NONE *SYSVAL 7.0) (C0NEWFNT *RASTER))This command adds an entry to the QPHFCS table (printer resident to host resident font character set table) that does not exist in the system printer resident to host resident font character set table.
When adding entries that doe not exist in the system printer resident to host resident font character set table, it is recommended that you specify a specific value for font width or point size, but not both. For fixed pitch fonts, specify a font width and *WIDTH for point size. For typographic fonts, specify a point size and *PTSIZE for font width. In this example, a typographic font of 65500 with point size 7.0 is added to the printer resident to host resident font character set table (QPHFCS).
Example 4: Override Existing Code Page Entry in System Table
ADDFNTTBLE FNTTBL(*PHCP) PHCP((*SYSVAL 38) (T1V00038))This command adds an entry to the QPHCP table (printer resident to host resident code page table). To override an existing entry in the System printer resident to host resident code page table, you need to add a corresponding entry in the QPHCP table. The following is the recommended steps to change the mapping of an entry in the system tables.
- Use the DSPFNTTBL command (For example, DSPFNTTBL FNTTBL(*SYSPHCP) OUTPUT(*PRINT)) to print the entries in the system code page table.
- Find the entry you want to change, and add an entry into the corresponding user code page table. In the above example, code page 38 is to be added to the user code page table (QPHCP).
In performing the font mapping, the attributes of the resident code page specified in the print application are compared to those in the code page table (QPHCP). If a match is found, then the specified host resident code page (T1V00038) is down loaded to the printer. If no match is found, then the System printer resident to host resident code page table is searched.
Error messages for ADDFNTTBLE