Bengali Writer Font Utilities
PostScript Type 1 Fonts

What are PostScript Type 1 fonts?

PostScript type 1 fonts are printer fonts that ghostscript can read and show on-line. If you install the fonts in the proper place and write a PostScript file that calls these fonts, the PostScript previewers (like gs, ghostview, gv etc) show characters in these fonts. PostScript Type 1 fonts are outline fonts and hence scalable.

What fonts are provided?

This package provides two PostScript Type 1 fonts, namely bnr.gsf and bnsl.gsf. The former defines the unslanted Bengali alphabet, whereas the later its slanted version.

How to install these fonts?

Find out the ghostscript home (Let us call this $GSHOME). If you do not know this, try the manpage for gs to have a guess about $GSHOME. If that too does not work, ask your system administrator. In my Linux PC, $GSHOME is /usr/lib/ghostscript.

Next find out the directory where other fonts are installed (files with extensions gsf, pfa, afm etc). (In my pc, this directory is $GSHOME/fonts). Copy bnr.gsf and bnsl.gsf to this directory.

Now try to locate the file that defines the logical names and aliases for the fonts ($GSHOME/Fontmap, for example). Edit this file and add the following two lines anywhere in it.

   /Bengali                        (bnr.gsf)       ;
   /Bengali-slanted                (bnsl.gsf)      ;

This completes the installation.

There is an alternative strategy for installing new fonts that requires recompilation of ghostscript. If your system provides the `font2c' command, you may use this for converting the gsf files to C files. Now include these files in the appropriate place in the Makefile and rebuild ghostscript. In that case, it will not be necessary to edit the fontmap file, though there is no harm in doing so.

These are needed for viewing PostScript files on the screen. Even if you modify your Fontmap file and can see Bengali text properly, you cannot get the same output when you try to print the file. The printer does not know your computer's Fontmap file. In order to keep the printer happy, you must physically include bnr.gsf and/or bnsl.gsf in your PostScript file. A good place to include the font files is the preamble. Another way to take a proper printout is discussed below.

Very sketchy?? Yes! I have been deliberately so. The point is that you should have fair amount of familiarity with PostScript in order to have these fonts making sense to you. Moreover, the ghostscript package normally comes with extensive documentation. Check if that is installed in your machine. If yes, read them carefully to see what one can do with PostScript Type 1 fonts.

How to check correct installation?

The file showfonts.ps is provided for this purpose. Try to view this file using ghostscript or ask a PostScript wizard to write a small PostScript file for you that uses these fonts with the logical names /Bengali and /Bengali-slanted. Then view it.

How to print files that use these fonts?

We have discussed one method already. That is, physically insert bnr.gsf and/or bnsl.gsf in your PostScript file and call these as /Bengali and /Bengali-slanted respectively. For example,
      /Bengali findfont 15 scalefont setfont
There is an alternative that does not necessitate physical inclusion of the gsf files. It's sufficient to have your Fontmap file updated as stated above. We will now describe how ghostscript help you generate a printer file that can be directly fed to the printer for Bengali output. Well, the process is not simple. If you want to print (say showfonts.ps) directly using the print command (for example, lpr), your printer will behave awkwardly. If it prints any page at all, you will see a fixed predefined English font replacing the desired Bengali characters. What then?

You should run `gs' to convert the input ps file to a printer file. Check your local man page how your installation does this conversion. Here is how I do it in my machine.

   gs -sDEVICE=<dev> -sOutputFile=outfile.<dev> input.ps

For example, if you have a laserjet printer, use the command

   gs -sDEVICE=laserjet -sOutputFile=showfonts.lj showfont.ps

This creates a laserjet file showfonts.lj that is ready for getting printed exactly the way you view it.

To see what (other) devices are supported by gs, check your local man page for gs.

Any other usage?

PostScript files are printer files. What other things do you want to do apart from printing them? Does any window application other than ghostscript read PostScript fonts? For some other purpose? I don't know.

Where to get these fonts?

You may get these fonts from http://geocities.datacellar.net/SiliconValley/Lab/6024/bwfu1_1-psfonts.tgz.

Address for correspondence

Abhijit Das
Department of Computer Science and Automation
Indian Institute of Science
Bangalore 560 012
INDIA
E-mail: abhij@csa.iisc.ernet.in
URL: http://geocities.datacellar.net/SiliconValley/Lab/6024/


This page hosted by    Get your own Free Home Page
1