Whether 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.
Whether to automatically create beams for notes that don't have beams set in XML.
Options for autoBeaming like whether to beam over rests. See AutoBeamOptions interface.
Set 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
Automatically resize score with canvas size. Default is true.
Render Backend, will be SVG if given undefined, "SVG" or "svg", otherwise Canvas.
Whether to color the stems of notes the same as their noteheads. Default false.
Whether to enable coloring noteheads and stems, depending on coloringMode.
Defines 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.
Set of 8 colors for automatic coloring of 7 notes from C to B + rest note in HTML form (e.g. "#00ff00" for green).
Defines multiple simultaneous cursors. If left undefined the standard cursor will be used.
Dark mode (black background, white notes). Simply sets defaultColorMusic and EngravingRules.PageBackgroundColor.
Default color for Labels like title or lyrics. Default black (undefined).
Default color for all musical elements including key signature etc. Can be used for dark mode etc. Default undefined.
Default 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
Default color for rests. Default black (undefined).
Default color for a note stem. Default black (undefined).
Default color for labels in the title. Overrides defaultColorLabel for title labels like composer. Default black (undefined).
Default 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.
Default font style, e.g. FontStyles.Bold (1). Default Regular (0).
Don't show/load cursor. Will override disableCursor in drawingParameters.
Whether to draw the composer name (top right of the score).
Whether to draw credits (title, subtitle, composer, lyricist) (in future: copyright etc., see
Whether to draw fingerings (only left to the note for now). Default true (unless solo part).
Only draw measure n to m, where n is the number you specify. (for m, see drawUpToMeasureNumber)
Whether to draw hidden/invisible notes (print-object="no" in XML). Default false. Not yet supported.
Whether to draw the lyricist's name, if given (top left of the score).
Whether to draw lyrics (and their extensions and dashes).
Whether 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.
Whether to only draw measure numbers at the start of a system ("new line"), instead of every [measureNumberInterval] measures. Default false.
Whether to draw metronome marks. Default true. (currently OSMD can only draw one at the beginning)
Whether to draw part (instrument) name abbreviations each system after the first. Only draws if drawPartNames. Default true.
Whether to draw part (instrument) names. Setting this to false also disables drawPartAbbreviations, unless explicitly enabled (drawPartNames: false, drawPartAbbreviations: true).
Whether to calculate extra slurs with bezier curves not covered by Vexflow slurs. Default true.
Whether to draw the subtitle of the piece. If true, enables drawing Title as well.
Whether to draw time signatures (e.g. 4/4). Default true.
Whether to draw the title of the piece. If false, disables drawing Subtitle as well.
Only draw measure n to m, where m is the number specified. (for n, see drawFromMeasureNumber)
Only draw the first n pages, where n is the number specified.
Only draw the first n systems, where n is the number specified.
Broad 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().
Whether to fill measures that don't have notes given in the XML with whole rests (visible = 1, invisible = 2, for layouting). Default No (0).
For above/below fingerings, whether to draw them directly above/below notes (default), or above/below staffline.
Where to draw fingerings (above, below, aboveorbelow, left, right, or auto). Default AboveOrBelow. Auto experimental
Follow Cursor: Scroll the page when cursor.next() is called and the cursor moves into a new system outside of the current view frame.
The interval of measure numbers to draw, i.e. it draws the measure number above the beginning label every x measures. Default 2.
Whether 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.
Whether 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.
Whether 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.
A 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).
See 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.
This 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.
The cutoff number for rendering percussion clef stafflines as a single line. Default is 4.
This is number of instruments specified, e.g. a drumset:
Defines which skyline and bottom-line batch calculation algorithm to use.
This 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.
Whether to set the wanted stem direction by xml (default) or automatically.
Defines the minimum number of measures in the entire sheet music where the skyline and bottom-line batch calculation is enabled.
Number in pixels, of spacing between multi-line labels
The 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.
Set to true if the last system line should be streched across the whole page just as the other systems. Default is false
Whether 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)
Whether 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.
Whether tuplets are labeled with ratio (e.g. 5:2 instead of 5 for quintuplets). Default false.
Whether to read measure numbers from the "number" attribute in the xml file as opposed to defaulting to start at measure 1. Default true.
A custom function that is executed when the xml is read, modifies it, and returns a new xml string that OSMD then parses.
Generated using TypeDoc
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.