Protected
_fontProtected
_heightProtected
_textProtected
_textProtected
_widthProtected
attrsProtected
childrenProtected
fontProtected
metricsProtected
Optional
parentProtected
Optional
registryProtected
renderedProtected
styleProtected
xProtected
xProtected
yProtected
yProtected
Static
IDReturns the CSS compatible font string for the text font.
Provide a CSS compatible font string (e.g., 'bold 16px Arial') that will be applied to text (not glyphs).
Return a copy of the current FontInfo object.
a CSS font-size string (e.g., '18pt', '12px', '1em').
The size is 1) a string of the form '10pt' or '16px', compatible with the CSS font-size property. or 2) a number, which is interpreted as a point size (i.e. 12 == '12pt').
the font size in px
.
the font size in pt
.
a CSS font-style string (e.g., 'italic').
Set the font style.
a CSS font-weight string (e.g., 'bold'). As in CSS, font-weight is always returned as a string, even if it was set as a number.
Set the font weight.
Static
CATEGORYAdds a child to the Element, which lets it inherit the same style as the parent when setGroupStyle() is called.
Examples of children are noteheads and stems. Modifiers such as Accidentals are generally not set as children.
Note that StaveNote calls setGroupStyle() when setStyle() is called.
Add a class label (An element can have multiple class labels).
Create new stems for the notes in the beam, so that each stem extends into the beams.
Apply the element style to context
.
Set which note indexes
to break the secondary beam at.
Calculate a slope and y-shift for flat beams.
Calculate the best possible slope for the provided notes.
Validate and return the rendering context.
Render the beam to the canvas context
Protected
drawProtected
drawDraw the element and all its sub-elements (i.e.: Modifiers in a Stave)
with the element's style (see getStyle()
and setStyle()
)
Return an attribute, such as 'id', 'type' or 'class'.
Return the element attributes.
Get the max number of beams in the set of notes.
Get the x coordinates for the beam lines of specific duration
.
Return the Beam y offset.
Get the boundingBox.
Return the context, such as an SVGContext or CanvasContext object.
Get the css string describing this Element's text font. e.g., 'bold 10pt Arial'.
a CSS font-size string (e.g., '18pt', '12px', '1em'). See Element.fontSizeInPixels or Element.fontSizeInPoints if you need to get a number for calculation purposes.
Get the text height.
Get the notes in this beam.
specified in pixels.
specified in pixels.
the y coordinate for linear function.
Get the direction of the beam
Get the element style used for rendering.
Return associated SVGElement.
Get element text.
Get the text metrics.
Get element width.
Get the X coordinate.
Get shift element xShift
.
Get the Y coordinate.
Get shift element yShift
.
Check if it has a class label (An element can have multiple class labels).
Return the rendered status.
Return upper level beam direction.
Measure the text using the textFont.
Post-format the beam. This can only be called after
the notes in the beam have both x
and y
values. ie: they've
been formatted and have staves.
Pre-format the beam.
Remove a class label (An element can have multiple class labels).
Set an attribute such as 'id', 'class', or 'type'.
Set the context to an SVGContext or CanvasContext object
Optional
context: RenderContextSet the element's text font family, size, weight, style
(e.g., Arial
, 10pt
, bold
, italic
).
This attribute does not determine the font used for musical Glyphs like treble clefs.
Optional
font: string | FontInfois 1) a FontInfo
object or
2) a string formatted as CSS font shorthand (e.g., 'bold 10pt Arial') or
3) a string representing the font family (at least one of size
, weight
, or style
must also be provided).
Optional
size: string | numbera string specifying the font size and unit (e.g., '16pt'), or a number (the unit is assumed to be 'pt').
Optional
weight: string | numberis a string (e.g., 'bold', 'normal') or a number (100, 200, ... 900).
Optional
style: stringis a string (e.g., 'italic', 'normal').
If no arguments are provided, then the font is set to the default font.
Each Element subclass may specify its own default by overriding the static TEXT_FONT
property.
Change the font size, while keeping everything else the same.
Optional
size: string | numberSet the element & associated children style used for rendering.
Forces the direction of a partial beam (a secondary-level beam that exists on one note only of the beam group). This is useful in rhythms such as 6/8 eighth-sixteenth-eighth-sixteenth, where the direction of the beam on the first sixteenth note can help imply whether the rhythm is to be felt as three groups of eighth notes (typical) or as two groups of three-sixteenths (less common):
┌───┬──┬──┐ ┌──┬──┬──┐
│ ├─ │ ─┤ vs │ ─┤ │ ─┤
│ │ │ │ │ │ │ │
Set the rendered status.
Set the element style used to render.
Example:
element.setStyle({ fillStyle: 'red', strokeStyle: 'red' });
element.drawWithStyle();
Note: If the element draws additional sub-elements (i.e.: Modifiers in a Stave), the style can be applied to all of them by means of the context:
element.setStyle({ fillStyle: 'red', strokeStyle: 'red' });
element.getContext().setFillStyle('red');
element.getContext().setStrokeStyle('red');
element.drawWithStyle();
or using drawWithStyle:
element.setStyle({ fillStyle: 'red', strokeStyle: 'red' });
element.drawWithStyle();
Set element text.
Set element width.
Set the X coordinate.
Set shift element right xShift
pixels. Negative values shift left.
Set the Y coordinate.
Shift element down yShift
pixels. Negative values shift up.
Restore the default direction of a partial beam (a secondary-level beam that does not connect to any other notes).
Static
applyA helper function to automatically build basic beams for a voice. For more
complex auto-beaming use Beam.generateBeams()
.
Static
generateA helper function to autimatically build beams for a voice with configuration options.
Example configuration object:
config = {
groups: [new VexFlow.Fraction(2, 8)],
stemDirection: -1,
beamRests: true,
beamMiddleOnly: true,
showStemlets: false
};
an array of notes to create the beams for
the configuration object
Optional
beamMiddleOnly?: booleanset to true
to only beam rests in the middle of the beat
Optional
beamRests?: booleanset to true
to include rests in the beams
Optional
flatBeamOffset?: numberOptional
flatBeams?: booleanOptional
groups?: Fraction[]array of Fractions
that represent the beat structure to beam the notes
Optional
maintainStemDirections?: booleanset to true
to not apply new stem directions
Optional
secondaryBreaks?: stringOptional
showStemlets?: booleanset to true
to draw stemlets for rests
Optional
stemDirection?: numberset to apply the same direction to all notes
Static
getGet the default beam groups for a provided time signature. Attempt to guess if the time signature is not found in table. Currently this is fairly naive.
Static
getStatic
measureMeasure the text using the FontInfo related with key.
Protected
Static
newIDStatic
set
Beams
span over a set ofStemmableNotes
.