GNU bug report logs - #77841
Some svg image's black color is replaced by emacs's theme foreground color

Previous Next

Package: emacs;

Reported by: Billy Lei <LeiYiXia29 <at> outlook.com>

Date: Wed, 16 Apr 2025 12:16:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Billy Lei <LeiYiXia29 <at> outlook.com>
To: 77841 <at> debbugs.gnu.org
Subject: bug#77841: Some svg image's black color is replaced by emacs's theme foreground color
Date: Wed, 16 Apr 2025 20:09:46 +0800
I found this issue when debugging org LaTeX preview, see 
https://list.orgmode.org/87cydchjqn.fsf <at> gmail.com/T/#ed7ba8310f82e8be8a2e7360df1568ed485434df3

> When using themes with background color set to #000000, and org-preview-default-process is set to dvisvgm, the LaTeX fragments are displayed incorrectly.
> 
> To reduplicate:
> 
> 1. Switch to a theme with background color set to #000000 (like Modus Vivendi)
> 2. Set org-preview-default-latex-process to dvisvgm
> 3. Create an org-mode document. Write some LaTeX fragment and press C-c C-x C-l to preview LaTeX fragment.
> 4. The LaTeX preview is displayed as a white rectangle.
> 
> After debugging, I found that it is because dvisvgm omitts the default #000 color value when generating SVG file, and emacs has a unique way of displaying the SVG, which caused foreground color to be applied to it.
> 
> A solution is to change org-format-latex-options to use transparent background by default. I've attached this fix.

It turned out that emacs displays svg images differently compared to an 
image viewer. I can reduplicate this issue when I use emacs to view this 
svg image, which emacs replaces the image's black color with the current 
theme's foreground color:

https://commons.wikimedia.org/wiki/File:Flag_of_the_German_Democratic_Republic.svg

See also (Chinese): https://emacs-china.org/t/emacs-30-1-svg/29217




This bug report was last modified 8 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.