GNU bug report logs -
#73730
31.0.50; Support for color fonts on MS-Windows
Previous Next
Reported by: Cecilio Pardo <cpardo <at> imayhem.com>
Date: Thu, 10 Oct 2024 11:17:01 UTC
Severity: wishlist
Found in version 31.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #93 received at 73730-done <at> debbugs.gnu.org (full text, mbox):
> Date: Thu, 24 Oct 2024 22:19:06 +0200
> From: Cecilio Pardo <cpardo <at> imayhem.com>
>
> New version attached.
>
> - Added comments
> - Use SAFE_ALLOCA instead of alloca.
> - Added two lisp functions:
> w32-dwrite-available to find out is dwrite is working
> w32-dwrite-reinit to reinitialize dwrite, optionally
> changing render parameters (gamma, cleartype level, contrast).
> Can go back to defaults passing nil.
> - Updated NEWS and changelog.
Thanks, installed on the master branch, and closing the bug.
I also installed minor followup changes:
I removed the eassert from this fragment:
/* IDWriteFactory2 is only available on Windows 8.1 and later.
Without this, we can't use color fonts. So we disable DirectWrite
if it is not available. */
hr = dwrite_factory->lpVtbl->QueryInterface (dwrite_factory,
&IID_IDWriteFactory2,
(void **) &dwrite_factory2);
if (FAILED (hr))
{
DebPrint (("DirectWrite HRESULT failed: (%d) QueryInterface IDWriteFactory2\n", hr));
RELEASE_COM (dwrite_factory);
FreeLibrary (direct_write);
return;
}
That's because otherwise the debug build of Emacs will abort on
Windows 7 and 8.0, which is not what we want.
Also, I've added some information about the default values of the
parameters to the doc string of w32-dwrite-reinit; please see if I
made some mistakes there, as the default values don't seem to be
documented anywhere I could see.
This bug report was last modified 197 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.