Subject: bug#10178: 24.0.92; emacs -q frame too short for fancy splash image

From: Jan Djärv <[email-masked]>
Date: Sat, 10 Dec 2011 14:13:25 +0100

7 dec 2011 kl. 22:54 skrev Stephen Berman:

> On Wed, 07 Dec 2011 18:47:37 +0200 Juri Linkov <[email-masked]> wrote:
> 
>>>> On my system, image-height becomes 14.466666666666667, so frame-height
>>>> must be larger than 33.4666....
>>>> 34 should fit.  Is image-size something else on your system?
>>> 
>>> Yes, 15.5 (image-size returns (38.57142857142857 . 15.5)), which means
>>> the decremented frame-height should be > 34.5, so 34 is too small.  This
>>> is with the font
>>> -unknown-DejaVu Sans Mono-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1,
>>> which I've been using since well before the fancy splash image started
>>> failing to be displayed.
>> 
>> I see no changes in image size calculations between versions 23 and 24.
>> 
>> With -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1
>> in Emacs 23.1:
>> 
>>  (image-size (create-image "splash.xpm"))
>>  => (45.0 . 21.7)
>> 
>> In Emacs 24.0.92:
>> 
>>  (image-size (create-image "splash.xpm"))
>>  => (45.0 . 21.7)
> 
> I just installed my GNU/Linux distribution's (openSUSE 12.1) Emacs 23.3,
> and it shows the same behavior as my build from the trunk: no fancy splash
> image with -q, frame-height = 35, image-size returns (38.57142857142857
> . 15.5).  With Emacs 23.2 from openSUSE 11.4, emacs -q does display the
> splash image.  Could this have to do with the GTK+ version (2.24.7 in
> openSUSE 12.1)?

I doubt it, as Gtk+ is not used for any font metrics or image handling (except for tool bar images).  But different versions of freetype2 and/or the image libraries might influence this.

With your font (-unknown-DejaVu Sans Mono-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1, aka monospace-9) i get:

(38.57142857142857 . 14.466666666666667)

So the width is the same as what you get, but the height differs.  Strange.

Does (image-size (create-image "splash.xpm") t) return (270 . 217) ?

Go to *scratch* and evaluate (assuming there is a character at pos 1):

(font-info (font-at 1))

It should return:

["-unknown-DejaVu Sans Mono-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1" "DejaVu Sans Mono:pixelsize=12:foundry=unknown:weight=normal:slant=normal:width=normal:spacing=100:scalable=true" 12 15 0 0 0]

15 is the font height (i.e. 217 / 15 = 14.466666...).  Do you have that?

	Jan D.