Modern font features, hacky patch

Khaled Hosny khaledhosny at
Sat Oct 27 17:59:27 PDT 2012

On Fri, Sep 07, 2012 at 06:43:26PM +0200, Khaled Hosny wrote:
> On Fri, Sep 07, 2012 at 05:18:46PM +0100, Caolán McNamara wrote:
> > On Sat, 2012-07-21 at 18:20 +0200, Khaled Hosny wrote:
> > > Here is a very crude, WIP patch. It adds --enable-harfbuzz configure
> > > option, plus some (very broken) harfbuzz layout code, but I can't get
> > > the ENABLE_HARFBUZZ to propagate in and thus can't do any testing
> > > because the code is never compiled. I appreciate any insights on how to
> > > get this to work.
> > 
> > You need to put harfbuzz in the gb_Library_use_externals section of
> > (or whichever is the right .mk file in vcl)
> > 
> > It would be nice to get this feature in as a compile time option for
> > experimenting with.
> I’ve some code that more or less works (as in displaying some text), but
> it crashes like hell, I'm yet to figure out what is going on (I think
> I've to override more members of ServerFontLayout to make things saner).

Realizing that I might not get around fixing basic issues with HarfBuzz
integration anytime soon, I'm attaching preliminary patches I've for any
one interested in them. So far LTR text works fine, RTL horizontal
offsets (e.g. kerning) seems to be applied in the wrong direction,
probably the same old issue with ICU that we "band aided" a while ago,
which seems to be because of (Generic)SalLayout::AdjustLayout and
::Justify doing tricks with glyph advances and offsets (I've hard time
wrapping my head around all this SalLayout, GenericSalLayout,
MultiSalLayout etc. we really should consolidate this stuff now that we
have only one shaping path on *nix).

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Add-HarfBuzz-support-to-the-build-system.patch
Type: text/x-diff
Size: 3958 bytes
Desc: not available
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Add-support-for-using-HarfBuzz-instead-of-ICU-LE.patch
Type: text/x-diff
Size: 7161 bytes
Desc: not available
URL: <>

More information about the LibreOffice mailing list