After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 336026 - Make fallback shaper in modules work
Make fallback shaper in modules work
Status: RESOLVED OBSOLETE
Product: pango
Classification: Platform
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Behdad Esfahbod
pango-maint
: 336540 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-03-25 23:48 UTC by Behdad Esfahbod
Modified: 2007-06-20 20:09 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
calling pango_fc_font_kern_glyphs if applied_gpos is false (590 bytes, patch)
2006-03-31 11:11 UTC, Denis Jacquerye
committed Details | Review

Description Behdad Esfahbod 2006-03-25 23:48:50 UTC
Currently the code in most modules contains a fallback (non-OpenType) shaper, but the conditional is written such that the fallback code is never used.  This is because if the font is not OpenType, we simply create a dummy ruleset for it.  This makes non-OpenType fonts like the TrueType Bitstream Vera series to be not kerned.

In the future I like to have a more fine-grained switch to fallback.  For example if the font doesn't have an mkmk table, do fallback mark stacking, if it doesn't have 'mark' table, do fallback mark positioning, etc...
Comment 1 Behdad Esfahbod 2006-03-30 02:05:02 UTC
*** Bug 336540 has been marked as a duplicate of this bug. ***
Comment 2 Denis Jacquerye 2006-03-31 11:11:51 UTC
Created attachment 62453 [details] [review]
calling pango_fc_font_kern_glyphs if applied_gpos is false

TTF fonts like Bitstream Vera, Arial, etc. are kerned again with this patch.
Is this useful?
Comment 3 Behdad Esfahbod 2006-03-31 11:58:55 UTC
Thanks a lot!  Will commit and make releases soon.
Comment 4 Behdad Esfahbod 2006-03-31 13:11:01 UTC
Committed.  I'm not sure if it interacts with RTL correctly, but we'll see :).

2006-03-31  Behdad Esfahbod  <behdad@gnome.org>

        Part of Bug 336026 – Make fallback shaper in modules work
        Patch from Denis Jacquerye.

        * pango/pango-ot-buffer.c (pango_ot_buffer_output): Call
        pango_fc_font_kern_glyphs if GPOS not applied.

Comment 5 Hadmut Danisch 2006-03-31 16:37:36 UTC
Hi,

you had asked me whether the Microsoft Arial font is an OpenType font or oldschool TrueType?

How would I tell the former from the latter?

regards
Hadmut


Comment 6 Behdad Esfahbod 2006-03-31 21:34:57 UTC
Hadmut, can you just test with Pango from CVS and see if the problem is fixed now?
Comment 7 Hadmut Danisch 2006-04-01 22:12:47 UTC
Behdad, 

that's much better. :-)

Tested with that given arial.ttf:

- libpango1-ruby works
- rsvg works
- inkscape works
- gimp works


thanks and regards
Hadmut

Comment 8 Behdad Esfahbod 2006-09-26 17:19:29 UTC
We also should use fallback if the font doesn't have any GSUB/GPOS tables, to avoid going through HarfBuzz unnecessarily.
Comment 9 Behdad Esfahbod 2007-06-20 20:09:18 UTC
Mostly obsolete these days.  The direction we are taking is to always go through the OpenType buffer, and use canned tables for missing features, instead of using separate fallback routes.