commit 424202798b02554092ba84dd59fb7b79b59b7b75
parent 3ca7249c8685a9ff2d8ce23273fe0313b5804473
Author: ian@remmler.org <ian@remmler.org>
Date: Fri, 11 Nov 2016 17:52:07 +0100
Initial font size issue.
Hi,
When I specify a font by point size (I'm using "Inconsolata:size=12"),
characters that are substituted from another font because they are not in the
main one appear too small. Doing a zoom reset fixes it. For example:
Before: http://i.imgur.com/G4Mfv4X.png
After: http://i.imgur.com/PMDhfQA.png
I found that adding the pixel size (acquired from the initial font load) to the
pattern then reloading the font fixes the problem. I'm not sure if this is a
proper fix, though.
Diffstat:
1 file changed, 3 insertions(+), 0 deletions(-)
diff --git a/st.c b/st.c
@@ -3472,6 +3472,9 @@ xloadfonts(char *fontstr, double fontsize)
if (usedfontsize < 0) {
FcPatternGetDouble(dc.font.match->pattern,
FC_PIXEL_SIZE, 0, &fontval);
+ FcPatternAddDouble(pattern, FC_PIXEL_SIZE, fontval);
+ if (xloadfont(&dc.font, pattern))
+ die("st: can't open font %s\n", fontstr);
usedfontsize = fontval;
if (fontsize == 0)
defaultfontsize = fontval;