pymusicxml.directions.TextAnnotation

class pymusicxml.directions.TextAnnotation(text: str, font_size: Optional[float] = None, italic: bool = False, bold: bool = False, placement: str | StaffPlacement = 'above', voice: int = 1, staff: Optional[int] = None, **kwargs)[source]

Bases: Direction

Class representing text that is attached to the staff

Parameters:
  • text – the text of the annotation

  • font_size – the font size of the text

  • italic – whether or not the text is italicized

  • placement – Where to place the direction in relation to the staff (“above” or “below”)

  • voice – Which voice to attach to

  • staff – Which staff to attach to if the part has multiple staves

  • kwargs – any extra properties of the musicXML “words” tag aside from font-size and italics can be passed to kwargs

Methods

render_direction_type()

Renders the <direction-type> element that constitutes the main substance of a <direction> element.

Inherited Methods

export_to_file(file_path[, pretty_print])

Exports this musical object (wrapped as a score) to the given file path.

render()

Renders this component to a tuple of ElementTree.Element.

to_xml([pretty_print])

Renders this component to MusicXML, adding a version tag, but not wrapping it up as a full score.

view_in_software(command)

Uses the given terminal command to create a score out of this musical object, and open it in music notation software.

wrap_as_score()

Wraps this component in a Score so that it can be exported and viewed

render_direction_type() Sequence[Element][source]

Renders the <direction-type> element that constitutes the main substance of a <direction> element.

export_to_file(file_path: str, pretty_print: bool = True) None

Exports this musical object (wrapped as a score) to the given file path.

Parameters:
  • file_path – The path of the file we want to write to.

  • pretty_print – If True, breaks the MusicXML onto multiple lines, with indentation

render() Sequence[Element]

Renders this component to a tuple of ElementTree.Element. (The reason for making it a tuple is that musical objects like chords are represented by several notes side by side, with all but the first containing a </chord> tag.)

to_xml(pretty_print: bool = False) str

Renders this component to MusicXML, adding a version tag, but not wrapping it up as a full score.

Parameters:

pretty_print – If True, breaks the MusicXML onto multiple lines, with indentation

view_in_software(command: str) None

Uses the given terminal command to create a score out of this musical object, and open it in music notation software.

Parameters:

command – The terminal command corresponding to the software with which we want to open the score.

wrap_as_score() Score

Wraps this component in a Score so that it can be exported and viewed