From 4a16e67ea1efbe8063a4aea02cb3223d20243ce3 Mon Sep 17 00:00:00 2001 From: Dimitry Ivanov Date: Mon, 6 Aug 2018 16:14:37 +0300 Subject: [PATCH] Fix OrderedListItemSpan text position (baseline) --- .../src/main/java/ru/noties/markwon/spans/CanvasUtils.java | 3 ++- .../java/ru/noties/markwon/spans/OrderedListItemSpan.java | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/library/src/main/java/ru/noties/markwon/spans/CanvasUtils.java b/library/src/main/java/ru/noties/markwon/spans/CanvasUtils.java index b55783b8..0851e855 100644 --- a/library/src/main/java/ru/noties/markwon/spans/CanvasUtils.java +++ b/library/src/main/java/ru/noties/markwon/spans/CanvasUtils.java @@ -6,7 +6,8 @@ import android.support.annotation.NonNull; abstract class CanvasUtils { static float textCenterY(int top, int bottom, @NonNull Paint paint) { - return (int) (bottom - ((bottom - top) / 2) - ((paint.descent() + paint.ascent()) / 2.F + .5F)); + // @since 1.1.1 it's `top +` and not `bottom -` + return (int) (top + ((bottom - top) / 2) - ((paint.descent() + paint.ascent()) / 2.F + .5F)); } private CanvasUtils() { diff --git a/library/src/main/java/ru/noties/markwon/spans/OrderedListItemSpan.java b/library/src/main/java/ru/noties/markwon/spans/OrderedListItemSpan.java index 194f7676..16e9895f 100644 --- a/library/src/main/java/ru/noties/markwon/spans/OrderedListItemSpan.java +++ b/library/src/main/java/ru/noties/markwon/spans/OrderedListItemSpan.java @@ -59,8 +59,7 @@ public class OrderedListItemSpan implements LeadingMarginSpan { left = x + (width * dir) + (width - numberWidth); } - final float numberY = CanvasUtils.textCenterY(top, bottom, p); - - c.drawText(number, left, numberY, p); + // @since 1.1.1 we are using `baseline` argument to position text + c.drawText(number, left, baseline, p); } }