From 8e391d903d119996f0e9d4f59fb1332059479ceb Mon Sep 17 00:00:00 2001 From: Bruno Saad Date: Fri, 28 Jul 2023 00:30:47 +0000 Subject: [PATCH] Fix for text without animation not rendering as a single tspan --- .../js/elements/svgElements/SVGTextElement.js | 20 +++++++++---------- player/js/utils/DataManager.js | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/player/js/elements/svgElements/SVGTextElement.js b/player/js/elements/svgElements/SVGTextElement.js index 683a68d63..e46f8468d 100644 --- a/player/js/elements/svgElements/SVGTextElement.js +++ b/player/js/elements/svgElements/SVGTextElement.js @@ -6,12 +6,12 @@ import { } from '../../utils/helpers/arrays'; import createNS from '../../utils/helpers/svg_elements'; import BaseElement from '../BaseElement'; -import TransformElement from '../helpers/TransformElement'; -import SVGBaseElement from './SVGBaseElement'; -import HierarchyElement from '../helpers/HierarchyElement'; +import ITextElement from '../TextElement'; import FrameElement from '../helpers/FrameElement'; +import HierarchyElement from '../helpers/HierarchyElement'; import RenderableDOMElement from '../helpers/RenderableDOMElement'; -import ITextElement from '../TextElement'; +import TransformElement from '../helpers/TransformElement'; +import SVGBaseElement from './SVGBaseElement'; import SVGCompElement from './SVGCompElement'; // eslint-disable-line import SVGShapeElement from './SVGShapeElement'; @@ -130,18 +130,18 @@ SVGTextLottieElement.prototype.buildNewText = function () { len = textContent.length; yPos = documentData.ps ? documentData.ps[1] + documentData.ascent : 0; for (i = 0; i < len; i += 1) { - tSpan = this.textSpans[i].span || createNS('tspan'); - tSpan.textContent = textContent[i]; - tSpan.setAttribute('x', 0); - tSpan.setAttribute('y', yPos); - tSpan.style.display = 'inherit'; - tElement.appendChild(tSpan); if (!this.textSpans[i]) { this.textSpans[i] = { span: null, glyph: null, }; } + tSpan = this.textSpans[i].span || createNS('tspan'); + tSpan.textContent = textContent[i]; + tSpan.setAttribute('x', 0); + tSpan.setAttribute('y', yPos); + tSpan.style.display = 'inherit'; + tElement.appendChild(tSpan); this.textSpans[i].span = tSpan; yPos += documentData.finalLineHeight; } diff --git a/player/js/utils/DataManager.js b/player/js/utils/DataManager.js index eb7b5d9f5..f127a0b85 100644 --- a/player/js/utils/DataManager.js +++ b/player/js/utils/DataManager.js @@ -485,7 +485,7 @@ const dataManager = (function () { function completeText(data) { if (data.t.a.length === 0 && !('m' in data.t.p)) { - // data.singleShape = true; + data.singleShape = true; } }