From: Eli Zaretskii <eliz@gnu.org>
To: "Gerd Möllmann" <gerd.moellmann@gmail.com>
Cc: eller.helmut@gmail.com, emacs-devel@gnu.org
Subject: Re: Building the igc branch on MS-Windows
Date: Sat, 27 Apr 2024 18:38:46 +0300 [thread overview]
Message-ID: <86jzkivmrd.fsf@gnu.org> (raw)
In-Reply-To: <m25xw2hlhz.fsf@pro2.fritz.box> (message from Gerd Möllmann on Sat, 27 Apr 2024 17:29:44 +0200)
> From: Gerd Möllmann <gerd.moellmann@gmail.com>
> Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
> Date: Sat, 27 Apr 2024 17:29:44 +0200
>
> Helmut Eller <eller.helmut@gmail.com> writes:
>
> >> But its contents are weird
> >
> > In pdumper:
> >
> > /* There are three kinds of font objects that all use PVEC_FONT,
> > distinguished by their size. Font specs and entities are
> > harmless data carriers that we can dump like other Lisp
> > objects. Fonts themselves are window-system-specific and
> > need to be recreated on each startup. */
> >
> > could this be the reason?
>
> I think I spider. Unbelievable. Whoever did that should be shot. No
> that's too mild. He shall use Visual C++ for one year :-).
>
> Good catch! Thanks Helmut!
There's more, I think. font.h says this near the end of 'struct font':
/* Font-driver for the font. */
struct font_driver const *driver;
/* There are more members in this structure, but they are private
to the font-driver. */
};
And indeed, w32font.h does this:
/* The actual structure for a w32 font, that can be cast to struct font.
The Uniscribe backend extends this. */
struct w32font_info
{
struct font font;
TEXTMETRICW metrics;
unsigned int glyph_idx;
struct w32_metric_cache **cached_metrics;
int n_cache_blocks;
HFONT hfont;
};
And then w32uniscribe.c does
/* Extension of w32font_info used by Uniscribe and HarfBuzz backends. */
struct uniscribe_font_info
{
struct w32font_info w32_font;
/* This is used by the Uniscribe backend as a pointer to the script
cache, and by the HarfBuzz backend as a pointer to a hb_font_t
object. */
void *cache;
/* This is used by the HarfBuzz backend to store the font scale. */
double scale;
};
next prev parent reply other threads:[~2024-04-27 15:38 UTC|newest]
Thread overview: 116+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-24 15:06 Building the igc branch on MS-Windows Eli Zaretskii
2024-04-24 15:20 ` Gerd Möllmann
2024-04-24 16:07 ` Eli Zaretskii
2024-04-24 16:48 ` Gerd Möllmann
2024-04-24 16:59 ` Gerd Möllmann
2024-04-24 19:09 ` Eli Zaretskii
2024-04-24 19:44 ` Gerd Möllmann
2024-04-25 5:38 ` Eli Zaretskii
2024-04-25 6:17 ` Gerd Möllmann
2024-04-25 4:54 ` Helmut Eller
2024-04-25 5:30 ` Eli Zaretskii
2024-04-25 6:38 ` Helmut Eller
2024-04-25 7:39 ` Gerd Möllmann
2024-04-25 10:34 ` Eli Zaretskii
2024-04-25 11:09 ` Eli Zaretskii
2024-04-25 11:16 ` Eli Zaretskii
2024-04-25 11:59 ` Gerd Möllmann
2024-04-25 13:22 ` Eli Zaretskii
2024-04-25 13:29 ` Gerd Möllmann
2024-04-25 11:55 ` Gerd Möllmann
2024-04-25 13:29 ` Eli Zaretskii
2024-04-25 14:00 ` Gerd Möllmann
2024-04-25 14:34 ` Eli Zaretskii
2024-04-25 14:40 ` Gerd Möllmann
2024-04-25 12:35 ` Helmut Eller
2024-04-25 12:40 ` Gerd Möllmann
2024-04-26 7:18 ` Helmut Eller
2024-04-26 7:38 ` Gerd Möllmann
2024-04-26 7:41 ` Eli Zaretskii
2024-04-26 8:11 ` Gerd Möllmann
2024-04-26 9:13 ` Helmut Eller
2024-04-26 9:31 ` Gerd Möllmann
2024-04-26 10:55 ` Eli Zaretskii
2024-04-26 11:27 ` Po Lu
2024-04-26 13:04 ` Gerd Möllmann
2024-04-26 13:42 ` Po Lu
2024-04-26 13:46 ` Gerd Möllmann
2024-04-26 14:35 ` Gerd Möllmann
2024-04-26 10:35 ` Eli Zaretskii
2024-04-26 10:56 ` Gerd Möllmann
2024-04-26 11:25 ` Eli Zaretskii
2024-04-26 11:38 ` Po Lu
2024-04-26 12:58 ` Gerd Möllmann
2024-04-26 14:49 ` Eli Zaretskii
2024-04-26 14:53 ` Gerd Möllmann
2024-04-27 0:21 ` Po Lu
2024-04-27 6:13 ` Eli Zaretskii
2024-04-27 6:48 ` Gerd Möllmann
2024-04-27 7:13 ` Eli Zaretskii
2024-04-26 12:58 ` Gerd Möllmann
2024-04-26 15:11 ` Eli Zaretskii
2024-04-26 15:27 ` Gerd Möllmann
2024-04-26 11:32 ` Eli Zaretskii
2024-04-26 13:09 ` Gerd Möllmann
2024-04-26 13:12 ` Gerd Möllmann
2024-04-26 15:01 ` Helmut Eller
2024-04-26 15:30 ` Gerd Möllmann
2024-04-26 15:39 ` Eli Zaretskii
2024-04-26 17:03 ` Gerd Möllmann
2024-04-26 18:24 ` Helmut Eller
2024-04-26 18:37 ` Gerd Möllmann
2024-04-26 16:57 ` Gerd Möllmann
2024-04-26 18:11 ` Helmut Eller
2024-04-26 18:30 ` Gerd Möllmann
2024-04-26 20:45 ` Helmut Eller
2024-04-27 4:22 ` Gerd Möllmann
2024-04-27 5:18 ` Ihor Radchenko
2024-04-27 5:26 ` Gerd Möllmann
2024-04-27 5:54 ` Ihor Radchenko
2024-04-27 6:07 ` Gerd Möllmann
2024-04-27 6:31 ` Gerd Möllmann
2024-04-27 6:22 ` Eli Zaretskii
2024-04-27 6:29 ` Ihor Radchenko
2024-04-27 7:11 ` Eli Zaretskii
2024-04-27 7:40 ` Ihor Radchenko
2024-04-27 6:45 ` Gerd Möllmann
2024-04-27 6:11 ` Eli Zaretskii
2024-04-27 6:58 ` Eli Zaretskii
2024-04-27 7:17 ` Eli Zaretskii
2024-04-27 8:38 ` Gerd Möllmann
2024-04-27 11:15 ` Eli Zaretskii
2024-04-27 12:09 ` Gerd Möllmann
2024-04-27 12:33 ` Eli Zaretskii
2024-04-27 12:37 ` Eli Zaretskii
2024-04-27 13:26 ` Gerd Möllmann
2024-04-27 14:54 ` Eli Zaretskii
2024-04-27 15:25 ` Gerd Möllmann
2024-04-27 15:40 ` Eli Zaretskii
2024-04-27 15:47 ` Helmut Eller
2024-04-27 15:48 ` Gerd Möllmann
2024-04-27 7:23 ` Gerd Möllmann
2024-04-27 7:33 ` Eli Zaretskii
2024-04-27 9:04 ` Gerd Möllmann
2024-04-27 11:44 ` Eli Zaretskii
2024-04-27 12:07 ` Eli Zaretskii
2024-04-27 12:41 ` Gerd Möllmann
2024-04-27 13:23 ` Gerd Möllmann
2024-04-27 12:32 ` Gerd Möllmann
2024-04-27 14:11 ` Gerd Möllmann
2024-04-27 14:47 ` Eli Zaretskii
2024-04-27 15:09 ` Gerd Möllmann
2024-04-27 15:15 ` Helmut Eller
2024-04-27 15:29 ` Gerd Möllmann
2024-04-27 15:38 ` Eli Zaretskii [this message]
2024-04-27 15:42 ` Gerd Möllmann
2024-04-27 16:37 ` Gerd Möllmann
2024-04-27 15:23 ` Gerd Möllmann
2024-04-28 6:31 ` Eli Zaretskii
2024-04-28 6:44 ` Gerd Möllmann
2024-04-27 7:17 ` Gerd Möllmann
2024-04-27 12:11 ` Helmut Eller
2024-04-27 12:32 ` Eli Zaretskii
2024-04-27 13:41 ` Helmut Eller
2024-04-26 8:12 ` Helmut Eller
2024-04-26 8:57 ` Gerd Möllmann
2024-04-26 10:39 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=86jzkivmrd.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=eller.helmut@gmail.com \
--cc=emacs-devel@gnu.org \
--cc=gerd.moellmann@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.