vexflow
Version:
A JavaScript library for rendering music notation and guitar tablature.
385 lines (384 loc) • 9.49 kB
JavaScript
export const CommonMetrics = {
smufl: true,
stave: {
padding: 12,
endPaddingMax: 10,
endPaddingMin: 5,
unalignedNotePadding: 10,
},
accidental: {
noteheadAccidentalPadding: 1,
leftPadding: 2,
accidentalSpacing: 3,
},
chordSymbol: {
global: {
superscriptOffset: -400,
subscriptOffset: 300,
kerningOffset: -250,
lowerKerningText: ['D', 'F', 'P', 'T', 'V', 'Y'],
upperKerningText: ['A', 'L'],
spacing: 100,
superSubRatio: 0.66,
},
glyphs: {
csymDiminished: {
leftSideBearing: -32,
advanceWidth: 506,
yOffset: 0,
},
csymHalfDiminished: {
leftSideBearing: -32,
advanceWidth: 506,
yOffset: 0,
},
csymAugmented: {
leftSideBearing: 0,
advanceWidth: 530,
yOffset: 0,
},
csymParensLeftTall: {
leftSideBearing: -20,
advanceWidth: 184,
yOffset: 250,
},
csymParensRightTall: {
leftSideBearing: 0,
advanceWidth: 189,
yOffset: 250,
},
csymBracketLeftTall: {
leftSideBearing: 0,
advanceWidth: 328,
yOffset: 0,
},
csymBracketRightTall: {
leftSideBearing: 1,
advanceWidth: 600,
yOffset: 0,
},
csymParensLeftVeryTall: {
leftSideBearing: 50,
advanceWidth: 121,
yOffset: 350,
},
csymParensRightVeryTall: {
leftSideBearing: 0,
advanceWidth: 111,
yOffset: 350,
},
csymDiagonalArrangementSlash: {
leftSideBearing: 250,
advanceWidth: 990,
yOffset: 300,
},
csymMinor: {
leftSideBearing: 0,
advanceWidth: 482,
yOffset: 0,
},
csymMajorSeventh: {
leftSideBearing: 200,
yOffset: 0,
advanceWidth: 600,
},
accidentalSharp: {
leftSideBearing: 20,
advanceWidth: 250,
yOffset: -302,
},
accidentalFlat: {
leftSideBearing: -20,
advanceWidth: 226,
yOffset: -184,
},
},
},
clef_default: {
width: 26,
annotations: {
'8va': {
treble: {
line: -2,
shiftX: 12,
},
},
'8vb': {
treble: {
line: 6.5,
shiftX: 10,
},
bass: {
line: 4,
shiftX: 1,
},
},
},
},
clef_small: {
width: 20,
annotations: {
'8va': {
treble: {
line: -0.2,
shiftX: 8,
},
},
'8vb': {
treble: {
line: 5.3,
shiftX: 6,
},
bass: {
line: 3.1,
shiftX: 0.5,
},
},
},
},
ornament: {
brassScoop: {
xOffset: -12,
yOffset: 0,
stemUpYOffset: 0,
reportedWidth: 20,
},
brassDoitMedium: {
xOffset: 16,
yOffset: 0,
stemUpYOffset: 0,
reportedWidth: 22,
},
brassFallLipShort: {
xOffset: 16,
yOffset: 0,
stemUpYOffset: 0,
reportedWidth: 15,
},
brassLiftMedium: {
xOffset: 16,
yOffset: 5,
stemUpYOffset: 0,
reportedWidth: 5,
},
brassFallRoughMedium: {
xOffset: 16,
yOffset: 28,
stemUpYOffset: 0,
reportedWidth: 5,
},
brassBend: {
xOffset: 2,
yOffset: -8,
stemUpYOffset: 25,
reportedWidth: 5,
},
brassMuteClosed: {
xOffset: 3,
yOffset: -8,
stemUpYOffset: 25,
reportedWidth: 5,
},
brassMuteOpen: {
xOffset: 3,
yOffset: -7,
stemUpYOffset: 25,
reportedWidth: 5,
},
brassFlip: {
xOffset: 10,
yOffset: 0,
stemUpYOffset: 7,
reportedWidth: 10,
},
brassJazzTurn: {
xOffset: 0,
yOffset: 0,
stemUpYOffset: 8,
reportedWidth: 31,
},
brassSmear: {
xOffset: 10,
yOffset: 0,
stemUpYOffset: 8,
reportedWidth: 5,
},
},
parenthesis: {
default: {
width: 7,
},
gracenote: {
width: 3,
},
},
pedalMarking: {},
digits: {
shiftLine: -1,
shiftY: -6,
},
articulation: {
articStaccatissimoAbove: {
padding: 2,
},
articStaccatissimoBelow: {
padding: 2,
},
},
tremolo: {
default: {
spacing: 7,
offsetYStemUp: -8,
offsetYStemDown: 8,
offsetXStemUp: 11,
offsetXStemDown: 1,
},
grace: {
spacing: (7 * 3) / 5,
offsetYStemUp: -(8 * 3) / 5,
offsetYStemDown: (8 * 3) / 5,
offsetXStemUp: 7,
offsetXStemDown: 1,
},
},
staveRepetition: {
symbolText: {
offsetX: 12,
offsetY: 25,
spacing: 5,
},
coda: {
offsetY: 25,
},
segno: {
offsetY: 10,
},
},
noteHead: {
minPadding: 2,
},
stem: {
heightAdjustmentForFlag: -3,
noteHead: {
noteheadTriangleUpHalf: {
offsetYBaseStemUp: 5,
offsetYBaseStemDown: 4,
},
noteheadTriangleUpBlack: {
offsetYBaseStemUp: 5,
offsetYBaseStemDown: 4,
},
noteheadTriangleUpWhole: {
offsetYBaseStemUp: 5,
offsetYBaseStemDown: 4,
},
noteheadXHalf: {
offsetYBaseStemUp: -4,
offsetYBaseStemDown: 4,
},
noteheadXBlack: {
offsetYBaseStemUp: -4,
offsetYBaseStemDown: 4,
},
noteheadXWhole: {
offsetYBaseStemUp: -4,
offsetYBaseStemDown: 4,
},
noteheadHalf: {
offsetYBaseStemUp: -2.55,
offsetYBaseStemDown: 2.65,
},
noteheadBlack: {
offsetYBaseStemUp: -2,
offsetYBaseStemDown: 2,
},
noteheadSquareWhite: {
offsetYBaseStemDown: -5,
offsetYBaseStemUp: 5,
},
},
},
stringNumber: {
verticalPadding: 8,
stemPadding: 2,
leftPadding: 5,
rightPadding: 6,
},
tuplet: {
noteHeadOffset: 20,
stemOffset: 10,
bottomLine: 4,
topModifierOffset: 15,
},
glyphs: {
coda: {
shiftX: -7,
shiftY: 8,
},
segno: {
shiftX: -7,
},
flag: {
shiftX: -0.75,
staveTempo: {
shiftX: -1,
},
},
clef_default: {},
clef_small: {
gClef: {
shiftY: 1.5,
},
},
clefNote_default: {},
clefNote_small: {},
stroke_straight: {
arrowheadBlackDown: {
shiftX: -4.5,
},
arrowheadBlackUp: {
shiftX: -0.85,
},
},
stroke_wiggly: {
arrowheadBlackDown: {
shiftX: -1,
shiftY: 1,
},
arrowheadBlackUp: {
shiftX: -1,
shiftY: 1,
},
},
textNote: {
breathMarkTick: {
shiftY: 9,
},
breathMarkComma: {},
segno: {
shiftX: -7,
shiftY: 8,
},
coda: {
shiftX: -7,
shiftY: 8,
},
ornamentTrill: {
shiftX: -8,
shiftY: 8,
},
ornamentTurn: {},
ornamentTurnSlash: {},
ornamentMordent: {
shiftX: -8,
},
ornamentShortTrill: {
shiftX: -8,
},
},
noteHead: {},
chordSymbol: {
scale: 0.8,
},
},
};