CompuServe Messages

Pixelations(PixelScript)

    22-Dec-91 21:04:11
Fm: Mike Todd 70117,634
To: Alex Baker 75606,563
I think you may be a little muddled about the difference between Type-3 and Type-1 fonts. Type-3 fonts are not a subset of Type-1, and if something is working with Type-1 it doesn't mean it will will work with Type-3 … far from it. Type-3 fonts are little more than standard PostScript programs … there is a BuildChar subroutine within Type-3 fonts which PostScript calls to "draw" the selected character. This routine can do what it likes, within PostScript rules, to render the character. In general, it will call a separate subroutine for each individual character and these subroutines may also use any of the standard PostScript operators (within reason!) and so can include shading and other graphics features. In other words, Type-3 fonts are a simple, user-writable, suite of subroutines. As such, there is no hinting or other fancy features within Type-3 fonts (unless the programmer happens to feel inclined to write them in!). Type-1 fonts are very different. For a start, the BuildChar subroutine doesn't exist within the font program. Instead, it is part of the interpreter and will call the appropriate "subroutine" within the Type-1 definition. The definitions themselves must conform to fairly strict rules, use a very limited command set and are semi-compiled for speed. They are then encrypted (twice) to avoid prying eyes and have a couple of extra, special commands including those aimed at providing hinting information. Type-1 fonts are therefore, in principle, much simpler than Type-3 fonts and programs such as PageStream are able to implement Type-1 support because of this. Rather than say Type-3 is a subset of Type-1, Type-3 fonts are no different to conventional PostScript programs, whilst Type-1 fonts are a very restrictive subset of the PostScript language. Mike (Whapping from the UK)