Fallback font issues?

sw
sw2090
Posts: 34
Joined: Sun May 05, 2013 5:02 am
Platform: Windows

Sat Sep 26, 2015 12:47 pm Post

Scrivener does something weird with fallback fonts in Windows 10 (maybe it always did...)
So, what happens is, if you pick a font that does not have a particular character, scrivener seems to go to your list of fonts and finds the first one in the ALPHABETIC list that contains the character, to replace it.

And the first font in that alphabetic list, is usually some terrible, unreadable, signage style font.
I tried to use Noto Sans (the google font family that contains, in theory, all unicode characters) but it looks like Scrivener actually look into that same font series to find a replacement, and defaults to whatever font shows up first.

sw
sw2090
Posts: 34
Joined: Sun May 05, 2013 5:02 am
Platform: Windows

Sat Sep 26, 2015 12:50 pm Post

Also, i realized I brought up this issue in 2013, and got no reply.
come to think of it, I must have just spent the last 2 years with a workaround, which somehow no longer works because I upgraded to windows 10. Maybe some new wonky fonts got installed with the package...

sw2090 wrote:I am having a related issue regarding fonts. I am not sure if it is exactly the same problem, but it seems that windows scrivener does not follow proper RTF font substitution.

(see wikipedia on RTFs: http://en.wikipedia.org/wiki/Rich_Text_Format generic font family names used for font substitution: roman (serif), swiss (sans-serif), modern (monospace), script, decorative, technical.)


For example, while writing with Baskerville Old Face, which does not include a full unicode set, the program substitutes characters that are not included in the font with whichever font is available alphabetically on the windows list. For example, when I type o with diacritics: ŏ, Scrivener replaces the Baskerville, a Serif font, with a non-serif font. Or, if I type in Korean or Chinese (also not in Baskerville), it defaults to whatever font I have on my system shows up first alphabetically to replace it, sometimes using very strange effect, i.e. using a decorative font in place of a roman (serif) font. This is a pain, mainly because there are very few fonts that have full character-sets, the only one that I can think of that does is Arial Unicode MS, but it is a non-Serif font.

However, if one uses an RTF compatible word processor, Serif fonts are substituted with other serif fonts. For example, ŏ, which is not in Baskerville, is replaced with Cambria in MS-Word. I wonder if there is some way to fix this, and have it so that, whenever Scrivener needs to do a font substitution, it will at least choose a font in the same category (generic font family): i.e. Sans-Serif, Serif, etc.