[comp.sys.amiga] Nice, large fonts, anyone?

ali@rocky.STANFORD.EDU (Ali Ozer) (02/12/88)

[---]
Using up some days of vacation over Christmas break and a few hours
here and there over the last month, and with help from Tom Rokicki,
the AmigaTeX god, I've put together a program that'll convert TeX
fonts in Tom's own PK format to AmigaDOS fonts. I've mailed the program,
"TeXF," along with 78 fonts in PK format (up to 161 pixels high) to Fred
Fish. The PK fonts (especially the larger ones) are considerably
more space efficient (we're talking 50K for AmigaDOS vs 10K for
PK) than AmigaDOS fonts, so it made much more sense to ship the PK fonts
with the converter rather than shipping AmigaDOS fonts... Also this program
can be used with anyone who has purchased AmigaTeX --- they'll have 
more than a thousand more fonts at their disposal! 

I'll be mailing the program (without the fonts) to the binaries group
moderators as well...

There are some problems with the conversion: For instance, TeX fonts
only define 128 characters, while AmigaDOS fonts define 256. TeX creates
characters like O-umlaut from scratch while AmigaDOS keeps it as one of the
higher numbered characters. Well, with the AmigaDOS fonts created from
PK fonts, you don't get those characters, unfortunately. (Don't scream
if your name has O-umlaut in it, mine does too... 8-) TeX is also 
very intelligent; it can paste characters together so nicely and it knows
so much about typesetting that it blows away any other desktop publishing
package. Well, when you convert these fonts (designed to work under TeX)
to AmigaDOS, you lose some of the nice features. But, the fonts should
serve you nicely anyway (especially for titling, for instance..).

Another problem I've run into is the size of the fonts files: From what
I can judge, there's an implicit limit of 64K for the font data in a font
file, imposed by the "mn_Length" field, which is a word. Some of the real
large fonts hit this limit, so I had to put in the option of generating a
user-specified subset of the characters. Larger font files (I had one
140K large!) could not be loaded correctly at all... So is this 64K
limit absolute for fonts, or did I miss something?

And a third problem I've noticed is that when you algorithmically
italicize some of the larger fonts (I tried it in DPaint and one other
program), you get a mess --- The bottom half looks fine, but the top half
is pretty much randomized. Is this a problem with those programs, a 
problem with the font software in AmigaDOS, or some problem with the font
itself? Any ideas?

Ali Ozer, ali@rocky.stanford.edu

papa@pollux.usc.edu (Marco Papa) (02/12/88)

In article <1038@rocky.STANFORD.EDU> ali@rocky.STANFORD.EDU (Ali Ozer) writes:
>There are some problems with the conversion: For instance, TeX fonts
>only define 128 characters, while AmigaDOS fonts define 256.

Not so. Amiga fonts consists of 0 to 256 characters.  See the fields loChar 
and hiChar of the TextFont structure from the RKM vol 1.

-- Marco

ali@rocky.STANFORD.EDU (Ali Ozer) (02/13/88)

In article <6907@oberon.USC.EDU> papa@pollux.usc.edu (Marco Papa) writes:
>In article <1038@rocky.STANFORD.EDU> I wrote:
>>There are some problems with the conversion: For instance, TeX fonts
>>only define 128 characters, while AmigaDOS fonts define 256.
>Not so. Amiga fonts consists of 0 to 256 characters.  See the fields loChar 
>and hiChar of the TextFont structure from the RKM vol 1.

Oh, yes, I realize. What I meant to say was when you take a TeX font, and make
an AmigaDOS font out of it, you get a font with hiChar set to 127, max.
Thus, if you try to get the O-umlaut, all you'll get is the UNDEFINED
character, which might be disappointing for some people. TeX normally
creates O-umlaut by sticking two dots right above the O, not by defining 
O-umlaut as an separate character. To get TeXF to generate all 256 characters
of an AmigaDOS font would've required some knowledge of the internals of TeX.
Sorry for the confusion... 

Ali Ozer, ali@rocky.stanford.edu