APAR Identifier ...... II09240 Last Changed ........ 01/04/16 AFP TOOLBOX 576559400 AFPTOOLBOX INFO APAR FOR NEW FUNCTION, COMMON PROBLEMS AND ADDITIONAL INFORMATION Symptom ...... IN INCORROUT Status ........... INTRAN Severity ................... 4 Date Closed ......... Component .......... INFOPCLIB Duplicate of ........ Reported Release ......... 001 Fixed Release ............ Component Name PC LIB INFO ITE Special Notice Current Target Date .. Flags SCP ................... Platform ............ Status Detail: Not Available PE PTF List: PTF List: Parent APAR: Child APAR list: ERROR DESCRIPTION: ** Release information R110 is for AIX 3.2. R111 is for OS/2. R112 is for AIX 4.1 and may have 2 ptfs to install. Section A - NEW FUNCTION AFPXlateAndMeasureString ix55655 Section B - Fonts are printing with zero width spaces. Section C - To add or update fonts to the AFP Toolbox. Section D - Fontmeister and INI file update problems. Section E - Information on OS/2 CSet2++ v2.1 fixes. Section F - Documentation errors in the TOOLBOX USER'S GUIDE Section G - Support for Outline fonts, Color and AIX 4.1.X. Section H - Problems with Outline Fonts for AIX 4.1.X **************************************************************** Section A Apar ix55655 Ptf u441654 adds a new function to AFPTOOLBOX. AFPXlateAndMeasureString translates the string of characters from the inputcodepage to the codepage requested when the requested font was defined, then measure the translated string using the metrics from the specified font. AFPXlateAndMeasureString(FontID in_fontID, char* in_inputString, long* outp_stringWidth, char* in_inputCodePage, ushort in_vinc, ushort in_icadj, int* outp_varspaces, int* outp_icspaces); **************************************************************** Section B Ensure that you have proper read authority to the AFM files on your system, and that you have linked to the libraries containing the AFM files. For AS/400 this means that the font file libraries must be in your current library list. For, AIX make sure that the 3 security attributes of the font files are set up to allow the user that writes the program to access them. **************************************************************** Section C To update the fonts available to AFP Toolbox you will need access to a utility called FLIPUPDT. You can get this tool from our Printing Systems Web page at http://www.can.ibm.com/ibmprinters. Goto Freeware then products: toolbox. Or you can get it from ftp.software.ibm.com in directory /printers/products/toolbox. Make sure ptf u442528 has been applied. The fonts do not require any specific codepage, you may use whichever codepage you desire. But it must be available to AFP Toolbox in the /usr/lpp/afpfonts/codepage directory as are all the others. Fonts should be transmitted in binary and should use the same naming convention as others in the font directories. You will have to place an .AFM file with corresponding font metrics in the /usr/lpp/psfonts/latin directory and specify the base name of this AFM file in your flipupdt input file. * FLIPUPDT instructions * First, issue flipupdt -?. This will give a short explanation and show the syntax of the command itself. You will need to make a short input file to describe the changes you want to make to the index file. Remember to keep a copy of the original index file, /usr.lpp/fontmstr/afrcore.fin so it can be used to correct/change the index in the future. To use your modified index file, you must rename it to /usr/lpp/fontmstr/afrcore.fin. Here is a copy of the flipupdt sample input control file. it is 2 lines long: 120 5 5 0x0000 ATM CSET Typeface/Family Name/Font Name/Full Name 150 6 7 0x8000 ABC DEF Times New Roman/Times Family/Times Font/ Times full Name The first column is the deci-point size. Column 2 is a numeric representation of Weight. The numeric values are: ULTRA_LIGHT_WT 1 EXTRA_LIGHT_WT 2 LIGHT_WT 3 SEMI_LIGHT_WT 4 MEDIUM_WT 5 SEMI_BOLD_WT 6 BOLD_WT 7 EXTRA_BOLD_WT 8 ULTRA_BOLD_WT 9 Column 3 is a numeric representation of Width. The values are: ULTRA_CONDENSED_WD 1 EXTRA_CONDENSED_WD 2 CONDENSED_WD 3 SEMI_CONDENSED_WD 4 MEDIUM_WD 5 SEMI_EXPANDED_WD 6 EXPANDED_WD 7 EXTRA_EXPANDED_WD 8 ULTRA_EXPANDED_WD 9 Column 4 is a numeric encoding of the style flags. The values are: NORMAL_FS = 0X0000 OVERSTRUCK_FS = 0X0800 OUTLINE_FS = 0X1000 UNDERSCORE_FS = 0X4000 ITALIC_FS = 0X8000 Column 5 is the AFM file name. Column 6 is the character set name. Column 7 is the Typeface name. Column 8 is the family name, 9 the font name, and 10 is the Fullname. **************************************************************** Section D The FontMeister installation allows installation to drives other than C: but does not update the INI files to reflect this. Sample program runs without error but produce incorrect FONTMSTRAFRFMST2.INI file. We are referring to the location of the TYPE 1 and AFP Font files. If this is the case be sure to update these two directories on the installation panel. There are six directories that can be changed. Only three show up in the scroll box at the bottom of the Start Install panel. The others are easy to miss. Use the scroll bar at the right side of the directory window to scroll down to see them. Where were the sample programs installed? If it was on drive C: then that indicates the other 3 install directories were missed. In this case, the solution is to uninstall and reinstall the product to the proper directories. No INI file editor is necessary. We will look into this problem further and are developing a modification to the install program that updates all 6 directory entries to the same drive letter if the first one is changed. **************************************************************** Section E The documentation on OS/2 AFP Toolbox correctly states that fixes for the CSet2++ V2.1 compiler are CT00003, CT00009, and CT00011. This information does not properly identify the fixes required. There are two fixes labeled CT00009. The doc should state CT00003 (CTU0003 Compiler Utilities), CT00009 (CTM0009 Class Libraries) and CT00011 (CTC0011 Compiler) ---------------------------------------------------------------- When CTL0009 is installed rather than CTM0009, unresolved external references occur in LINK386. The CTM0009.ZIP is missing from the CSet2++ V2.1 directory As of 5/3/96 CTM0010 is available on ftp.software.ibm.com. Since this fix supersedes CTM0009 it should work fine. Also all fixes are available on the IBM Developer's Connection CDROM. For more information on the Developer's Connection call 1/800/6DEVCON. --------------------------------------------------------------- When a compile is attempted without the correct fixes applied the compiler creates temporary include libraries. The compiler will still use these libraries. The files and libraries in question are the template resolution files generated in the /TEMPINC subdirectory of your project. The compiler never deletes information in these files, it only adds to it so the incorrect symbols generated as a result of the back level Class Libraries (corrected by CTM0009) remain and cause the unresolved external references. In this case, it is best to delete the /TEMPINC subdirectory and all .OBJ modules and recompile your program. **************************************************************** Section F Documentation errors in AFP Toolbox for Multiple Operating Systems User's Guide S544-5368-00. ------------------------------------------------------------ Chapter 4. The syntax for AFPBgnPage incorrectly states the 3rd parameter as HANDLE outp_pageHandle. It should be HANDLE* outp_pageHandle. ------------------------------------------------------------ Chapter 4. The syntax for AFPInvokeMediumMap incorrectly states the 1st as HANDLE in_pageHandle. It should be HANDLE in_documentHandle. ------------------------------------------------------------ Chapter 4. The syntax for AFPEndDocument incorrectly states the 1st parameter as HANDLE inp_docHandle. It should be HANDLE* inp_docHandle. ------------------------------------------------------------ Chapter 4. The syntax for AFPEndSession incorrectly states the 1st parameter as HANDLE in_sessHandle. It should be HANDLE* inp_sessHandle. **************************************************************** Section G New function support for Outlines fonts, Color and AIX 4.1.X. See apar IX69444. Please note the r110 ptf u450780 is for AIX 3.2. The R112 PTF is for AIX 4.1.X. ** NOTE ** Do not install ptf u450782 on an AIX 4.1 SYSTEM. It is in error for apar IX74310. Install both IX74310 PTFS U454054 AND U454055 on an AIX 4.1 SYSTEM. ************************************************************** Section H 2/98 Problems with Outline Fonts for AIX 4.1.X. The wrong version of the FONT INDEX FILE was shipped when the CD for this release was built. Unfortunately we are not set up to PTF that file because it should only have to be shipped one time. So we have put the file on the ftp site: ftp.software.ibm.com/printers/products/toolbox/aix AIX 4.1 users will need to get the new afrcore.fin (and put it into their own directory named /usr/lpp/fontmstr ) in order to use the core set of outline fonts. The name of the file is afrcore.fin make sure to use a BINARY download of this file. *********************************************************** LOCAL FIX: