diff --git a/src/importer/AlphaTexImporter.ts b/src/importer/AlphaTexImporter.ts index b3dbcec53..c577035ac 100644 --- a/src/importer/AlphaTexImporter.ts +++ b/src/importer/AlphaTexImporter.ts @@ -3060,6 +3060,7 @@ export class AlphaTexImporter extends ScoreImporter { tempoAutomation.isLinear = false; tempoAutomation.type = AutomationType.Tempo; tempoAutomation.value = this._score.tempo; + tempoAutomation.text = this._score.tempoLabel; master.tempoAutomations.push(tempoAutomation); } return anyMeta; diff --git a/src/rendering/BarRendererBase.ts b/src/rendering/BarRendererBase.ts index ed623aaa1..b2a60caf8 100644 --- a/src/rendering/BarRendererBase.ts +++ b/src/rendering/BarRendererBase.ts @@ -249,12 +249,15 @@ export class BarRendererBase { this._postBeatGlyphs.width = this.layoutingInfo.postBeatSize; this.width = Math.ceil(this._postBeatGlyphs.x + this._postBeatGlyphs.width); this.computedWidth = this.width; - + // For cases like in the horizontal layout we need to set the fixed width early // to have correct partials splitting. the proper alignment to this scale will happen // later in the workflow. const fixedBarWidth = this.barDisplayWidth; - if (fixedBarWidth > 0 && this.scoreRenderer.layout!.systemsLayoutMode == InternalSystemsLayoutMode.FromModelWithWidths) { + if ( + fixedBarWidth > 0 && + this.scoreRenderer.layout!.systemsLayoutMode == InternalSystemsLayoutMode.FromModelWithWidths + ) { this.width = fixedBarWidth; this.computedWidth = fixedBarWidth; } @@ -452,7 +455,7 @@ export class BarRendererBase { } protected createBeatGlyphs(): void { - for(const voice of this.bar.voices) { + for (const voice of this.bar.voices) { if (this.hasVoiceContainer(voice)) { this.createVoiceGlyphs(voice); } @@ -499,6 +502,15 @@ export class BarRendererBase { return 0; } + public getRatioPositionX(ticks: number): number { + const firstOnNoteX = this.bar.isEmpty + ? this.beatGlyphsStart + : this.getBeatX(this.bar.voices[0].beats[0], BeatXPosition.OnNotes); + const x = firstOnNoteX; + const w = this.postBeatGlyphsStart - firstOnNoteX; + return x + w * ticks; + } + public getNoteX(note: Note, requestedPosition: NoteXPosition): number { let container = this.getBeatContainer(note.beat); if (container) { @@ -529,7 +541,7 @@ export class BarRendererBase { this.updateSizes(); this.registerLayoutingInfo(); } - + protected recreatePreBeatGlyphs() { this._preBeatGlyphs = new LeftToRightLayoutingGlyphGroup(); this._preBeatGlyphs.renderer = this; diff --git a/src/rendering/glyphs/BarTempoGlyph.ts b/src/rendering/glyphs/BarTempoGlyph.ts index 4478e4227..c5598583d 100644 --- a/src/rendering/glyphs/BarTempoGlyph.ts +++ b/src/rendering/glyphs/BarTempoGlyph.ts @@ -1,7 +1,6 @@ import { ICanvas, TextBaseline } from '@src/platform'; import { EffectGlyph } from './EffectGlyph'; import { Automation, MusicFontSymbol } from '@src/model'; -import { NoteHeadGlyph } from './NoteHeadGlyph'; /** * This glyph renders tempo annotations for tempo automations @@ -21,26 +20,30 @@ export class BarTempoGlyph extends EffectGlyph { } public override paint(cx: number, cy: number, canvas: ICanvas): void { - const startX = cx + this.x; - const endX = cx + this.renderer.postBeatGlyphsStart; + for (const automation of this.tempoAutomations) { + let x = cx + this.renderer.getRatioPositionX(automation.ratioPosition); - for(const automation of this.tempoAutomations) { - const x = cx + this.x + (endX - startX) * automation.ratioPosition; const res = this.renderer.resources; canvas.font = res.markerFont; + + canvas.textBaseline = TextBaseline.Top; + if (automation.text) { + const size = canvas.measureText(automation.text); + canvas.fillText(automation.text, x, cy + this.y + canvas.font.size / 2); + x += size.width + canvas.font.size * 0.7; + } canvas.fillMusicFontSymbol( x, cy + this.y + this.height * 0.8, - NoteHeadGlyph.GraceScale, + 0.5, MusicFontSymbol.NoteQuarterUp, - false + true ); - canvas.textBaseline = TextBaseline.Top; canvas.fillText( '= ' + automation.value.toString(), - x + this.height / 2, + x + 8, cy + this.y + canvas.font.size / 2 ); } } -} \ No newline at end of file +} diff --git a/src/rendering/glyphs/SustainPedalGlyph.ts b/src/rendering/glyphs/SustainPedalGlyph.ts index 521785631..f6f3c4ef3 100644 --- a/src/rendering/glyphs/SustainPedalGlyph.ts +++ b/src/rendering/glyphs/SustainPedalGlyph.ts @@ -2,7 +2,6 @@ import { ICanvas } from '@src/platform'; import { EffectGlyph } from './EffectGlyph'; import { SustainPedalMarker, SustainPedalMarkerType } from '@src/model/Bar'; import { MusicFontSymbol } from '@src/model'; -import { BeatXPosition } from '../BeatXPosition'; export class SustainPedalGlyph extends EffectGlyph { private static readonly TextHeight = 19; @@ -24,13 +23,7 @@ export class SustainPedalGlyph extends EffectGlyph { public override paint(cx: number, cy: number, canvas: ICanvas): void { const renderer = this.renderer; - const firstOnNoteX = renderer.bar.isEmpty - ? renderer.beatGlyphsStart - : renderer.getBeatX(renderer.bar.voices[0].beats[0], BeatXPosition.OnNotes); - - const x = cx + this.x + firstOnNoteX; const y = cy + this.y; - const w = renderer.postBeatGlyphsStart - firstOnNoteX; const h = this.height; let markers = renderer.bar.sustainPedals; @@ -39,34 +32,32 @@ export class SustainPedalGlyph extends EffectGlyph { while (markerIndex < markers.length) { let marker: SustainPedalMarker | null = markers[markerIndex]; while (marker != null) { - const markerX = x + w * marker.ratioPosition; + const markerX = cx + this.renderer.getRatioPositionX(marker.ratioPosition); // real own marker let linePadding = 0; if (marker.pedalType === SustainPedalMarkerType.Down) { canvas.fillMusicFontSymbol(markerX, y + h, 1, MusicFontSymbol.KeyboardPedalPed, true); - linePadding = - (SustainPedalGlyph.TextWidth / 2) + SustainPedalGlyph.TextLinePadding; + linePadding = SustainPedalGlyph.TextWidth / 2 + SustainPedalGlyph.TextLinePadding; } else if (marker.pedalType === SustainPedalMarkerType.Up) { canvas.fillMusicFontSymbol(markerX, y + h, 1, MusicFontSymbol.KeyboardPedalUp, true); - linePadding = - (SustainPedalGlyph.StarSize / 2) + SustainPedalGlyph.StarLinePadding; + linePadding = SustainPedalGlyph.StarSize / 2 + SustainPedalGlyph.StarLinePadding; } // line to next marker or end-of-bar if (marker.nextPedalMarker) { if (marker.nextPedalMarker.bar === marker.bar) { - let nextX = x + w * marker.nextPedalMarker.ratioPosition; + let nextX = cx + this.renderer.getRatioPositionX(marker.nextPedalMarker.ratioPosition); switch (marker.nextPedalMarker.pedalType) { case SustainPedalMarkerType.Down: - nextX -= (SustainPedalGlyph.TextWidth / 2); + nextX -= SustainPedalGlyph.TextWidth / 2; break; case SustainPedalMarkerType.Hold: // no offset on hold break; case SustainPedalMarkerType.Up: - nextX -= (SustainPedalGlyph.StarSize / 2); + nextX -= SustainPedalGlyph.StarSize / 2; break; } diff --git a/src/synth/IAlphaSynth.ts b/src/synth/IAlphaSynth.ts index 232a9d325..9a0c76434 100644 --- a/src/synth/IAlphaSynth.ts +++ b/src/synth/IAlphaSynth.ts @@ -136,7 +136,7 @@ export interface IAlphaSynth { applyTranspositionPitches(transpositionPitches: Map): void; /** - * Sets the transposition pitch a channel. This pitch is additionally applied beside the + * Sets the transposition pitch of a given channel. This pitch is additionally applied beside the * ones applied already via {@link applyTranspositionPitches}. * @param channel The channel number * @param semitones The number of semitones to apply as pitch offset. diff --git a/test-data/visual-tests/effects-and-annotations/accentuations.png b/test-data/visual-tests/effects-and-annotations/accentuations.png index 71ccf5666..a470a52af 100644 Binary files a/test-data/visual-tests/effects-and-annotations/accentuations.png and b/test-data/visual-tests/effects-and-annotations/accentuations.png differ diff --git a/test-data/visual-tests/effects-and-annotations/beat-tempo-change.png b/test-data/visual-tests/effects-and-annotations/beat-tempo-change.png index a38ffd348..4f1537fdf 100644 Binary files a/test-data/visual-tests/effects-and-annotations/beat-tempo-change.png and b/test-data/visual-tests/effects-and-annotations/beat-tempo-change.png differ diff --git a/test-data/visual-tests/effects-and-annotations/brush.png b/test-data/visual-tests/effects-and-annotations/brush.png index 69ef66b61..db4a944da 100644 Binary files a/test-data/visual-tests/effects-and-annotations/brush.png and b/test-data/visual-tests/effects-and-annotations/brush.png differ diff --git a/test-data/visual-tests/effects-and-annotations/chords-duplicates.png b/test-data/visual-tests/effects-and-annotations/chords-duplicates.png index aad975fbf..f2fb789ae 100644 Binary files a/test-data/visual-tests/effects-and-annotations/chords-duplicates.png and b/test-data/visual-tests/effects-and-annotations/chords-duplicates.png differ diff --git a/test-data/visual-tests/effects-and-annotations/dynamics.png b/test-data/visual-tests/effects-and-annotations/dynamics.png index d11c3d701..541d23563 100644 Binary files a/test-data/visual-tests/effects-and-annotations/dynamics.png and b/test-data/visual-tests/effects-and-annotations/dynamics.png differ diff --git a/test-data/visual-tests/effects-and-annotations/fade-in.png b/test-data/visual-tests/effects-and-annotations/fade-in.png index 3dfea0fc8..cc4f33893 100644 Binary files a/test-data/visual-tests/effects-and-annotations/fade-in.png and b/test-data/visual-tests/effects-and-annotations/fade-in.png differ diff --git a/test-data/visual-tests/effects-and-annotations/fade.png b/test-data/visual-tests/effects-and-annotations/fade.png index b1cc8a84c..be70ddd8b 100644 Binary files a/test-data/visual-tests/effects-and-annotations/fade.png and b/test-data/visual-tests/effects-and-annotations/fade.png differ diff --git a/test-data/visual-tests/effects-and-annotations/fingering-new.png b/test-data/visual-tests/effects-and-annotations/fingering-new.png index 52213cee2..3e535ac53 100644 Binary files a/test-data/visual-tests/effects-and-annotations/fingering-new.png and b/test-data/visual-tests/effects-and-annotations/fingering-new.png differ diff --git a/test-data/visual-tests/effects-and-annotations/let-ring.png b/test-data/visual-tests/effects-and-annotations/let-ring.png index 17812f8e5..43c2b50ae 100644 Binary files a/test-data/visual-tests/effects-and-annotations/let-ring.png and b/test-data/visual-tests/effects-and-annotations/let-ring.png differ diff --git a/test-data/visual-tests/effects-and-annotations/markers.png b/test-data/visual-tests/effects-and-annotations/markers.png index 71118b1e0..871060d65 100644 Binary files a/test-data/visual-tests/effects-and-annotations/markers.png and b/test-data/visual-tests/effects-and-annotations/markers.png differ diff --git a/test-data/visual-tests/effects-and-annotations/ornaments.png b/test-data/visual-tests/effects-and-annotations/ornaments.png index 7e7992d65..ea7a5ca32 100644 Binary files a/test-data/visual-tests/effects-and-annotations/ornaments.png and b/test-data/visual-tests/effects-and-annotations/ornaments.png differ diff --git a/test-data/visual-tests/effects-and-annotations/palm-mute.png b/test-data/visual-tests/effects-and-annotations/palm-mute.png index 112599a32..c0cbbafb5 100644 Binary files a/test-data/visual-tests/effects-and-annotations/palm-mute.png and b/test-data/visual-tests/effects-and-annotations/palm-mute.png differ diff --git a/test-data/visual-tests/effects-and-annotations/pick-stroke.png b/test-data/visual-tests/effects-and-annotations/pick-stroke.png index 38c15a96e..8e9f60c8e 100644 Binary files a/test-data/visual-tests/effects-and-annotations/pick-stroke.png and b/test-data/visual-tests/effects-and-annotations/pick-stroke.png differ diff --git a/test-data/visual-tests/effects-and-annotations/slides-line-break.png b/test-data/visual-tests/effects-and-annotations/slides-line-break.png index 3b30ebe33..34dca5b22 100644 Binary files a/test-data/visual-tests/effects-and-annotations/slides-line-break.png and b/test-data/visual-tests/effects-and-annotations/slides-line-break.png differ diff --git a/test-data/visual-tests/effects-and-annotations/slides.png b/test-data/visual-tests/effects-and-annotations/slides.png index c660b5f7d..c4b399bf0 100644 Binary files a/test-data/visual-tests/effects-and-annotations/slides.png and b/test-data/visual-tests/effects-and-annotations/slides.png differ diff --git a/test-data/visual-tests/effects-and-annotations/string-numbers.png b/test-data/visual-tests/effects-and-annotations/string-numbers.png index 1e333fe1b..f3c7c45f4 100644 Binary files a/test-data/visual-tests/effects-and-annotations/string-numbers.png and b/test-data/visual-tests/effects-and-annotations/string-numbers.png differ diff --git a/test-data/visual-tests/effects-and-annotations/tap.png b/test-data/visual-tests/effects-and-annotations/tap.png index 51b3dc6b1..dfb1f5170 100644 Binary files a/test-data/visual-tests/effects-and-annotations/tap.png and b/test-data/visual-tests/effects-and-annotations/tap.png differ diff --git a/test-data/visual-tests/effects-and-annotations/tempo-text.png b/test-data/visual-tests/effects-and-annotations/tempo-text.png new file mode 100644 index 000000000..57d52da85 Binary files /dev/null and b/test-data/visual-tests/effects-and-annotations/tempo-text.png differ diff --git a/test-data/visual-tests/effects-and-annotations/tempo.png b/test-data/visual-tests/effects-and-annotations/tempo.png index c13f757ee..aa0a0ff32 100644 Binary files a/test-data/visual-tests/effects-and-annotations/tempo.png and b/test-data/visual-tests/effects-and-annotations/tempo.png differ diff --git a/test-data/visual-tests/effects-and-annotations/text.png b/test-data/visual-tests/effects-and-annotations/text.png index 18e973002..49c074109 100644 Binary files a/test-data/visual-tests/effects-and-annotations/text.png and b/test-data/visual-tests/effects-and-annotations/text.png differ diff --git a/test-data/visual-tests/effects-and-annotations/tremolo-picking.png b/test-data/visual-tests/effects-and-annotations/tremolo-picking.png index 706e8da15..cdea5d7ce 100644 Binary files a/test-data/visual-tests/effects-and-annotations/tremolo-picking.png and b/test-data/visual-tests/effects-and-annotations/tremolo-picking.png differ diff --git a/test-data/visual-tests/effects-and-annotations/trill.png b/test-data/visual-tests/effects-and-annotations/trill.png index 1974fd30b..4baad1145 100644 Binary files a/test-data/visual-tests/effects-and-annotations/trill.png and b/test-data/visual-tests/effects-and-annotations/trill.png differ diff --git a/test-data/visual-tests/effects-and-annotations/vibrato.png b/test-data/visual-tests/effects-and-annotations/vibrato.png index 5723bd7f5..ef62bbcc4 100644 Binary files a/test-data/visual-tests/effects-and-annotations/vibrato.png and b/test-data/visual-tests/effects-and-annotations/vibrato.png differ diff --git a/test-data/visual-tests/general/alternate-endings.png b/test-data/visual-tests/general/alternate-endings.png index 12b53cc6c..0b90c5cd7 100644 Binary files a/test-data/visual-tests/general/alternate-endings.png and b/test-data/visual-tests/general/alternate-endings.png differ diff --git a/test-data/visual-tests/general/repeats.png b/test-data/visual-tests/general/repeats.png index 79bf501a8..7b01d62c1 100644 Binary files a/test-data/visual-tests/general/repeats.png and b/test-data/visual-tests/general/repeats.png differ diff --git a/test-data/visual-tests/general/song-details.png b/test-data/visual-tests/general/song-details.png index a3251b4ff..f841e868d 100644 Binary files a/test-data/visual-tests/general/song-details.png and b/test-data/visual-tests/general/song-details.png differ diff --git a/test-data/visual-tests/general/tuning.png b/test-data/visual-tests/general/tuning.png index d80276033..02db756a5 100644 Binary files a/test-data/visual-tests/general/tuning.png and b/test-data/visual-tests/general/tuning.png differ diff --git a/test-data/visual-tests/music-notation/clefs.png b/test-data/visual-tests/music-notation/clefs.png index 3d35f8ff7..7412458f8 100644 Binary files a/test-data/visual-tests/music-notation/clefs.png and b/test-data/visual-tests/music-notation/clefs.png differ diff --git a/test-data/visual-tests/music-notation/time-signatures.png b/test-data/visual-tests/music-notation/time-signatures.png index e098d86e2..a6981679b 100644 Binary files a/test-data/visual-tests/music-notation/time-signatures.png and b/test-data/visual-tests/music-notation/time-signatures.png differ diff --git a/test-data/visual-tests/notation-elements/chord-diagrams-off.png b/test-data/visual-tests/notation-elements/chord-diagrams-off.png index 31d13cf1f..68b4588e1 100644 Binary files a/test-data/visual-tests/notation-elements/chord-diagrams-off.png and b/test-data/visual-tests/notation-elements/chord-diagrams-off.png differ diff --git a/test-data/visual-tests/notation-elements/chord-diagrams-on.png b/test-data/visual-tests/notation-elements/chord-diagrams-on.png index 59dbafbb9..464759da5 100644 Binary files a/test-data/visual-tests/notation-elements/chord-diagrams-on.png and b/test-data/visual-tests/notation-elements/chord-diagrams-on.png differ diff --git a/test-data/visual-tests/notation-elements/effects-on.png b/test-data/visual-tests/notation-elements/effects-on.png index 10e4c8831..4eb935726 100644 Binary files a/test-data/visual-tests/notation-elements/effects-on.png and b/test-data/visual-tests/notation-elements/effects-on.png differ diff --git a/test-data/visual-tests/notation-elements/guitar-tuning-off.png b/test-data/visual-tests/notation-elements/guitar-tuning-off.png index aa89e8cee..a5eeb5bb0 100644 Binary files a/test-data/visual-tests/notation-elements/guitar-tuning-off.png and b/test-data/visual-tests/notation-elements/guitar-tuning-off.png differ diff --git a/test-data/visual-tests/notation-elements/guitar-tuning-on.png b/test-data/visual-tests/notation-elements/guitar-tuning-on.png index c104ba6d5..a166f3237 100644 Binary files a/test-data/visual-tests/notation-elements/guitar-tuning-on.png and b/test-data/visual-tests/notation-elements/guitar-tuning-on.png differ diff --git a/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-off.png b/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-off.png index 960f0cf88..76696967a 100644 Binary files a/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-off.png and b/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-off.png differ diff --git a/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-on.png b/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-on.png index ba3ca3a25..62f8415e9 100644 Binary files a/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-on.png and b/test-data/visual-tests/notation-elements/parenthesis-on-tied-bends-on.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-album.png b/test-data/visual-tests/notation-elements/score-info-album.png index 33a90ae76..2a99fc57a 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-album.png and b/test-data/visual-tests/notation-elements/score-info-album.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-all.png b/test-data/visual-tests/notation-elements/score-info-all.png index 29c837049..80824736f 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-all.png and b/test-data/visual-tests/notation-elements/score-info-all.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-artist.png b/test-data/visual-tests/notation-elements/score-info-artist.png index e1ab66a49..26d6b9814 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-artist.png and b/test-data/visual-tests/notation-elements/score-info-artist.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-copyright.png b/test-data/visual-tests/notation-elements/score-info-copyright.png index 92a4c8d45..e441128db 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-copyright.png and b/test-data/visual-tests/notation-elements/score-info-copyright.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-music.png b/test-data/visual-tests/notation-elements/score-info-music.png index 484ee03ed..4057f5ad9 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-music.png and b/test-data/visual-tests/notation-elements/score-info-music.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-subtitle.png b/test-data/visual-tests/notation-elements/score-info-subtitle.png index f85089f76..03f5666db 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-subtitle.png and b/test-data/visual-tests/notation-elements/score-info-subtitle.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-title.png b/test-data/visual-tests/notation-elements/score-info-title.png index 8a5c0a6ad..1fdda9ccc 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-title.png and b/test-data/visual-tests/notation-elements/score-info-title.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-words-and-music.png b/test-data/visual-tests/notation-elements/score-info-words-and-music.png index b9b879c22..272fcad6f 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-words-and-music.png and b/test-data/visual-tests/notation-elements/score-info-words-and-music.png differ diff --git a/test-data/visual-tests/notation-elements/score-info-words.png b/test-data/visual-tests/notation-elements/score-info-words.png index 50c8c3ef5..8a73e7dd8 100644 Binary files a/test-data/visual-tests/notation-elements/score-info-words.png and b/test-data/visual-tests/notation-elements/score-info-words.png differ diff --git a/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-off.png b/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-off.png index fa740b216..495e53736 100644 Binary files a/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-off.png and b/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-off.png differ diff --git a/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-on.png b/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-on.png index 26ffb18e4..89bc351b4 100644 Binary files a/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-on.png and b/test-data/visual-tests/notation-elements/tab-notes-on-tied-bends-on.png differ diff --git a/test-data/visual-tests/notation-elements/track-names-off.png b/test-data/visual-tests/notation-elements/track-names-off.png index 92a4c8d45..e441128db 100644 Binary files a/test-data/visual-tests/notation-elements/track-names-off.png and b/test-data/visual-tests/notation-elements/track-names-off.png differ diff --git a/test-data/visual-tests/notation-elements/track-names-on.png b/test-data/visual-tests/notation-elements/track-names-on.png index b480b2215..e403d5878 100644 Binary files a/test-data/visual-tests/notation-elements/track-names-on.png and b/test-data/visual-tests/notation-elements/track-names-on.png differ diff --git a/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-off.png b/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-off.png index 4f8bbc86c..d71f56823 100644 Binary files a/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-off.png and b/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-off.png differ diff --git a/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-on.png b/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-on.png index 211262c2e..d51e03745 100644 Binary files a/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-on.png and b/test-data/visual-tests/notation-elements/zeros-on-dive-whammys-on.png differ diff --git a/test-data/visual-tests/special-notes/dead-notes.png b/test-data/visual-tests/special-notes/dead-notes.png index 17128f9a5..74acc0227 100644 Binary files a/test-data/visual-tests/special-notes/dead-notes.png and b/test-data/visual-tests/special-notes/dead-notes.png differ diff --git a/test-data/visual-tests/special-notes/ghost-notes.png b/test-data/visual-tests/special-notes/ghost-notes.png index 57e084830..0d523af25 100644 Binary files a/test-data/visual-tests/special-notes/ghost-notes.png and b/test-data/visual-tests/special-notes/ghost-notes.png differ diff --git a/test-data/visual-tests/special-notes/grace-notes.png b/test-data/visual-tests/special-notes/grace-notes.png index a0ffa75dd..ae46986b7 100644 Binary files a/test-data/visual-tests/special-notes/grace-notes.png and b/test-data/visual-tests/special-notes/grace-notes.png differ diff --git a/test-data/visual-tests/special-notes/tied-notes.png b/test-data/visual-tests/special-notes/tied-notes.png index 4100eefa3..0354e1036 100644 Binary files a/test-data/visual-tests/special-notes/tied-notes.png and b/test-data/visual-tests/special-notes/tied-notes.png differ diff --git a/test-data/visual-tests/special-tracks/percussion.png b/test-data/visual-tests/special-tracks/percussion.png index 90f05ffb3..c59f72f66 100644 Binary files a/test-data/visual-tests/special-tracks/percussion.png and b/test-data/visual-tests/special-tracks/percussion.png differ diff --git a/test/visualTests/features/EffectsAndAnnotations.test.ts b/test/visualTests/features/EffectsAndAnnotations.test.ts index 119faa38f..32720773f 100644 --- a/test/visualTests/features/EffectsAndAnnotations.test.ts +++ b/test/visualTests/features/EffectsAndAnnotations.test.ts @@ -17,6 +17,17 @@ describe('EffectsAndAnnotationsTests', () => { await VisualTestHelper.runVisualTest('effects-and-annotations/tempo.gp'); }); + it('tempo-text', async () => { + await VisualTestHelper.runVisualTestTex( + ` + \\tempo 90 "First" + . + :4 3.3*4 | 3.3 3.3 {v f tempo 120 "Other" } 3.3 6.3 + `, + `effects-and-annotations/tempo-text.png` + ); + }); + it('beat-tempo-change', async () => { await VisualTestHelper.runVisualTest('effects-and-annotations/beat-tempo-change.gp'); }); @@ -245,7 +256,9 @@ describe('EffectsAndAnnotationsTests', () => { }); it('bend-vibrato-default', async () => { - const inputFileData = await TestPlatform.loadFile(`test-data/visual-tests/effects-and-annotations/bend-vibrato.gp`); + const inputFileData = await TestPlatform.loadFile( + `test-data/visual-tests/effects-and-annotations/bend-vibrato.gp` + ); const referenceFileName = 'effects-and-annotations/bend-vibrato-default.png'; const settings = new Settings(); const score = ScoreLoader.loadScoreFromBytes(inputFileData, settings); @@ -253,7 +266,9 @@ describe('EffectsAndAnnotationsTests', () => { }); it('bend-vibrato-songbook', async () => { - const inputFileData = await TestPlatform.loadFile(`test-data/visual-tests/effects-and-annotations/bend-vibrato.gp`); + const inputFileData = await TestPlatform.loadFile( + `test-data/visual-tests/effects-and-annotations/bend-vibrato.gp` + ); const referenceFileName = 'effects-and-annotations/bend-vibrato-songbook.png'; const settings = new Settings(); settings.setSongBookModeSettings();