freetype-devel
[Top][All Lists]
Advanced

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

[ft-devel] stroker - bevel joins


From: David Bevan
Subject: [ft-devel] stroker - bevel joins
Date: Mon, 27 Jun 2011 11:05:48 -0400

Hi!

 

While developing code to support stroked text, we encountered a number of significant issues with the FT stroker. I will be submitting various fixes later in the week.

 

However, one of the issues requires discussion (or at least agreement) beforehand.

 

The PostScript/PDF References specify that the form of a bevel join (whether specified explicitly, or created as a result of exceeding the miter limit) is not dependent on the value of the miter limit. See the attached miter.pdf for an example.

 

The current FreeType code generates the bevel join using a different algorithm that does depend on the miter limit. This actually accords with the way the miter limit is handled in XPS (see attached extract from the spec).

 

NB: Be aware, if you look at the current code, that a miter join is called a bevel join and vice versa (and hence explicit bevel joins are implemented incorrectly). This will be fixed.

 

What do we want to do?

 

1.       Change the implementation to match the PS/PDF References, discarding the XPS-style approach.

 

2.       Support both, with FT_STROKER_LINEJOIN_MITER matching the PS/PDF References, and a new FT_STROKER_LINEJOIN_VARIABLE_MITER for the XPS-style approach.

 

3.       Support both, with FT_STROKER_LINEJOIN_MITER unchanged, and a new FT_STROKER_LINEJOIN_FIXED_MITER for the PS/PDF approach.

 

4.       Support both, with FT_STROKER_LINEJOIN_FIXED_MITER and FT_STROKER_LINEJOIN_VARIABLE_MITER, and FT_STROKER_LINEJOIN_MITER an alias for FT_STROKER_LINEJOIN_VARIABLE_MITER (the existing behaviour).

 

5.       Something else.

 

1 & 2 introduce a backwards incompatibility, but is anyone actually using the stroker in anger?

 

As long as FT supports the PS/PDF approach, any of these is acceptable for us.

 

What do others think?

 

Thanks.

 

David %^>

 

David Bevan

Development Manager

Pitney Bowes Emtex Software

Tel: +44 (0)1923 279300

address@hidden

 

Attachment: miter.pdf
Description: miter.pdf

Attachment: XPS-LineJoins.pdf
Description: XPS-LineJoins.pdf


reply via email to

[Prev in Thread] Current Thread [Next in Thread]