Provided by: ttf2ufm_3.4.4~r2+gbp-2_amd64 bug

NAME

       ttf2ufm_convert - convenience font conversion script

SYNOPSIS

       ttf2ufm_convert [config-file]

DESCRIPTION

       `Convert' is the master conversion script provided with ttf2ufm.  When installed into a public directory
       it's named `ttf2ufm_convert' to avoid name collisions with the other programs.

       If the configuration file is not specified as an argument then the file `"convert.cfg"' in the current
       directory is used. This file contains a set of configuration variables. The distribution contains a
       sample file file `"convert.cfg.sample"'. Please copy it to `"convert.cfg"', look inside it and change the
       configuration variables. The more stable configuration variables, such as the path names of the scripts
       and encoding files are located in `"convert"' itself, they are automatically updated when installing
       ttf2ufm.

       Put all the TTF fonts you want to convert into some directory (this may be just the directory that
       already contains all the Windows fonts on a mounted FAT filesystem). If you have fonts in different
       source encoding then put the fonts in each of the encodings into a separate directory. Up to 10 source
       directories are supported. If you (in a rather unlikely case) have more source directories then you can
       make two separate runs of the converter, converting up to 10 directories at a time.

       The variables in the configuration file are:

       • "SRCDIRS" - the list of directories (with absolute paths) with TTF fonts. Each line contains at least 3
         fields:  the  name  of  the directory, the language of the fonts in it (if you have fonts for different
         languages you have to put them into the separate directories) and the encoding of the fonts. Again,  if
         you  have  some of the TTF typefaces in one encoding, and some in another (say, CP-1251 and KOI-8), you
         have to put them into the separate source directories. Some lines may contain 4 fields. Then the fourth
         field is the name of the external map to convert the Unicode fonts into the  desirable  encoding.  This
         map is used instead of the built-in map for the specified language.

         *8* An interesting thing is that some languages have more than one widely used character encodings. For
         example,  the  widely used encodings for Russian are IBM CP-866 (MS-DOS and Unix), KOI-8 (Unix and VAX,
         also the standard Internet encoding), IBM CP-1251 (MS Windows).  That's why I have provided  the  means
         to  generate  the  converted fonts in more than one encoding. See the file encodings/README for details
         about the encoding tables. Actually, if you plan to use these fonts with Netscape Navigator better  use
         the aliases cp-866 instead of ibm-866 and windows-1251 instead of ibm-1251 because that's what Netscape
         wants.

       • "DSTDIR"  -  directory for the resulting Type1 fonts. Be careful!  This directory gets completely wiped
         out before conversion, so don't use any already existing directory for this purpose.

       • "DSTENC{language}" - the list of encodings in which the destination fonts will be  generated  for  each
         language. Each font of that language will be generated in each of the specified encodings. If you don't
         want  any  translation,  just specify both "SRCENC" and "DSTENC" as iso8859-1 (or if you want any other
         encoding specified in the fonts.dir, copy the description of 8859-1 with new name and use this new name
         for "SRCENC" and "DSTENC").

       • "FOUNDRY" - the foundry name to be used in the fonts.dir file. I have set it to `fromttf' to avoid name
         conflicts with any existing font for sure. But this foundry name is not registered in X11 standards and
         if you want to get the full standard compliance or have a font server that enforces such a  compliance,
         use `misc'.

       The  next  few  parameters control the general behavior of the converter.  They default values are set to
       something reasonable.

       • "CORRECTWIDTH" - if the value is set to "YES" then use the converter option "-w", otherwise  don't  use
         it. See the description of this option in the README file.

       • "REMOVET1A"  -  if  the  value  is set to "YES" then after conversion remove the un-encoded ".t1a" font
         files and the intermediate ".xpfa" font metric files.

       • "INSTALLFONTMAP" - a Ghostscript parameter, if the value is set to "YES" then install the  entries  for
         the  new  fonts  right into the main "Fontmap" file. Otherwise just leave the file "Fontmap.ttf" in the
         Ghostscript configuration directory.

       • "HINTSUBST" - if the value is set to "YES" use the option "-H", otherwise don't  use  it.  This  option
         enables  the  hint substitution technique. If you have not installed the X11 patch described above, use
         this option with great caution. See further description of this option in the README file.

       • "ENFORCEISO" - if the value is set to "YES" then disguise the resulting fonts as the fonts in ISOLatin1
         encoding. Historically this was neccessary due to the way the installer scripts created  the  X11  font
         configuration files. It is not neccessary any more for this purpose. But if you plan to use these fonts
         with some other application that expects ISOLatin1 encoding then better enable this option.

       • "ALLGLYPHS"  -  if the value is set to "YES" then include all the glyphs from the source fonts into the
         resulting fonts, even if these glyphs are inaccessible. If it's set  to  "NO"  then  include  only  the
         glyphs  which  have codes assigned to them. The glyphs without codes can not be used directly. But some
         clever programs, such as the Type 1 library from XFree86 3.9 and higher can change the encoding on  the
         fly  and  use  another set of glyphs. If you have not installed the X11 patch described above, use this
         option with great caution. See further description of the option option "-a" in the README file.

       • "GENUID" - if the value is set to "YES" then  use  the  option  "-uA"  of  the  converter  to  generate
         UniqueIDs for the converted fonts. The standard X11 Type 1 library does not use this ID, so it may only
         be  neccessary  for the other applications.  The script is clever enough to generate different UniqueID
         for the same font converted to multiple encodings. Also  after  conversion  it  checks  all  the  fonts
         generacted  during  the session for duplicated UniqueID and shows those. Still, this does not quarantee
         that these UniqueIDs won't overlap with some other fonts. The UniqueIDs are generated  as  hash  values
         from  the  font  names,  so  it's guaranteed that if the `"convert"' script runs multiple times it will
         generate the same UniqueIDs during each run. See further description of this option in the README file.

       • "GENUID" - if the value is set to "YES" then create the ".pfb" files, otherwise the ".pfa"  files.  The
         ".pfb"  files  are  more  compact  but  contain  binary  data, so you may experience some troubles when
         transferring them through the network.

       The following parameters are used to locate the other scripts and configuration  files.  By  default  the
       scripts  do  a bit of guessing for them: they search in the ttf2ufm installation directory if ttf2ufm was
       installed or otherwise suppose that you are running `"convert"' with `"scripts"' subdirectory  being  the
       current directory.

       • "ENCDIR" - directory containing the descriptions of encodings

       • "MAPDIR" - directory containing the external map files

       Besides  that  a few parameters are built into the `"convert"' script itself.  You probably won't need to
       change them:

       • "T1ASM", "TTF2UFM", "TRANS", "T1FDIR", "FORCEISO" - paths to the other script

       Also there are a few parameters controlling the installation of fonts for  Ghostscript.  Please  look  at
       their  description  in  the  Ghostscript  section  of documentation or in the ttf2ufm_x2gs(1) manual page
       before running `"convert"'. If these parameters are  set,  `"convert"'  will  call  the  `"x2gs"'  script
       automatically to install the newly converted fonts in Ghostscript.

       After  creating the configuration file run the `"convert"' script. Look at the result and the log file in
       "DSTDIR".

       Add the directory with newly converted fonts to the configuration of X server or font server. For most of
       the systems this step is very straightforward. For HP-UX it's rather tricky and poorly documented, so the
       file FONTS.hpux gives a short description.

       If you don't have the privileges of the root user, you still can configure your private font server. Just
       use some non-standard port number (see FONTS.hpux for an example, exept that you won't need all  the  HP-
       related stuff on any other system).

