Pango considers the font size in a PangoFontDescription to be in
points, and it converts to pixels by using the resolution set in
However, we were passing our plainly normalized Length values to
pango::FontDescription::set_size(), i.e. we were passing them in
pixels, not points. Thus, Pango was applying extra scaling, and
messing up the final size.
This commit hardcodes a value of 72.0 for Pango's resolution. This is
so that it will not apply any extra scaling on top of our
computations. We are doing the inches-to-pixels conversion, instead
of letting Pango do it.
This commit adds 348-font-size-48dpi.svg which two pairs of squares
and text elements, which should both render at the same size: one
pair is done in userspace pixels, and the other pair is done in
This commit also regenerates 310-font-size-at-48dpi-ref.png - it is
the only other file that uses absolute font sizes.