abcjs icon indicating copy to clipboard operation
abcjs copied to clipboard

Rendering multiple voices

Open jbouzi opened this issue 2 years ago • 1 comments

Found that abcjs render sheets with multiple voices different from easyABC on two important points.

  1. Rests for several measures (e.g. Z8 ) will render as one measure as Z with an eight above, which is handy if it where only one voice, however it becomes difficult to read together with the other voices.
  2. EasyABC follows the line-breaks from the first voice in the file. It means that all voices always have the same number of measures per line. Also very good if you want to follow multiple voices, e.g. the score for the conductor in an orchestra.

Is there maybe a setting I'm missing?

jbouzi avatar Dec 26 '22 22:12 jbouzi

The first thing is a bug because I don't think I've considered multi voice and multi measure rests together before. How should it look? If it fits on one line then I guess the measure should stretch to line up with the other measures. If it doesn't fit on one line, though, what should happen? For instance, if a part has Z32. Would that be broken up into 4 Z8 if the score has 8 measures per line?

The second thing is an ambiguity in the standard, I think. I am expecting the ABC string to lay out the measures the way the user wants them displayed. The user can choose how many measures on a line. I can see that having abcjs do the calculation would be nice because there probably isn't a scenario where the user means what they put in the ABC string.

paulrosen avatar Jan 08 '23 17:01 paulrosen