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

Re: New Unifont release

On Tue, 10 Jul 2001, David Starner wrote:
> Also, the hex2bdf now produces two bdf
> files, since the old bdf file was incorrectly labeled a charcell font
> while having multiple widths for characters. This produced problems in
> xterm, among others. (Some versions of Yudit that previously showed all
> the characters may only show the single-width characters now. Since
> xterm is correct and more important than Yudit, the change was made.)

I strongly recommend that you follow the practice we established in
XFree86 for the -misc-fixed-*-iso10646 fonts and split up GNU Unifont into
two separate charcell font files, one 8x16 and one 16x16. This way, the
width decision becomes factored out of the font and you can use the fonts
with all the different wcwidth conventions that are currently in use. Some
Japanese folks do insist on their double-width cyrillic and box drawings
for backwards compatibility. Even if they agree with Europeans in
principle that double-width Greek/Cyrillic is typographically nonsense and
even considering that JIS standards don't define any charcell width
convention, some don't want to change the kterm-convention layout of their
existing EUC plaintext files.

> Devanagari

We deliberately kept the Indic glyphs out of the -misc-fixed-* fonts,
because Unicode encodes characters, not glyphs, and for Indic, Syriac,
etc. the difference does matter significantly. I doubt whether the
Devanagari in GNU Unifont is of any practical use whatsoever at the

The hex source format and tools for Unifont should definitely be extended
to allow a glyph to be assigned to several sequences of UCS characters,
not just as currently to one single UCS character per glyph.

> Known Issues: We still have circles on combining characters

Those definitely should be removed. The circles are just technical
annotations in the Unicode book. Combining characters should also be
placed such that simple overstriking (as currently implemented in xterm)
places them in an acceptable position onto both lower and upper case
characters. This is what we did for the 9x18 font in the -misc-fixed-*

You can also implement combining characters are precomposed ligatures of a
base character and one or more combining characters. This is a good idea
for those base/accent combinations, where simple overstriking leads to
unpleasant results.

> Some of the ideographs use all four
> edges of the 16 by 16 square, meaning they may blur together when used
> in many programs.

To make them readable, programs have to add 1-2 empty pixel rows between
the glyphs. But this breaks up box drawing chartacters. Therefore, in the
-misc-fixed-* font project, we went for 9x18 and 18x18 as the format of
what we aim to be the most comprehensive Unicode pixel font on the planet,
instead of 8x16/16x16. (Another reason was that 9x18 has exactly the
additional head/foot space that the existing 9x15 needed for the use of
overstriking combining accents.) We also split up the 18x18 font into CJK
style variants.

Currently, 9x18/18x18 covers 31053 Unicode characters (including full
MES-3A/B coverage and all other major sets except for BIG5), or 51527
glyphs (including overlaps). Contributions are welcome ...



Markus G. Kuhn, Computer Laboratory, University of Cambridge, UK
Email: mkuhn at acm.org,  WWW: <http://www.cl.cam.ac.uk/~mgk25/>

Reply to: