bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#54564: 29.0.50; [PATCH] Use gsettings font rendering entries for pgt


From: Pieter van Prooijen
Subject: bug#54564: 29.0.50; [PATCH] Use gsettings font rendering entries for pgtk builds
Date: Fri, 08 Apr 2022 20:44:47 +0200
User-agent: Evolution 3.40.4-1ubuntu2

Hi,

Yes, your patch fixes the problem as well, and I don't see any
other side effects at a first glance. I've changed my patch to
incorporate it and revert the changes to ftcrfont_draw. 

Thanks,

Pieter


On Fri, 2022-04-08 at 07:38 +0800, Po Lu wrote:
> Pieter van Prooijen <pieter.van.prooijen@teloden.nl> writes:
> 
> > Hi All, 
> > 
> > It took a fair bit of digging, but sub-pixel anti-aliasing on pgtk
> > now
> > seems to work correctly.
> > 
> > The problem lies with the "source" operator set by pgtk when
> > drawing a
> > font, this will take a particular execution path in the cairo glyph
> > compositor (using a mask image) which converts the colors created
> > by
> > freetype for the sub pixel effect to greys-cale. Using the default
> > "over" operator takes a different path which preserves the colors.
> > Note
> > that on small screens the difference between sub-pixel and grey-
> > scale
> > rendering is hard to see, it's more pronounced on larger displays)
> 
> Ah thanks.  Does this fix the problem as well?
> 
> diff --git a/src/pgtkterm.c b/src/pgtkterm.c
> index b2816aa04a..5fbc56ae81 100644
> --- a/src/pgtkterm.c
> +++ b/src/pgtkterm.c
> @@ -7037,8 +7037,11 @@ pgtk_set_cr_source_with_color (struct frame
> *f, unsigned long color,
>    pgtk_query_color (f, &col);
>  
>    if (!respects_alpha_background)
> -    cairo_set_source_rgb (FRAME_CR_CONTEXT (f), col.red / 65535.0,
> -                         col.green / 65535.0, col.blue / 65535.0);
> +    {
> +      cairo_set_source_rgb (FRAME_CR_CONTEXT (f), col.red / 65535.0,
> +                           col.green / 65535.0, col.blue / 65535.0);
> +      cairo_set_operator (FRAME_CR_CONTEXT (f),
> CAIRO_OPERATOR_OVER);
> +    }
>    else
>      {
>        cairo_set_source_rgba (FRAME_CR_CONTEXT (f), col.red /
> 65535.0,
> 
> > I've also fixed the indent error, but couldn't find the non-
> > breaking
> > space in the patch, it's perhaps caused by the mail program.
> 
> It was previously filled with non-breaking spaces, but the patch you
> attached looks fine now.
> 
> > Regarding the copyright assignment, I've had no response after
> > sending
> > in the questionnaire at
> > https://git.savannah.gnu.org/cgit/gnulib.git/plain/doc/Copyright/re
> > quest-assign.future
> > to assign@gnu.org
> 
> It takes a while; if you don't get a response in 2 weeks, you should
> contact Eli or Lars, and they will ask the folks at the FSF to
> expedite
> things.
> 
> > Do you get sent a paper form of some kind which has to be filled
> > in?
> > (I'm not at my home address atm so I will have missed that)
> 
> You get sent a document you have to print and fill in, I think, but
> that
> depends on the country you're in.
> 
> Thanks.

Attachment: 0001-Use-gsettings-font-rendering-entries-for-pgtk-builds.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]