bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#61974: 29.0.60; customize checkbox and radio widgets don't render on


From: Po Lu
Subject: bug#61974: 29.0.60; customize checkbox and radio widgets don't render on macOS
Date: Sun, 05 Mar 2023 16:01:10 +0800
User-agent: Gnus/5.13 (Gnus v5.13)

Eli Zaretskii <eliz@gnu.org> writes:

>> Date: Sat, 4 Mar 2023 17:35:16 -0800
>> From: David Caldwell <david@porkrind.org>
>> 
>> Fails:
>> 
>>    (insert-image (find-image '((:file "checked.svg"))))
>> 
>> Works:
>> 
>>    (insert-image (find-image '((:file "splash.svg"))))
>> 
>> It appears to be because the checkbox and radio svgs in etc/images all
>> use height="1em" and the mac native renderer doesn't like that.
>> 
>> It works with rsvg because the emacs code that interfaces with rsvg code
>> passes some extra styling info to it so that it can render that properly
>> (image.c:11226 in the emacs-29 branch for me today).
>> 
>> Unfortunately the native renderer in nsimage.m doesn't do this. I spent
>> some time today trying to figure it out, but it appears that the cocoa
>> apis just don't have this feature, so it would have to be done some
>> other way.
>> 
>> I can confirm this is the issue by opening "etc/images/checked.svg",
>> hitting "C-c C-c" to edit, changing the "1em" to "16" and "C-c C-c"ing
>> again to re-render it. It will appear with a non-percentage height.
>
> Does it work to use the checked.xpm image instead?  If it does,
> perhaps we should switch the macOS build to using the XPM images
> (assuming the problem you report is common to all macOS builds, that
> is).

Shouldn't we disable SVG display with native image APIs instead?
In general, the native image API code we have at present cannot
display SVG images as well as librsvg, because it cannot know the
scale at which the image will be displayed.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]