[XeTeX] OpenType fonts in Linux?

Adam Twardoch (List) list.adam at twardoch.com
Mon Nov 30 17:22:36 CET 2009


Arthur Reutenauer wrote:
>> On Monday 30 November 2009 00:27:20 Adam Twardoch (List) wrote:
>>> TrueType-flavored OpenType aka OpenType TT aka OpenType TTF
>> ..
>>> store
>>> outlines using 3nd-order B-splines
> 
>   That's not right, I thing you misquote Adam.

Of course the "3nd" indicates that I did not mean "3rd" but actually
"2nd". I just hit the wrong key, sorry :)

My understanding is the following:

Bézier originated the concept of a "curve", i.e. a segment between two
points (start and end point). Later, a concept of "Bézier splines" has
emerged, as a concatenation of Bézier curves.

Bézier splines always require a "starting point" and an "end point" of
each spline segment (i.e. of each curve). This produces some theoretical
problems since continuity cannot be guaranteed easily without additional
constraints.

The B-spline concept is a evolution of the concept which does not
require start and end point of each segment. In the B-spline concept,
there are no start and end point for each segment. In B-splines, there
is still a concept of a segment, but it's a bit less obvious.

In popular terminology, "Bézier curves" always refer to "3rd degree
Bézier curves" (cubic), though theoretically, any one can use any
degree. My understanding is that any cubic Bézier spline (i.e. a
concatenation of cubic Bézier curves) is automatically a cubic B-spline,
but not every cubic B-spline is a concatenation of cubic Bézier curves.
But I may be mistaken :)

So, both PS- and TT-flavored OpenType fonts use splines.

TT uses 2nd-degree B-splines (quadratic), which do not require start and
end points for segments.

PS uses 3rd-degree Bézier splines (cubic), which are really a
concatenation of segments made of Bézier curves, each with a start and
end point.

So there are two principal differences between the TT and the PS outline
representation: the degree (2nd vs. 3rd) and the nature of the segments
(B-spline without the necessity of start and end points for each segment
vs. Bézier spline that requires start and end points for each segment).

But well, I'm no mathematician and I cannot claim that I understand all
of the theoretical differences in the models.

There's a reasonable description of the subject at:
http://www.cs.umu.se/education/examina/Rapporter/461.pdf

A.

-- 

Adam Twardoch
| Language Typography Unicode Fonts OpenType
| twardoch.com | silesian.com | fontlab.net

Reporter: "So what will your trip to Ireland look like?"
Lech Wałęsa: "I get into a car, then onto a plane, and then the other
way around."



More information about the XeTeX mailing list