[TextLayer] Reduce the amount of intermediary strings in expandTextDivs

By using template strings, we can avoid some unnecessary string allocations (which is also helped by shortening a variable name).
This commit is contained in:
Jonas Jenwald 2019-08-19 12:09:18 +02:00
parent 45dfad8640
commit 431a264126

View File

@ -628,49 +628,48 @@ var renderTextLayer = (function renderTextLayerClosure() {
} }
for (var i = 0, ii = this._textDivs.length; i < ii; i++) { for (var i = 0, ii = this._textDivs.length; i < ii; i++) {
var div = this._textDivs[i]; const div = this._textDivs[i];
var divProperties = this._textDivProperties.get(div); const divProps = this._textDivProperties.get(div);
if (divProperties.isWhitespace) { if (divProps.isWhitespace) {
continue; continue;
} }
if (expandDivs) { if (expandDivs) {
var transform = '', padding = ''; let transform = '', padding = '';
if (divProperties.scale !== 1) { if (divProps.scale !== 1) {
transform = 'scaleX(' + divProperties.scale + ')'; transform = `scaleX(${divProps.scale})`;
} }
if (divProperties.angle !== 0) { if (divProps.angle !== 0) {
transform = 'rotate(' + divProperties.angle + 'deg) ' + transform; transform = `rotate(${divProps.angle}deg) ${transform}`;
} }
if (divProperties.paddingLeft !== 0) { if (divProps.paddingLeft !== 0) {
padding += ' padding-left: ' + padding +=
(divProperties.paddingLeft / divProperties.scale) + 'px;'; ` padding-left: ${divProps.paddingLeft / divProps.scale}px;`;
transform += ' translateX(' + transform +=
(-divProperties.paddingLeft / divProperties.scale) + 'px)'; ` translateX(${-divProps.paddingLeft / divProps.scale}px)`;
} }
if (divProperties.paddingTop !== 0) { if (divProps.paddingTop !== 0) {
padding += ' padding-top: ' + divProperties.paddingTop + 'px;'; padding += ` padding-top: ${divProps.paddingTop}px;`;
transform += ' translateY(' + (-divProperties.paddingTop) + 'px)'; transform += ` translateY(${-divProps.paddingTop}px)`;
} }
if (divProperties.paddingRight !== 0) { if (divProps.paddingRight !== 0) {
padding += ' padding-right: ' + padding +=
(divProperties.paddingRight / divProperties.scale) + 'px;'; ` padding-right: ${divProps.paddingRight / divProps.scale}px;`;
} }
if (divProperties.paddingBottom !== 0) { if (divProps.paddingBottom !== 0) {
padding += ' padding-bottom: ' + padding += ` padding-bottom: ${divProps.paddingBottom}px;`;
divProperties.paddingBottom + 'px;';
} }
if (padding !== '') { if (padding !== '') {
div.setAttribute('style', divProperties.style + padding); div.setAttribute('style', divProps.style + padding);
} }
if (transform !== '') { if (transform !== '') {
div.style.transform = transform; div.style.transform = transform;
} }
} else { } else {
div.style.padding = 0; div.style.padding = 0;
div.style.transform = divProperties.originalTransform || ''; div.style.transform = divProps.originalTransform || '';
} }
} }
}, },