FILES

       • TTF2UFM_SHAREDIR/scripts/convert.cfg.sample

       • TTF2UFM_SHAREDIR/scripts/*

       • TTF2UFM_SHAREDIR/README

       • TTF2UFM_SHAREDIR/FONTS

       • TTF2UFM_SHAREDIR/*

       • TTF2UFM_BINDIR/ttf2ufm

SEE ALSO

ttf2ufm(1)

       •   ttf2ufm_x2gs(1)

       •   t1asm(1)

BUGS

   Known problems
       •   One  catch  is  that  the X11 Type 1 font library has a rather low limit on the font size. Because of
           this the fonts with  more complicated outlines and the enabled hint substitution  may  not  fit  into
           this  limit.  The  same  applies to the fonts with very complicated outlines or with very many glyphs
           (especially the fonts with over 256 glyphs). So you will need to excercise caution with these options
           if you plan using these fonts with X11. Some vendors such as HP provide  the  Type  1  implementation
           licensed from Adobe which should have no such problem.

           But  there  is  a  solution even for the generic X11. A patch located in the subdirectory `"app/X11"'
           fixes  this  problem  as  well  as  some  other  minor  problems.  Its  description  is  provided  in
           app/X11/README.

           To  fix  the  X11 font library, you have to get the X11 sources. I can recommend the ftp sites of the
           XFree86 project ftp://ftp.xfree86.org or of the Open Group ftp://ftp.x.org. This patch  was  made  on
           the  sources  of XFree86 so you may have better success with applying it to the XFree86 distribution.
           After you have got the sources, make sure that  you  can  compile  them.  Then  apply  the  patch  as
           described.   Make  sure  that  it was applied properly. Compile the sources again (actually, you need
           only the fonts library, the fonts server, and possibly the X server). It would be prudent now to save
           your old font library, font server and, possibly, X server. Then install the  new  recently  compiled
           versions  of these files. Of course, if you know someone who already has compiled these files for the
           same OS as yours, you can just copy the binary fles from him.

           Alas, building the X11 system from the source code is not the easiest thing in the world and  if  you
           have  no experience it can be quite difficult. In this case just avoid the aforementioned features or
           check each converted font to make sure that it works properly.

       •   The Type1 font library from the standard X11 distribution does not work on HP-UX  (at  least,  up  to
           10.01).  The font server supplied with HP-UX up to 10.01 is also broken. Starting from HP-UX 10.20 (I
           don't know about 10.10) they supply a proprietary font library and the converted fonts work fine with
           it, provided that they are configured properly (see the file FONTS.hpux).

       •   The "fonts.scale" files created by the older versions of the "ttf2ufm" installation  program  (up  to
           release 3.1) have conflicted with the language definitions of the "Xfsft" font server and parts of it
           included  into  XFree86. To overcome this incompatibility the never versions creats the "fonts.scale"
           file describing all the fonts as belonging to the "adobe-fontspecific" encoding and the "fonts.alias"
           file with the proper names. The drawback of this solution is that "xlsfonts" gives the list of  twice
           more  fonts.  But as a side effect the option "ENFORCEISO" in `"convert.cfg"' is not required for X11
           any more.

       •   The conversion script has no support for Eastern multi-plane fonts.  Contribution of such  a  support
           would be welcome.

version 3.4.4                                   December 31, 2003                             TTF2UFM_CONVERT(1)