| Index: Source/core/rendering/svg/SVGTextLayoutEngine.cpp
|
| diff --git a/Source/core/rendering/svg/SVGTextLayoutEngine.cpp b/Source/core/rendering/svg/SVGTextLayoutEngine.cpp
|
| index 2c9023cbb36d9178cd8827d87e08d85790a2e9f1..acc909fe5ace3207bf041a2d6c1856f32f86eb90 100644
|
| --- a/Source/core/rendering/svg/SVGTextLayoutEngine.cpp
|
| +++ b/Source/core/rendering/svg/SVGTextLayoutEngine.cpp
|
| @@ -505,9 +505,6 @@ void SVGTextLayoutEngine::layoutTextOnLineOrPath(SVGInlineTextBox* textBox, cons
|
| // Apply dx/dy value adjustments to current text position, if needed.
|
| updateRelativePositionAdjustmentsIfNeeded(data.dx, data.dy);
|
|
|
| - // Calculate SVG Fonts kerning, if needed.
|
| - float kerning = spacingLayout.calculateSVGKerning(m_isVerticalText, visualMetrics.glyph());
|
| -
|
| // Calculate CSS 'letter-spacing' and 'word-spacing' for next character, if needed.
|
| float spacing = spacingLayout.calculateCSSSpacing(currentCharacter);
|
|
|
| @@ -519,7 +516,7 @@ void SVGTextLayoutEngine::layoutTextOnLineOrPath(SVGInlineTextBox* textBox, cons
|
| if (y != SVGTextLayoutAttributes::emptyValue())
|
| m_textPathCurrentOffset = y + m_textPathStartOffset;
|
|
|
| - m_textPathCurrentOffset += m_dy - kerning;
|
| + m_textPathCurrentOffset += m_dy;
|
| m_dy = 0;
|
|
|
| // Apply dx/dy correction and setup translations that move to the glyph midpoint.
|
| @@ -530,7 +527,7 @@ void SVGTextLayoutEngine::layoutTextOnLineOrPath(SVGInlineTextBox* textBox, cons
|
| if (x != SVGTextLayoutAttributes::emptyValue())
|
| m_textPathCurrentOffset = x + m_textPathStartOffset;
|
|
|
| - m_textPathCurrentOffset += m_dx - kerning;
|
| + m_textPathCurrentOffset += m_dx;
|
| m_dx = 0;
|
|
|
| // Apply dx/dy correction and setup translations that move to the glyph midpoint.
|
| @@ -566,13 +563,10 @@ void SVGTextLayoutEngine::layoutTextOnLineOrPath(SVGInlineTextBox* textBox, cons
|
| angle -= 90;
|
| } else {
|
| // Apply all previously calculated shift values.
|
| - if (m_isVerticalText) {
|
| + if (m_isVerticalText)
|
| x += baselineShift;
|
| - y -= kerning;
|
| - } else {
|
| - x -= kerning;
|
| + else
|
| y -= baselineShift;
|
| - }
|
|
|
| x += m_dx;
|
| y += m_dy;
|
| @@ -580,7 +574,7 @@ void SVGTextLayoutEngine::layoutTextOnLineOrPath(SVGInlineTextBox* textBox, cons
|
|
|
| // Determine whether we have to start a new fragment.
|
| bool shouldStartNewFragment = m_dx || m_dy || m_isVerticalText || m_inPathLayout || angle || angle != lastAngle
|
| - || orientationAngle || kerning || applySpacingToNextCharacter || definesTextLength;
|
| + || orientationAngle || applySpacingToNextCharacter || definesTextLength;
|
|
|
| // If we already started a fragment, close it now.
|
| if (didStartTextFragment && shouldStartNewFragment) {
|
|
|