Re: Bidirectional support


Subject: Re: Bidirectional support
From: Karl Ove Hufthammer (huftis@bigfoot.com)
Date: Sat Dec 16 2000 - 10:40:47 CST


----- Original Message -----
From: "WJCarpenter" <bill-abisource@carpenter.ORG>
To: "AbiWord Mailing List" <abiword-dev@abisource.com>
Sent: Friday, December 15, 2000 8:36 PM
Subject: Re: Bidirectional support

> AFAIR, all of the platforms has width-calculating code that tallied up
> the widths of all the individual characters and took the total as
> AbiWord's idea of the width of the string. If any platform's renderer
> did kerning, ligatures, etc, that could make that assumption false.
> So, such platforms would have to start having a real string width
> function. Not a big deal, but something to remember.

Wouldn't it be easier to use something like the (XP) FreeType library <URL:
http://freetype.sourceforge.net/intro.html > in the first place? This also has
other advantages like:

"FreeType 2 produces etremely smooth outlines at small sizes with its new
anti-aliasing algorithm, which creates bitmaps with 128 levels of gray.
Actually, the new algorithm is in some cases faster than the one in FreeType 1,
which only produced 5 levels of grays."

"Kerning support: The TrueType kerning data is available through one of the
standard extensions that comes in this release. However, it is up to the
application to "interpret" the data, as many different `formats' are supported.
FreeType 2 supports horizontal kerning by default, without any extension."

"Support for vertical metrics. The engine is able to provide client applications
with vertical glyph metrics if they are found in font files (usually in CJKV
fonts). If not present, it synthetizes metrics from the horizontal values,
ascender, and descender metrics. This means that it is possible to render
vertical text correctly."

"Standard extensions are provided to access and load the glyph names in the
Postscript table. The standard FreeType 2 API provides glyph names without an
extension."



This archive was generated by hypermail 2b25 : Sat Dec 16 2000 - 10:41:19 CST