google / fonts

Font files available from Google Fonts, and a public issue tracker for all things Google Fonts
https://fonts.google.com
18.22k stars 2.62k forks source link

[Noto Serif] Incorrect positioning of Cyrillic diacritics U+0483..U+0488 over Cyrillic letters in "Noto Serif" (correct in "Noto Sans") #7473

Open verdy-p opened 7 months ago

verdy-p commented 7 months ago

Specify the font name in title with a short description of the bug. Please report any issue related to Noto fonts here. (not relevant, this is for script-specific fonts, not the base "Noto Sans" or "Noto Serif" that are not selectable there). Report any issue with Google Icon/Symbols here (not relevant).

Describe the bug In "Noto Serif", the Cyrillic diacritics U+0483..U+0488 are incorrectly positioned to the right of Cyrillic letters after which they are combined, instead of being centered on these letters. The positioning is correct in "Noto Sans".

These combining diacritics, not encoded in the generic Diacritics bloc (titlos above, or surrounding accents) are mostly used for noting traditional Cyrillic numbers, still used in Church Slavonic, and that were used in old Russian, where Cyrillic letters take their numerical value according to the Greek alphabetic order from which Cyrillic letter forms were inherited, rather than their modern Cyrillic alphabetic order. (These Cyrillic diacritics for numbers have some equivalents in the Greek alphabet for their numerals, using either a prepended lower numerical mark, or an appended upper numerical mark, or a combining psili pneumata, and sometimes the Cyrillic diacritics for some more recent extension). A few other additional Cyrillic diacritics for numerals are present in Cyrillic Extended blocks.

To Reproduce Just an example (there are many combinations for each one of the 27 Cyrillic base letters and every numeral diacritic marking a multiplier by a power of ten, instead of using the positional decimal system with a modern digit zero):

Expected behavior

Screenshots In examples below, the diacritics are rendered with the Cyrillic small letter o, for clarity, but this occurs as well with every other base Cyrillic (capital or small) letters.

Note that:

typiconman commented 4 months ago

Noto Serif is not a font that anyone will ever use for Church Slavonic, since it does not have the stylistically correct glyph shapes. Why not add proper support for Church Slavonic to Google products, something that I've asked for four years ago (#2403), something that's simple to do (the fonts are ready to install), and something that, alas, no one in Google seems to be interested in.

verdy-p commented 4 months ago

OK, may be it's not for Church Slavonic, but these numeral diacritical marks are generic for Cyrillic (including old Russian). And they are correctly rendered/positioned with "Noto Sans". I just ask for coherent rendering with "Noto Serif". Nothing forbids creating font variants ("Sans" and "Serif" styles) for Old Slavonic if we want other shapes.

But alternate shapes for Old Slavonic letters may be encoded in existing "Noto [Sans/Serif]", using Unicode variation sequences (and "dlng"/"slang" metadata, plus language/script feature tables):

This is independent of the support of Cyrillic old numerals with U+0483..U+0488 numeral diacritics (which should not be sensitive to the language), which is already correct as implemented in "Noto Sans" (typically used in UI where these numerals are rarely needed), only incorrect in "Noto Serif" which has lower coverage (typically used as default fonts and preferred for rendering sourced books, including old books in Russian, Bulgarian, Ukrainian, Macedonian, Mongolian... just like old books in Greek or Latin). I just ask here for completing the coverage of "Noto Serif" to match the existing coverage of "Noto Sans" for these Cyrillic diacritical marks.

typiconman commented 4 months ago
  1. The only diacritics that are useful for anything other than Old Church Slavonic are the combining acute accent and the diaeresis.
  2. Sans and Serif fonts are useless for Old Church Slavonic.
moyogo commented 4 months ago

This bug report should be on in the notofonts/latin-greek-cyrillic repository.