Device tables affect glyph positions returned from HarfBuzz, which you then pass to Cairo.
That said, Device tables are almost obsolete; you wouldn't lose much if you don't set ppem on hb_font_t. On Tue, Jun 28, 2016 at 8:32 PM, <[email protected]> wrote: > i still don’t get it how does cairo know about the device table in the > harfbuzz font object if cairo uses a different font object to do its > rendering? > >> On Jun 28, 2016, at 8:28 PM, Khaled Hosny <[email protected]> wrote: >> >> Device tables affect glyph positioning which is done by HarfBuzz to >> Cairo. >> >>> On Tue, Jun 28, 2016 at 07:50:51PM -0400, Kelvin Ma wrote: >>> The rendering is separate from harfbuzz i thought, the glyphs get passed to >>> cairo’s cr.show_glyphs() and it uses its own font structure that has to be >>> loaded separately from harfbuzz’s fonts. So any value set on the harfbuzz >>> font is not known by the renderer >>> >>>> On Tue, Jun 28, 2016 at 7:48 PM, Khaled Hosny <[email protected]> >>>> wrote: >>>> >>>> For device tables (as I said in my first reply) and I think hinting >>>> (though I don’t think hinting stuff affects HarfBuzz right now). >>>> >>>>> On Tue, Jun 28, 2016 at 07:25:27PM -0400, Kelvin Ma wrote: >>>>> ok this might be a dumb question but what is ppem used for anyway? I >>>>> thought it was a font value that harfbuzz just lets you read off of the >>>>> font (like upem, advance width, or glyph index) so you can do your own >>>> math >>>>> on the font outside of harfbuzz. >>>>> >>>>> On Tue, Jun 28, 2016 at 7:18 PM, Khaled Hosny <[email protected]> >>>> wrote: >>>>> >>>>>> It is, but you have to set it separately, and then you can set the font >>>>>> scale to whatever value you need without both being interdependent. >>>>>> >>>>>>> On Tue, Jun 28, 2016 at 07:15:23PM -0400, Kelvin Ma wrote: >>>>>>> I thought ppem was dependent on UPEM and font scale, is it not? >>>>>>> >>>>>>> On Tue, Jun 28, 2016 at 7:12 PM, Khaled Hosny <[email protected] >>>>> >>>>>> wrote: >>>>>>> >>>>>>>> Device tables depend on ppem, so despite the scale being set >>>>>>>> on the font, you should still set the exact ppem. >>>>>>>> >>>>>>>> On Tue, Jun 28, 2016 at 06:43:58PM -0400, Kelvin Ma wrote: >>>>>>>>> so that’s the only way huh… >>>>>>>>> doesn’t that kind of defeat the purpose of hb.font_create() and >>>>>> having >>>>>>>> many >>>>>>>>> scaled versions of the same font? You would only ever need one >>>> font >>>>>> of >>>>>>>> each >>>>>>>>> face, scaled to the UPEM, if the fontsize was to be applied >>>>>> externally >>>>>>>>> after shaping already occurred. >>>>>>>>> >>>>>>>>> On Tue, Jun 28, 2016 at 5:51 PM, Behdad Esfahbod < >>>> [email protected]> >>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> HarfBuzz coordinates work in a int32 space. You are free to >>>> set >>>>>>>> whatever >>>>>>>>>> scales you want on the font. For example, use 6 or 8 or 10 or >>>> 16 >>>>>> bits >>>>>>>> of >>>>>>>>>> sub-pixel precision by multiplying your scale by a number. >>>>>>>>>> >>>>>>>>>> On Tue, Jun 28, 2016 at 4:57 PM, Kelvin Ma < >>>>>> [email protected]> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> It appears that harfbuzz rounds all decimals to integers when >>>>>> giving >>>>>>>>>>> glyph advances and offsets. This is causing some ugly >>>> misalignment >>>>>>>> problems >>>>>>>>>>> in arabic shaping, as well as latin cursive fonts. (see >>>> pictures) >>>>>>>>>>> >>>>>>>>>>> [image: Inline image 1] >>>>>>>>>>> >>>>>>>>>>> [image: Inline image 2] >>>>>>>>>>> >>>>>>>>>>> [image: Inline image 3] >>>>>>>>>>> How do I get harfbuzz to preserve the floats? >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> HarfBuzz mailing list >>>>>>>>>>> [email protected] >>>>>>>>>>> https://lists.freedesktop.org/mailman/listinfo/harfbuzz >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> behdad >>>>>>>>>> http://behdad.org/ >>>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> HarfBuzz mailing list >>>>>>>>> [email protected] >>>>>>>>> https://lists.freedesktop.org/mailman/listinfo/harfbuzz >>>>>>>> >>>>>>>> >>>>>> >>>> > _______________________________________________ > HarfBuzz mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/harfbuzz -- behdad http://behdad.org/ _______________________________________________ HarfBuzz mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/harfbuzz
