From 7c05e038b2cb8b4e121f0056c4a7e1eb5eda266b Mon Sep 17 00:00:00 2001 From: Mikael Sand Date: Sat, 22 Jul 2017 16:09:32 +0300 Subject: [PATCH] Refactor: simplify glyph translate calculation --- .../main/java/com/horcrux/svg/TSpanShadowNode.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/android/src/main/java/com/horcrux/svg/TSpanShadowNode.java b/android/src/main/java/com/horcrux/svg/TSpanShadowNode.java index 8be702ff..d413fc63 100644 --- a/android/src/main/java/com/horcrux/svg/TSpanShadowNode.java +++ b/android/src/main/java/com/horcrux/svg/TSpanShadowNode.java @@ -186,11 +186,12 @@ class TSpanShadowNode extends TextShadowNode { dy = gc.nextDeltaY(); matrix = new Matrix(); - float start = offset + x + dx - width; + float xSum = offset + x + dx - width; + float ySum = y + dy; if (textPath != null) { float halfway = width / 2; - float midpoint = start + halfway; + float midpoint = xSum + halfway; if (midpoint > distance) { break; @@ -201,11 +202,11 @@ class TSpanShadowNode extends TextShadowNode { assert pm != null; pm.getMatrix(midpoint, matrix, POSITION_MATRIX_FLAG | TANGENT_MATRIX_FLAG); - matrix.preTranslate(-halfway, dy); - matrix.preScale(renderMethodScaling, 1); - matrix.postTranslate(0, y); + matrix.preTranslate(-halfway, 0); + matrix.preScale(renderMethodScaling, renderMethodScaling); + matrix.postTranslate(0, ySum); } else { - matrix.setTranslate(start, y + dy); + matrix.setTranslate(xSum, ySum); } matrix.preRotate(r);