lout-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Another way of tweaking lout to support alien characters?


From: Valeriy E. Ushakov
Subject: Re: Another way of tweaking lout to support alien characters?
Date: Thu, 10 Dec 1998 01:00:03 +0300

On Wed, Dec 02, 1998 at 12:38:46PM -0000, Ted Harding wrote:

> Using simply the characters available in the standard PostScript
> "Standard Roman Character Set" and "Symbol Character Set" I have defined
> characters which cover all the European languages (Romance, Germanic,
> Scandinavian, Polish, Czech, Yugoslav etc; Romanian; Greek; as well as
> Turkish); there is no need to even think about the font metric files. I
> have also used this technique to match "characters" invented by writers
> for special purposes (such as an "H" with a breve accent underneath, or a
> single character consisting of two "P"s linked by a horizontal line at
> the level of the bottom of the curved part). 

Ok, so I've spent some time annoying FontLab guys in a local newsgroup
devoted to fonts (fido7.ru.dtp.fonts, if you can read Russian).  And I
have finally have my Big Red Book (PS RefMan 2nd ed.)  returned.  So
now I know how to make a font derived from a standard Type1 font that
will include additional composites.

The idea is (like with encoding vector) is to clone the font
dictionary and add new entries to CharStrings dictionary (charstrings
themselves are executeonly, but the dictionary is public).  Refer to
section 5.6.3 of the Big Red Book (page 277) for details.

So my idea is to have this done by a little chunk of PS code
(@SysPrependGraphics) that will make derived fonts from a standard PS
font set.  Then it will be necessary to make derived AFM files with
metrics for these composites added.  Then Lout can use these fonts in
a usual way.

Thus you have an illusion that you are using proper Latin2 version of
Times-Roman, but instead of including some tens of kbytes of an actual
font you only have a screenful of PS code that creates the font from
standard, printer resident font.  I hope that this will address
Matthew's concerns about documents' size/portability.

This is not ideal.  But this approach has an advantage that it doesn't
require any changes to the Lout core, you could use it with any 3.x
version.

Having said all this, I have to add that I don't know when I'll have
enough time to actually do it.  Most likely, in between the Xmases [or
whatever the correct plural for Xmas is; in case the plural puzzles
you - Russian Orthodox Church uses Julian calendar, so it celebrates
Xmas on Gregorian Jan 7].


> You can also define a character of arbitrary shaped define by lines
> of raw PostScript code, but here you have to take extra trouble to
> ensure that the correct metrics get stored with the character; and
> this is not so straightforward.
>
> The point of all this is that the result is a true character object,
> on the same footing as the letter "A" say, with various metric
> attributes which the software keeps track of.
[...]
> To the extent that it is not possible, it is a gap which the Lout
> developers should consider filling, for the sake of the many people who
> wish to write in their native languages.

This will require hooks into Lout internals that convert words (chars)
to objects (glyphs).  This hooks will also require some new syntax.
While this could be a good idea for some great Lout's successor (sort
of Type3 fonts done in Lout!) - but this should be, IMHO, a part of a
greater framework that would address the current char/glyph mess
(read: Unicode support).


SY, Uwe
-- 
address@hidden                         |       Zu Grunde kommen
http://www.ptc.spbu.ru/~uwe/            |       Ist zu Grunde gehen


reply via email to

[Prev in Thread] Current Thread [Next in Thread]