proposition for patch in CommonSalLayout.cxx
Stanisław Jeśmanowicz
stan at mail2.jesmanowicz.com
Tue Mar 9 13:04:08 UTC 2021
Hello Miklos,
On 3/9/21 9:14 AM, Miklos Vajna wrote:
> Hi Stan,
>
> On Mon, Mar 08, 2021 at 03:50:21PM +0100, Stanisław Jeśmanowicz <stan at mail2.jesmanowicz.com> wrote:
>> Dear all,
>>
>> I noticed that LibreOffice is using the hard coded harfbuzz shapers list in
>> CommonSalLayout.cxx file (line 470).
>> I recommend the patch attached to be more flexible.
>> This take all possible shapers in a given HarfBuzz implementation.
>> This also allows the use of newly created shapers.
>>
>> Just repleces line:
>> - const char*const pHbShapers[] = { "dt", "graphite2", "coretext_aat", "ot", "fallback", nullptr };
>>
>> with:
>> + const char **pHbShapers = hb_shape_list_shapers();
>
> Are you more or less reverting 7854d35cd8172b201f1f3ad247860f242e5cb06b?
> Can you describe what is the practical benefit of doing so?
The benefits of applying this patch are:
1. HarfBuzz allows the development of external shapers, like graphite2.
This way, if a LibreOffice is build with system HarfBuzz (--with-system-harfbuzz),
then any new developed shaper would work without recompiling LibreOffice.
2. Also in case of using system HarfBuzz, a particular HarfBuzz implementation can decide
which shaper to use out of currently existing list: graphite2, uniscribe, directwrite (so far).
3. Last, but not least, I have developed a HarfBuzz shaper and I would like that it work on systems
that have implemented it.
I have send a similar patch request to Scribus people, because thy use also hard coded shapers list.
But open source distribution of Chromium works with new shapers out of box.
>
> Regards,
>
> Miklos
> _______________________________________________
> LibreOffice mailing list
> LibreOffice at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/libreoffice
>
Regards,
Stan
--
__________________________________________________________
Stanislaw Jesmanowicz stan <at> mail2 <dot> jesmanowicz <dot> com
Amsterdam voice : + 31 20 6126193
The Netherlands mobile: + 31 653380520
More information about the LibreOffice
mailing list