[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#22780: 25.1.50; wrong average width picked for bold face for 7x13 X1
From: |
Eli Zaretskii |
Subject: |
bug#22780: 25.1.50; wrong average width picked for bold face for 7x13 X11 font |
Date: |
Wed, 15 Mar 2017 17:39:32 +0200 |
> From: gnubugs@gedanken.org.uk (Andrew M. Bishop)
> Date: Tue, 14 Mar 2017 19:50:40 +0000
> Cc: alex@khesin.com
>
> I have also found this problem since I use 7x13 as my default font.
> The widening of the bold version of this font makes Emacs version 25
> unusable by me.
>
> Using Alex Khesin's test case:
>
> $ emacs -Q --eval '(progn (set-face-font '\''default "7x13") (print
> (face-font "default")) (print (face-font "bold")))'
>
> I find that these fonts all work correctly (the width is the same for
> normal and bold versions): 6x9, 6x10, 6x12, 6x13, 7x14, 8x13, 8x16.
>
> It is only the 7x13 font that does not scale correctly since it gives
> different widths (80 compared to 70) for the bold compared to normal
> font:
>
> -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-1
> -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-1
>
>
> Using 'git bisect' I traced down the change that caused it and
> demonstrated that it can be fixed by this patch.
>
> -------------------- src/xfaces.c patch --------------------
> diff --git a/src/xfaces.c b/src/xfaces.c
> index 5077cb2d94..c898b7886f 100644
> --- a/src/xfaces.c
> +++ b/src/xfaces.c
> @@ -5485,7 +5485,7 @@ realize_x_face (struct face_cache *cache, Lisp_Object
> attrs[LFACE_VECTOR_SIZE])
> }
> if (! FONT_OBJECT_P (attrs[LFACE_FONT_INDEX]))
> attrs[LFACE_FONT_INDEX]
> - = font_load_for_lface (f, attrs, Ffont_spec (0, NULL));
> + = font_load_for_lface (f, attrs, attrs[LFACE_FONT_INDEX]);
> if (FONT_OBJECT_P (attrs[LFACE_FONT_INDEX]))
> {
> face->font = XFONT_OBJECT (attrs[LFACE_FONT_INDEX]);
> -------------------- src/xfaces.c patch --------------------
>
> This reverts a patch that was made as part of bug #17973. The change
> in src/font.c that was also made in that bug report seems to not be
> relevant.
>
> This is clearly a regression from Emacs 24 but since this change was
> made to fix another bug it might be quite difficult to find a change
> that works for both.
I'm CC'ing Handa-san who was involved in solving that bug. Reverting
the solution for that bug is clearly not TRT, but I hope Handa-san
will have comments about your particular problem.
Thanks.