SMuFL distinguishes between the augmentation dot and the repeat dot (used in repeat bar lines).
This patch:
- adds the MScore font a separate glyph for repeat dot. The glyph is encoded in the same code point used by SMuFL and is currently a simple reference to the augmentation dot.
- changes the BarLine class draw code to use this glyph instead of the augmentation dot.
- all SMuFL 0.7 entities (as names or symbol id) are listed
- a few (15 in all) additional symbols are added to the end for
- SMuFL stylistic alternates MuseScore needs to access directly
- precomposed ornaments, SMuFL provides as sequences of glyphs
- glyphs SMuFL does not provides (yet?), but has been used as symbols
Updated mscore/glyphnames.json to match the above
Updated code points which were using SymId which have changed from SMuFL 0.6 to 0.7
Fixed note heads palette.
Note: The Dynamics palette is broken, as it accesses the mscore glyphs directly, but the palettes use Bravura. The usage of HTML texts in this palette is unclear: please advise.
In the mscore font, the augmentation dot had an extra right side bearing, which resulted in extra space when used as dot for repeat bar lines and is presumably useless when used as an augmentation dot.
The right side bearing has been reset to 0.
Code:
* glyphs for '+', '(' and ')' registered for time sigs. added to MScore (in the same code points as SMuFL)
* glyphs for prolationes defined in SMuFL added to MScore registered for time sigs. (in the same code ponts as SMuFL; some existed, but in different code points)
* transcoding ASCII -> SMuFL for '+', '(' and ')' added to Element::toTimeSigString()
UI (not final for font problems):
* In Time Sig Properties dlg box, converted "Common" and "Alla Breve" strings to corresponding symbols
* UI for input of prolationes added to Time Sig Properties dlg box.
Also:
* Fixed calculation of Time Sig bounding box (also fixes horiz. alignment of numerator and denominator with different width).
As the flat sign shape is much more asymmetric that other accidental shapes, shifting it slightly to the right makes it appear more optically centred. Metrics have not been changed.
Symbols names stored in 1.3 scores (or previous 2.0 scores) are not recognized and replaced by a default fall-back symbol.
Added a vector and a Sym static function for re-mapping of old names into symbol IDs.
Also fixed:
- renamed "mensuralProlation1...11" to names expressing the meaning of the glyphs (in SymId, Sym::symNames, Sym::symUserNames and .json files);
- some details in fonts/bravura/glyphnames.json;
- added several glyphs to fonts/mscore/gplyhnames.json;
- corrected Sym::userName2id() to really return SymId::noSym on name not found,, rather than -1.
TAB: The two TAB clefs showed the same in the palette(s) and the 'flourished' one was displaying nothing in the score.
Fixed by adjusting TAB clef mapping in fonts/bravura/glyphnames.json and adding the proper mapping to fonts/mscore/glyphnames.json and corrected the symbol set for TAB in Clef::layout1()
PERC: The PERC2 clef has been dropped at some point in the past: added some comments to ClefType definition, to Clef::layout1() function and to MuseScore::newClefPalette() function to make the situation more evident.
In practice, there almost no change in the code proper itself.
Glyphs with references in .TTF font are rendered with errors under Windows. This patch replaces the clef+numbers glyphs (which were using references to the individual components) with actual outlines.
In addition, position of numbers on bass clef have been improved (better balanced above and below).
It should re-enable all the note head functionality as per ver. 1.3, with most (all?) equal results.
- No new glyph added to font(s)
- Existing mscore glyphs have been matched to SMUFL note head symbols:
-- partly on similarity of shape
-- partly on similarity of semantics (in particular most of the noteDo..., noteRe..., ... heads)
- The dropped HEAD_BREVIS_ALT note head group have been re-instated (dropping it was a regression from 1.3)
- fonts/mscore/glyphnames.json has been updated
- fonts/mscore/metadata.json has NOT been updated (I have not understood its contents)
It may be improved incrementally, should the need arise.
The mscore font is lacking some of the glyphs in the SMUFL set. Clef+numbers glyphs are required to simply SMUFL integration.
Glyphs and code points added:
Treble clef 15 below: 0xe1d6
Treble clef 8 below: 0xe1d7
Treble clef 8 above: 0xe1d8
Treble clef 15 above: 0xe1d9
Bass clef 15 below: 0xe1da
Bass clef 8 below: 0xe1db
Bass clef 8 above: 0xe1dc
Bass clef 15 above: 0xe1dd
Metrics: same as for the base clef glyphs.
Numbers for the bass clef have positioned to clear the staff for standard 4th line position (transposing clefs are not really used for other position of the F clef).
Stems were not properly attached to brevis. This derived from several factors:
*) mscore-20.xml were not precise for brevis and squared brevis glyphs
*) glyphs themselves were displaced horizontally (probably to attempt some centring)
*) recent changes to centre note heads in segments assume specific glyph positioning
All these factors have been made consistent among themselves.
This commit only fixes Emmentaler font; fix for Gonville will follow once this change will be tested enough.
*) Add a serif font for fret marks (built-in FreeSerifMscore)
*) Use built-in FreeSans as fret mark sans font instead of special font
*) Split generic 6-str and 4-str presets into "simple" and "full" each
*) Remove "Bandurria" preset (now equal to 6-str full)