newsFree UCS Outline Fonts - News

 
 

New Release

Item posted by Steve White <Stevan_White> on Sun 23 Mar 2008 03:50:25 PM UTC.

I'm pleased to announce another release of GNU FreeFont.

This release addresses mostly technical issues with the fonts.  Several outstanding bug reports are fixed, and some characters are added, especially Math symbols.

Download it at http://ftp.gnu.org/gnu/freefont
You want the tarballs dated 2008-03-23.

Thanks to the several people who offered advice!

A lot of changes were made, and probably a few things are screwed up. Certainly not all the pending bug reports have been dealt with.

I expect to make another release soon, dealing in more detail with bugs.

Please have a look, and drop me a line!

Changelog
===========================
A day-by-day summary of changes:
http://cvs.savannah.gnu.org/viewvc/freefont/ChangeLog?revision=1.248&root=freefont&view=markup

Main technical improvements
===========================

Brought into line with Debian ttf-freefont

Updated file format to Spline Font Database (SFD) 2
        (so now we can use recent versions of FontForge)

        The recent versions of FontForge are much superior to those of a
        couple of years ago.  Besides being much more stable, they now
        do quite thorough checking for font problems.  Thanks to George!

Line height improved
        (it is still slightly increased: see discussion below)

Glyph outlines in Windows are now good
        (see discussion below)

Now works in Windows and Mac OS
        I have installed and used it in Windows Vista, and it has been
        tested on Mac OS X

Path problems fixed
        open paths
        intersecting paths
        outermost paths not clockwise
        no control point at path vert. or horiz. extrema
        flipped references
        mixed references and contours
        many "points too close" fixed

Lookup table (ATT) problems
        especially in Sans: Indic ranges were a complete mess

Validation
        all faces now pass FontForge validate

Back layer
        removed all back layers: fixed "ghost glyph" in printing

Font Info: Manufacturer (like OS/2 Vendor ID) is now GNU
        Copyright date updated

Changes to character ranges
===========================

Combining Diacriticals
        Many were incorrectly placed
        DPOS 'mark' table for Latin

Latin
        Ligatures ff ffi ffl fi fl put in standard lookup table
        Superscript digits and fractions regularized
        Extended Additionals: fixed incorrect stacking of many accents
        Added double hyphen uni2E17

Greek
        Made 'tonos' to be the same as combining accent acute
        Moved capital letters with tonos so tonos doesn't cover preceding letter

Arabic
        I hope is basically functional now.
        [Late correction: it somehow got out the door with some contextual character replacements that had no glyphs.  The fix is already in CVS and should be in the next release.]
        Added lookup tables to do contextual character replacement,
        Added the required ligature look-up for lam-alif.
        Offset so baseline agrees with Latin.

Japanese Hiragana, Katakana
        Offset so baseline agrees with Latin.
        Fixed U+30FB, KATAKANA MIDDLE DOT to be full-width

Cyrillic
        Increased height of letter "i"

Indic (Devangari, Gurmurkhi, Bengali, Gujarati)
        many changes of references to outlines
        in Sans, many alterations to lookup tables, which are very buggy
        many fixes of glyph outline problems

HTML Character Entities
        completed set for all faces

Math operators
        Completed LaTeX 2e range in Roman faces
        Worked on extendable integrals


To do
=====

kerning (and related issues) needs to be changed to "kerning by classes"

documentation
        * policies
        * development tricks page
        * test pages

maybe a find a better way to provide font snapshots

perhaps glyphs from        http://packages.debian.org/sid/ttf-mph-2b-damase

perhaps replace Hiragana/Katakana with more modern set,
        * such as Sazanami Mincho, VL-Gothic

Many ranges (Ethiopic, Japanese, Indic) need a lot of work
        * many glyphs are plain ugly
        * much work was done on lookups in Sans, but lookups in other faces
          are probably non-functional

many outstanding bugs in the bugs list

=======================================================================
Line height

Ever since GNU Freefont started acquiring language script ranges, line height has been a problem.  The underlying reason is, some of those new glyphs were very high or low.

The result was that in many applications, the line spacing (of FreeSerif especially) was extremely large.

In the Debian distribution of FreeFont, a patch was applied to remedy this.  I applied this patch to the current FreeFont in CVS.  However, I have since had to replace it.  It had some bad side-effects: the most obvious was that in Windows, the ascenders and descenders of Latin letters were chopped off.

The current state is a compromise.  The line spacing is now slightly increased (by about 15%) to allow for most accents and high and low letters.

The purpose of putting scripts from different languages into a single font can only be, to make it easy to make text in mixed languages.  A criterion for them being together must therefore be that they look good together.  They should therefore at least be commensurate.

Now, I found that some scripts (Japanese, Arabic, and Tamil) were greatly offset from the baseline, for no reason I could see.  I have put them where I think they belong, and that helped a lot.

I hope in the future the situation can be further improved.

These scripts have some characters that are conventionally very high or low: Arabic, Thai, Tamil.  There are also standard typographic practices that can make them work well with Latin.
The extended Latin ranges are a rather worse problem.  There are cases of stacked accents which may be difficult to fit into a comfortable height.

Technical details:
        ascent and descent: 800 EM, 200 EM.
        OS/2 Win ascent and descent: 900 EM, 300 EM.

Unfortunately, this Win ascent/descent is interpreted variously.  It was meant to serve simply a graphical clipping region, but many applications also take it to indicate line spacing (and some as line spacing but not clipping region).

=======================================================================
Glyph outlines in Windows

The appearance of the font in Windows has evidently always been very poor. The outlines appeared very choppy, very much like a badly-scaled bitmap.

After a great deal of detective work, comparing FreeFont to other fonts, and switching my (single home) computer between operating systems, I figured it out.

Now the outlines look quite good in my Windows Vista.

Technical details:

Windows will fail to do what is required unless some "TrueType tables" are included in the font: in SFD format, these have names like "TtTable" and "ShortTable".  These were absent in FreeFont.
(Just what Windows does isn't clear to me: the tables are "hinting" tables, but the effect looks to me like anti-aliasing.)

Now, FontForge generates such tables, with the Auto Instruct command--but only for fonts with quadratic outlines.  FreeFont has always had cubic outlines...so the command was disabled.

To maintain the cubic outlines (I don't know why, but let's say it is desirable), here is the trick:
        Font Info -> Layers -> All layers quadratic
        Auto-hint everything
        Auto-instruct
        Save As (different file name)
        With text editor, copy the TrueType tables from the cubic .sfd file
        to the quadratic .sfd file.

Note: this problem goes away if the font is bundled in OpenType format.  This is the main format in Windows Vista, but many important applications in the free software world don't support it yet.

Back to the top

Powered by Savane 3.14-0608.
Corresponding source code