On Sat, Sep 16, 2017 at 2:26 AM, David Crawshaw <craws...@golang.org> wrote:
> On Fri, Sep 15, 2017 at 7:35 AM, Elias Naur <elias.n...@gmail.com> wrote:
>> Is there a fundamental reason to quantize the baseline? The
>> golang.org/x/image/font package offers (fixed point) subpixel accuracy, so
>> why not use it? Is there a performance advantage or is it easier to cache
>> pre-rendered text?
>
> I have not been particularly interested in anything subpixel since
> screens went high-DPI. As you say it greatly complicates caching, and
> I cannot (visibly) see the advantage any more.

I think it's because I've always seen quantized baselines, even with
sub-pixel positioning. I suppose you could skip quantizing the
baseline, but it might look a little weird.

It's certainly easier to cache the glyphs if you quantize the
vertical. FWIW, the default Options type in
https://github.com/golang/freetype/blob/master/truetype/face.go
quantizes to 1 pixel vertically and 0.25 pixels horizontally.


>> Finally, is the origin argument of node.Paint(Base) for the same reason? It
>> seems to me it could be baked into the context's src2dst matrix.
>
> My motivation was always that integer pixels are simple and good
> enough. Nigel could very well have a more thoughtful reason.

The origin argument lets you paint 1 widget onto N tiles, for
accelerated scrolling of e.g. a text widget. It's hard to cut an image
into tiles along subpixels.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to