unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#34577: 27.0.50; Identical face specification yields different line heights on different platforms
@ 2019-02-19 19:25 Markus Triska
  2019-02-19 19:42 ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Markus Triska @ 2019-02-19 19:25 UTC (permalink / raw)
  To: 34577


Please start Emacs with "emacs -Q" and evaluate:

    (defface height-test
      '((((class color))
         (:family "DejaVu Sans Mono"
                  :height 180
                  :weight normal
                  :slant normal)))
      "Face for height test")

Using Debian on my machine, then evaluating the form:

    (aref (font-info (face-font 'height-test)) 3)

yields: 29

In contrast, using OSX and Emacs from Macports (please see below for the
exact configuration), evaluating the same form yields: 28.

For one of my applications, I would like to obtain identical results on
all platforms, and the different line heights currently cause different
Emacs behaviour regarding scrolling etc. on these platforms.

Is there a way to reliably obtain the same results on these platforms?

Thank you and all the best!
Markus



For comparison, the results of the following form are shown below:

    (mapc (lambda (e)
            (insert (format "\n%s" e)))
          (font-info (face-font 'height-test)))

Result on OSX:

    -PfEd-DejaVu Sans Mono-normal-normal-normal-*-24-*-*-*-m-0-iso10646-1
    DejaVu Sans Mono:pixelsize=24:foundry=PfEd:weight=normal:slant=normal:width=normal:spacing=100:scalable=true
    24
    29
    0
    0
    0
    14
    23
    6
    14
    14
    /opt/local/share/fonts/dejavu-fonts/DejaVuSansMono.ttf
    nil

Result on Debian:

    -unknown-DejaVu Sans Mono-normal-normal-normal-*-24-*-*-*-m-0-iso10646-1
    DejaVu Sans Mono:pixelsize=24:foundry=unknown:weight=normal:slant=normal:width=normal:spacing=100:scalable=true
    24
    28
    0
    0
    0
    14
    22
    6
    14
    14
    /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf
    nil




In GNU Emacs 27.0.50 (build 1, x86_64-apple-darwin18.0.0, X toolkit, Xaw scroll bars)
 of 2018-11-15 built on OSX
Repository revision: b4eb908f858284a7962851fd99c94598f76afa6f
Windowing system distributor 'The X.Org Foundation', version 11.0.11804000
System Description:  Mac OS X 10.14.2

Configured using:
 'configure --prefix=/opt/local --without-ns --without-dbus
 --without-gconf --without-libotf --without-m17n-flt --without-gpm
 --with-gnutls --with-xml2 --with-modules --infodir
 /opt/local/share/info/emacs --with-json --with-x-toolkit=lucid
 --without-xaw3d --without-imagemagick --with-xpm --with-jpeg
 --with-tiff --with-gif --with-png --with-lcms2 --without-rsvg
 --with-xft 'CFLAGS=-pipe -Os
 -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk
 -arch x86_64' 'CPPFLAGS=-I/opt/local/include
 -isysroot/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk'
 'LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names -lfreetype
 -lfontconfig -Wl,-no_pie
 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk
 -arch x86_64''

Configured features:
XPM JPEG TIFF GIF PNG NOTIFY KQUEUE ACL GNUTLS LIBXML2 FREETYPE XFT ZLIB
TOOLKIT_SCROLL_BARS LUCID X11 XDBE XIM MODULES THREADS JSON LCMS2 GMP

Important settings:
  value of $LC_CTYPE: UTF-8
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix







^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#34577: 27.0.50; Identical face specification yields different line heights on different platforms
  2019-02-19 19:25 bug#34577: 27.0.50; Identical face specification yields different line heights on different platforms Markus Triska
@ 2019-02-19 19:42 ` Eli Zaretskii
  2019-06-10 15:07   ` Markus Triska
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2019-02-19 19:42 UTC (permalink / raw)
  To: Markus Triska; +Cc: 34577

> From: Markus Triska <triska@metalevel.at>
> Date: Tue, 19 Feb 2019 20:25:29 +0100
> 
> For one of my applications, I would like to obtain identical results on
> all platforms, and the different line heights currently cause different
> Emacs behaviour regarding scrolling etc. on these platforms.
> 
> Is there a way to reliably obtain the same results on these platforms?

Not when each platform has its own font back-end, no.





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#34577: 27.0.50; Identical face specification yields different line heights on different platforms
  2019-02-19 19:42 ` Eli Zaretskii
@ 2019-06-10 15:07   ` Markus Triska
  2019-06-10 17:03     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Markus Triska @ 2019-06-10 15:07 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 34577

Eli Zaretskii <eliz@gnu.org> writes:

>> Is there a way to reliably obtain the same results on these platforms?
>
> Not when each platform has its own font back-end, no.

As far as I can tell, xft is the font back-end that is used on both
platforms. For example, when I evaluate the following form:

    (frame-parameter nil 'font-backend)

then on Debian, this yields: (xft x)
and on OSX, this yields:     (xft)

Is this useful to obtain consistent behaviour? Can I do anything to
configure this identically? Is more information needed to do this?

Thank you and all the best!
Markus





^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#34577: 27.0.50; Identical face specification yields different line heights on different platforms
  2019-06-10 15:07   ` Markus Triska
@ 2019-06-10 17:03     ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2019-06-10 17:03 UTC (permalink / raw)
  To: Markus Triska; +Cc: 34577

> From: Markus Triska <triska@metalevel.at>
> Cc: 34577@debbugs.gnu.org
> Date: Mon, 10 Jun 2019 17:07:46 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> Is there a way to reliably obtain the same results on these platforms?
> >
> > Not when each platform has its own font back-end, no.
> 
> As far as I can tell, xft is the font back-end that is used on both
> platforms. For example, when I evaluate the following form:
> 
>     (frame-parameter nil 'font-backend)
> 
> then on Debian, this yields: (xft x)
> and on OSX, this yields:     (xft)
> 
> Is this useful to obtain consistent behaviour? Can I do anything to
> configure this identically? Is more information needed to do this?

I'm afraid you've exceeded the limits of my expertise on these
matters.  I could mumble something about differences of rounding to
integral pixel values, but instead I will CC Handa-san, who might have
a better idea of what is involved here.





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-06-10 17:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-19 19:25 bug#34577: 27.0.50; Identical face specification yields different line heights on different platforms Markus Triska
2019-02-19 19:42 ` Eli Zaretskii
2019-06-10 15:07   ` Markus Triska
2019-06-10 17:03     ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).