Release pdfCalligraph 3.0.0
Release date: October 25, 2021
The pdfCalligraph 3.0.0 release brings support for two more types of the Glyph Positioning table (GPOS) which improves the language support in this add-on.
GPOS provides precise control over glyph placement for sophisticated text layout and rendering in each script and language system that a font supports. In writing systems such as Vietnamese, where diacritical and other marks are used to modify the sound or meaning of characters, complex glyph positioning becomes an issue. These writing systems depend on the controlled placement of all such marks in relation to one another, both for legibility and linguistic accuracy.
Other writing systems (such as Urdu for example), require sophisticated glyph positioning for correct typographic composition. In Urdu, glyphs are calligraphic and connected along a descending, diagonal text line that proceeds from right to left. To properly render Urdu text, both the horizontal (X) and vertical (Y) positions of each glyph must be modified.
However, the GPOS table allows the definition of a complete set of positioning adjustment features in an OpenType font. See the example linked below, and for more information about the GPOS table, see the documentation in the official OpenType specification.
In other news, we also fixed several bugs relating to RTL text, which may be useful for languages such as Arabic or Hebrew.
Besides that, the pdfCalligraph 3.0.0 release as other iText 7 products brings the new License Mechanism and the move to the .NET 4.6.1 framework for our .NET customers.
Note: Don't forget that aside from being a very useful add-on to iText 7 Core by itself, you can also use pdfCalligraph in combination with pdfHTML.
Release Related Examples
|iText pdfCalligraph – 3.0.0 (Java)||N/A||link||N/A||link|
|iText pdfCalligraph – 3.0.0 (.NET)||N/A||N/A||link||link|
- Bump to .NET Framework 4.6.1
- Implement GPOS lookup type 1 subtype 2 and type 8
- No list symbol indention for "Right to left" text
Examples (latest ones)
FAQ (latest ones)