[HarfBuzz] How to increase harfbuzz numerical precision

Kelvin Ma kelvinsthirteen at gmail.com
Tue Jun 28 23:25:27 UTC 2016


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 <khaledhosny at eglug.org> 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 <khaledhosny at eglug.org>
> 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 <behdad at behdad.org>
> > > 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 <
> kelvinsthirteen at gmail.com>
> > > > > 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
> > > > >> HarfBuzz at lists.freedesktop.org
> > > > >> https://lists.freedesktop.org/mailman/listinfo/harfbuzz
> > > > >>
> > > > >>
> > > > >
> > > > >
> > > > > --
> > > > > behdad
> > > > > http://behdad.org/
> > > > >
> > >
> > >
> > >
> > >
> > >
> > > > _______________________________________________
> > > > HarfBuzz mailing list
> > > > HarfBuzz at lists.freedesktop.org
> > > > https://lists.freedesktop.org/mailman/listinfo/harfbuzz
> > >
> > >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/harfbuzz/attachments/20160628/724b759b/attachment.html>


More information about the HarfBuzz mailing list