Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Sep 1998 14:33:44 -0400
From:      sbabkin@dcn.att.com
To:        hackers@FreeBSD.ORG
Cc:        babkin@bellatlantic.net
Subject:   anybody from the XFree86 team here ?
Message-ID:  <C50B6FBA632FD111AF0F0000C0AD71EE018C1D37@dcn71.dcn.att.com>

next in thread | raw e-mail | index | archive | help
Hi!

I wonder whether is here anybody from the XFree86 team ? I've tried to 
contact the former X consortium and the XFree86 group from their
websites but got no answer. I still think that the matter is fairly
important
for X11 i18n, so this is my next try :-)

I'm working on conversion of TTF fonts into Type1 format. Actually, all
I need is to get some russian scalable fonts :-) 

Upto now I have found a freeware TTF->T1 converter, fixed a number of
bugs in it and added some features to it, wrote a perl script that fixes
a number of problems that are typical for available TTF fonts or
introduced during conversion (there is still a lot of space for
improvement,
the next thing I'm working on is autohinting), wrote scripts to
convert fonts between different encodings, and created tables for
this conversion for all more or less widely used russian encodings
(KOI-8R, CP-866, CP-1251, ISO8859/5).

Here goes the trouble:

The Type1 font library in X11 is INTENTIONALLY BROKEN.

It ignores the encoding specification in the font itself and forces all
the 
fonts to use Latin1 encoding. I think, I know the reason: there exist
broken font editors (like Fontografer) that specify Adobe Standard
encoding but actually use names from the Adobe Latin1 encoding. 
So, the library parses the encoding table well but then it just throws
out
the learned encoding table and uses Latin1.

And guess what ? Some of the characters used in the russian fonts
do not have any names in Adobe Latin1 encoding. Most of them
still can be defined using some pathologically dirty trick with reusing
the same name for more than one glyph - Fontographer does this,
but not the freeware program, and the resulting font works only
with the X font library and does not work at all with Ghostscript.

This problem can be fixed by a two-line fix that I propose: let's
force only Adobe Standard encoded fonts to use Adobe Latin1
encoding and leave alone the fonts with explicitly defined
encoding table.

Of course, I have fixed my local copy of X sources but it does
not enjoy me at all to do that with each next installation.

Can it please be fixed in the main X repository ?

By the way, I want to submit the results of my work to the
free software community and wonder how to do it in the best
way: by contributing it to the XFree86 project and/or making
a port/package for FreeBSD. I would appreciate also if
someone could point me to some russian TTF fonts that
are freeware for sure, so that converted versions of them
may be included into the distribution.

Also, if somebody needs, I have written also the keyboard layouts
for XFree86 for all 4 russian encodings.

And, finally, pushing my luck :-)  : I would like very much to see 
the characters with codes 0x80-0x9F defined as printable in
xterm. Of course, I do that with each copy of xterm I work with,
but I would like to see that in the standard distribution. Provided
that they were defined to be ignored in X11R6.1 and earlier,
that should not hurt anybody. The positive sides of redefinition 
are:
1. These codes are used for uppercase russian letters in CP866 
encoding
2. I hate to `cat' some innocent text and get the xterm completely
stuck as it occurs with X11R6.3 where these characters
are defined as control characters

-Sergey Babkin

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C50B6FBA632FD111AF0F0000C0AD71EE018C1D37>