Optional
alignWhether to let Vexflow align rests to preceding or following notes (Vexflow option). Default false (0). This can naturally reduce collisions of rest notes with other notes. Auto mode (2) only aligns rests when there are multiple voices in a measure, and at least once at the same x-coordinate. Auto is the recommended setting, and would be default, if it couldn't in rare cases deteriorate rest placement for existing users. The on mode (1) always aligns rests, also changing their position when there is no simultaneous note at the same x-coordinate, which is nonstandard.
Optional
autoWhether to automatically create beams for notes that don't have beams set in XML.
Optional
autoOptions for autoBeaming like whether to beam over rests. See AutoBeamOptions interface.
Optional
autoSet to true if subsequent measures full of rests should be auto-converted to multi-rest measure. Default is true This works across instruments- If all instruments have subsequent measures with nothing but rests, multirest measures are generated
Optional
autoAutomatically resize score with canvas size. Default is true.
Optional
backendRender Backend, will be SVG if given undefined, "SVG" or "svg", otherwise Canvas.
Optional
coloringWhether to enable coloring noteheads and stems, depending on coloringMode.
Optional
coloringDefines the mode that is used for coloring: XML (0), Boomwhacker(1), CustomColorSet (2). Default XML. If coloringMode.CustomColorSet (2) is chosen, a coloringSetCustom parameter must be added.
Optional
coloringSet of 8 colors for automatic coloring of 7 notes from C to B + rest note in HTML form (e.g. "#00ff00" for green).
Optional
colorWhether to color the stems of notes the same as their noteheads. Default false.
Optional
cursorsDefines multiple simultaneous cursors. If left undefined the standard cursor will be used.
Optional
darkDark mode (black background, white notes). Simply sets defaultColorMusic and EngravingRules.PageBackgroundColor.
Optional
defaultDefault color for Labels like title or lyrics. Default black (undefined).
Optional
defaultDefault color for all musical elements including key signature etc. Can be used for dark mode etc. Default undefined.
Optional
defaultDefault color for a note head (without stem). Default black (undefined).
Only considered before loading a sample, not before render.
To change the color after loading a sample and before render, use note(.sourceNote).NoteheadColor.
The format is Vexflow format, either "#rrggbb" or "#rrggbboo" where
Optional
defaultDefault color for rests. Default black (undefined).
Optional
defaultDefault color for a note stem. Default black (undefined).
Optional
defaultDefault color for labels in the title. Overrides defaultColorLabel for title labels like composer. Default black (undefined).
Optional
defaultDefault font used for text and labels, e.g. title or lyrics. Default Times New Roman Note that OSMD originally always used Times New Roman, so things like layout and spacing may still be optimized for it. Valid options are CSS font families available in the browser used for rendering, e.g. Times New Roman, Helvetica.
Optional
defaultDefault font style, e.g. FontStyles.Bold (1). Default Regular (0).
Optional
disableDon't show/load cursor. Will override disableCursor in drawingParameters.
Optional
drawWhether to draw the composer name (top right of the score).
Optional
drawWhether to draw credits (title, subtitle, composer, lyricist) (in future: copyright etc., see
Optional
drawWhether to draw fingerings (only left to the note for now). Default true (unless solo part).
Optional
drawOnly draw measure n to m, where n is the number you specify. (for m, see drawUpToMeasureNumber)
Optional
drawWhether to draw hidden/invisible notes (print-object="no" in XML). Default false. Not yet supported.
Optional
drawingBroad Parameters like compact or preview mode. Also try "compacttight", which is like compact but also reduces margins. To see what this mode does and maybe adjust the spacing parameters yourself instead of using the mode, see DrawingParameters.ts:setForCompactTightMode().
Optional
drawWhether to draw the lyricist's name, if given (top left of the score).
Optional
drawWhether to draw lyrics (and their extensions and dashes).
Optional
drawWhether to draw measure numbers (labels). Default true. Draws a measure number label at first measure, system start measure, and every [measureNumberInterval] measures. See the [measureNumberInterval] option, default is 2.
Optional
drawWhether to only draw measure numbers at the start of a system ("new line"), instead of every [measureNumberInterval] measures. Default false.
Optional
drawWhether to draw metronome marks. Default true. (currently OSMD can only draw one at the beginning)
Optional
drawWhether to draw part (instrument) name abbreviations each system after the first. Only draws if drawPartNames. Default true.
Optional
drawWhether to draw part (instrument) names. Setting this to false also disables drawPartAbbreviations, unless explicitly enabled (drawPartNames: false, drawPartAbbreviations: true).
Optional
drawWhether to calculate extra slurs with bezier curves not covered by Vexflow slurs. Default true.
Optional
drawWhether to draw the subtitle of the piece. If true, enables drawing Title as well.
Optional
drawWhether to draw time signatures (e.g. 4/4). Default true.
Optional
drawWhether to draw the title of the piece. If false, disables drawing Subtitle as well.
Optional
drawOnly draw measure n to m, where m is the number specified. (for n, see drawFromMeasureNumber)
Optional
drawOnly draw the first n pages, where n is the number specified.
Optional
drawOnly draw the first n systems, where n is the number specified.
Optional
fillWhether to fill measures that don't have notes given in the XML with whole rests (visible = 1, invisible = 2, for layouting). Default No (0).
Optional
fingeringFor above/below fingerings, whether to draw them directly above/below notes (default), or above/below staffline.
Optional
fingeringWhere to draw fingerings (above, below, aboveorbelow, left, right, or auto). Default AboveOrBelow. Auto experimental
Optional
followFollow Cursor: Scroll the page when cursor.next() is called and the cursor moves into a new system outside of the current view frame.
Optional
measureThe interval of measure numbers to draw, i.e. it draws the measure number above the beginning label every x measures. Default 2.
Optional
newWhether to begin a new page ("page break") when given in XML ('new-page="yes"'). Default false, because OSMD does its own layout that will do page breaks interactively (when given a PageFormat) at different measures. So this option may result in a page break after a single measure on a page.
Optional
newWhether to begin a new system ("line break") when given a new page in XML ('new-page="yes"'), but newPageFromXML is false. Default false, because OSMD does its own layout that will do line breaks interactively at different measures. So this option may result in a system break after a single measure in a system.
Optional
newWhether to begin a new system ("line break") when given in XML ('new-system="yes"'). Default false, because OSMD does its own layout that will do line breaks interactively at different measures. So this option may result in a system break after a single measure in a system.
Optional
pageA custom page/canvas background color. Default undefined/transparent. Example: "#FFFFFF" = white. "#12345600" = transparent. This can be useful when you want to export an image with e.g. white background color instead of transparent, from a CanvasBackend. Note: Using a background color will prevent the cursor from being visible for now (will be fixed at some point).
Optional
pageSee OpenSheetMusicDisplay.PageFormatStandards for standard options like "A4 P" or "Endless". Default Endless. Uses OpenSheetMusicDisplay.StringToPageFormat(). Unfortunately it would be error-prone to set a PageFormat type directly.
Optional
percussionThis property is only active if the above property is active (percussionOneLineCutoff) This is the cutoff for forcing all voices to the single line, instead of rendering them at different positions above/below the line. The default is 3, so if a part has less than voices, all of them will be rendered on the line. This is for cases like a Concert snare, which has multiple 'instruments' available (snare, side stick) should still render only on the line since there is no ambiguity. If this value is 0, the feature is turned off. IF this value is -1, it will render all percussion clef voices on the single line.
Optional
percussionThe cutoff number for rendering percussion clef stafflines as a single line. Default is 4.
This is number of instruments specified, e.g. a drumset:
Optional
preferredDefines which skyline and bottom-line batch calculation algorithm to use.
Optional
renderThis makes OSMD render on one single horizontal (staff-)line. This option should be set before loading a score. It only starts working after load(), calling setOptions() after load and then render() doesn't work in this case.
Optional
setWhether to set the wanted stem direction by xml (default) or automatically.
Optional
skyDefines the minimum number of measures in the entire sheet music where the skyline and bottom-line batch calculation is enabled.
Optional
spacingNumber in pixels, of spacing between multi-line labels
Optional
spacingThe softmaxFactor for Vexflow's formatter. Default is 5, default in Vexflow is 100 (voice.js). Lowering this factor makes the spacing between individual notes smaller (especially from one half note to the next). So, to get more compact scores, try lowering this value (or set osmd.zoom, which simply scales), or try 100 for a more expansive layout. Setting this is the same as setting osmd.EngravingRules.SoftmaxFactorVexFlow.
Optional
stretchSet to true if the last system line should be streched across the whole page just as the other systems. Default is false
Optional
tripletsWhether all triplets should be bracketed. Overrides tupletsBracketed for triplets. If false, only triplets given as bracketed in XML (bracket="yes") will be bracketed. (Bracketing all triplets can be cluttering)
Optional
tupletsWhether all tuplets should be bracketed (e.g. |--5--| instead of 5). Default false. If false, only tuplets given as bracketed in XML (bracket="yes") will be bracketed.
Optional
tupletsWhether tuplets are labeled with ratio (e.g. 5:2 instead of 5 for quintuplets). Default false.
Optional
useXMLMeasureWhether to read measure numbers from the "number" attribute in the xml file as opposed to defaulting to start at measure 1. Default true.
Possible options for the OpenSheetMusicDisplay constructor and osmd.setOptions(). None are mandatory. Note that after using setOptions(), you have to call osmd.render() again to make changes visible. Example: osmd.setOptions({defaultColorRest: "#AAAAAA", drawSubtitle: false}); osmd.render();
Note that some additional, usually more small scale options are available in EngravingRules, though not all of them are meant to be manipulated. The OSMDOptions are the main options we support.