Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MU4 Issue] Set appropriate stave size for new scores so that all staves will fit on page #9984

Closed
oktophonie opened this issue Dec 6, 2021 · 4 comments · Fixed by #11898
Assignees
Labels
engraving P1 Priority: High

Comments

@oktophonie
Copy link
Contributor

oktophonie commented Dec 6, 2021

MuseScore defaults to an A4 or Letter (depending on locale, where it can be worked out) for new scores. The default spatium size is 1.75sp (= a 7mm stave).

If lots of instruments are added (more than ~18 staves) then the entire system can no longer fit on the page and some will fall off the bottom. This is worse if a title frame is also included, as this pushes the entire first system over to p2 (where it also usually doesn't fit):

image

It is proposed to reduce the stave size automatically at the point of score creation to ensure the system will fit on the page. (Obviously the user can alter this afterwards.) The spatium size should be calculated using the page height (for Letter or A4 as appropriate, if known - if it is not known at this time assume Letter as it is slightly less tall), and reducing this according to various relevant default layout options, including the top and bottom margins (15mm), the height of the title frame if present (10mm), padding for frames/footers, minimum stave distance, etc. The final value should be rounded down to the nearest 0.05mm. (Refer also to #9193.)

Note: this should not be performed when opening templates, if the template file contains an explicit <Spatium> setting; the value in the file should be honoured instead. (This was broken for a while in MU4 but fixed in #9985.)

@oktophonie
Copy link
Contributor Author

Something pertaining to this was done in #9092 (now closed).

@Tantacrul Tantacrul added the P1 Priority: High label May 27, 2022
@Tantacrul Tantacrul added this to Needs triage in [MU4.0 BETA1] via automation May 27, 2022
@Tantacrul
Copy link
Contributor

Assigning to @mike-spa. Let us know if there are reasons we should bump this to 4.x and we can do so.

@MarcSabatella
Copy link
Contributor

@mike-spa I think you will find a major complication in implementing this is, sure, you can calculate an appropriate sp value to fit the first system while that system is completely empty, but the moment you start entering things into the score, it doesn't work anymore. The staves start spreading to make room, and if you've chosen a value that just exactly fits, it is pretty well guaranteed to not fit for long. Right now we have an extremely aggressive minimum staff distance to allow empty staves to require very little space, which is great for the empty staves. But that min distance is too small to allow for anything much between the staves.

I would propose that for a calculation like this there should be an empirically-determined "average real-world staff distance" that gets used instead of the actual min distance from the style settings. Then staff justification can take over to fill the page, while still leaving room for people to actually enter notes. That should provide a pretty reasonable experience.

I would assume that this much would be doable quickly, but if it gets put off until 4.x, it should also be considered to do even better by allow the sp value to change dynamically as pages get crowded, and even to change from page to page. That's a huge can of worms, though. Not sure what you would think about that, @oktophonie ...

@oktophonie
Copy link
Contributor Author

I'd call it a can of worms of a fairly universal standard size.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
engraving P1 Priority: High
Projects
No open projects
Development

Successfully merging a pull request may close this issue.

4 participants