Changing musicsal font results in unreadable repeat barlines

• Nov 9, 2018 - 10:03
Reported version
P1 - High
Graphical (UI)
S3 - Major

OS: Windows 10 (10.0), Arch.: x86_64, MuseScore version (64-bit): 3.0.0, revision: 9e94cec

Steps to reproduce:
* Create a new score, font is Emmentaler
* Insert repeat start end end
* Switch score font to Bravura (or any other font)

The repeat barlines are rendered too narrow and are unreadable. Esp. with MuseJazz one sees only a thick block.

Even switching back to Emmentaler does not heal the problem.

* PDF after creation (all fine): RepeatBarTestOriginal.pdf
* PDFs with switched fonts: RepeatBarTest-fontname.pdf
* The Musescore file with the problem: Repeat_Bar_Test.mscz


Status active needs info

The repeat barlines are rendered too narrow and are unreadable. Esp. with MuseJazz one sees only a thick block.
You mean to wide, not to narrow, don't you?

This seems to be due to inappropriate and non-default settings for barlines (check Format/Style/Barlines and reset them all) and several other settings.

I've noticed that too, while working on updating the templates to 3.0 (see, esp. the Jazz ones, but though this were just the old settings (for the Jazz templates) from 2.x.

I guess you started from the Jazz template?

Check the attached, should look more reasonable.

Attachment Size
Repeat_Bar_Test.mscz 3.11 KB

No, for the bug report I started a new session with a newly started MuseScore with the "General->Treble Clef" template.

Thank you for the tips. Will try them later.

Status needs info active
Workaround No Yes
Priority P2 - Medium

Ah, that is a bad one, changing the Musical Font also changes the barline settings away from their defaults

Status fixed active

Doesn't really work, it still changes the defaults (for no apparent reason) but now to different ones
It really shouldn't touch those settings at all, leave at whatever they were set before the symbols font change

It is more that just repeat barlines that get changed, all the following do:

      static std::list<std::pair<QString, Sid>> engravingDefaultsMapping = {
            { "staffLineThickness",            Sid::staffLineWidth },
            { "stemThickness",                 Sid::stemWidth },
            { "beamThickness",                 Sid::beamWidth },
            { "beamSpacing",                   Sid::beamDistance },
            { "legerLineThickness",            Sid::ledgerLineWidth },
            { "legerLineExtension",            Sid::ledgerLineLength },
            { "slurEndpointThickness",         Sid::SlurEndWidth },
            { "slurMidpointThickness",         Sid::SlurMidWidth },
            { "thinBarlineThickness",          Sid::barWidth },
            { "thinBarlineThickness",          Sid::doubleBarWidth },
            { "thickBarlineThickness",         Sid::endBarWidth },
            { "dashedBarlineThickness",        Sid::barWidth },
            { "barlineSeparation",             Sid::doubleBarDistance },
            { "barlineSeparation",             Sid::endBarDistance },
            { "repeatBarlineDotSeparation",    Sid::repeatBarlineDotSeparation },
            { "bracketThickness",              Sid::bracketWidth },
            { "hairpinThickness",              Sid::hairpinLineWidth },
            { "octaveLineThickness",           Sid::ottavaLineWidth },
            { "pedalLineThickness",            Sid::pedalLineWidth },
            { "repeatEndingLineThickness",     Sid::voltaLineWidth },
            { "lyricLineThickness",            Sid::lyricsLineThickness },
            { "tupletBracketThickness",        Sid::tupletBracketWidth }
Priority P2 - Medium P1 - High
Status active fixed

Well, guess this is by design, these fonts bring their own set of defaults for these settings.
Weird though that Emmentaler is the default font, but not it's settings for Thick barline distance (0.65sp vs. 0.73sp), Distance double barline (0.46sp vs. 0.40sp) and Repeat dots barline distance (0.48 vs. 0.63)
Should those defaults get fixed?

Attached a score with all(?) elements that do (potentially) get changed on a Musical Font change.

Attachment Size
fonttest.mscz 4.37 KB

In reply to by Jojo-Schmitz

It makes sense, that each musical font has is's own default distances. If we think this through, it makes no sense, to have one default for these distances, independent from the font. May be, that a reset for these distances should set to the default of the chosen font?

Sorry for the weird idea!

We should reset all values which could be changed by a font change to default (emmentaler) before applying the font specific values. This would fix the strange behaviour that when you change back a score font the style values will not necessarily be reverted (bc. the old font did not define them).

Status PR created fixed

Fixed in branch master, commit 524d30e2e0

fix #278219: MuseJazz: Double barline distance is much too small

this is a Bug in MuseScore in the interpretation of barlineSeparation.
If we look in the SMuFL spec we see:

"barlineSeparation": The default distance between multiple barlines when
locked together, e.g. between two thin barlines making a double barline,
or a thin and a thick barline making a final barline, measured from the
right-hand edge of the left barline to the left-hand edge of the right

MuseScore takes the distance as distance between the center of these.
This means we have to add one thinBarlineThickness to
this distance to get it right.

and related to fix #277991: adjust barline style defaults to those of
Emmentaler and its metadata.json, so changing a way from and back to
Emmentaler doesn't change the barline styles