summaryrefslogtreecommitdiff
path: root/src/mbgl/text/shaping.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/text/shaping.cpp')
-rw-r--r--src/mbgl/text/shaping.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/mbgl/text/shaping.cpp b/src/mbgl/text/shaping.cpp
index d6d9a3d34e..a454fc6506 100644
--- a/src/mbgl/text/shaping.cpp
+++ b/src/mbgl/text/shaping.cpp
@@ -432,10 +432,18 @@ const Shaping getShaping(const TaggedString& formattedString,
reorderedLines.emplace_back(line, formattedString.getSections());
}
}
- Shaping shaping(translate[0], translate[1], writingMode, reorderedLines.size());
+
+ Shaping shaping;
+ // Swap text-offset for vertical POI labels.
+ if (allowVerticalPlacement && writingMode == WritingModeType::Vertical) {
+ shaping = Shaping(translate[1], -translate[0], writingMode, reorderedLines.size());
+ } else {
+ shaping = Shaping(translate[0], translate[1], writingMode, reorderedLines.size());
+ }
+
shapeLines(shaping, reorderedLines, spacing, lineHeight, textAnchor,
textJustify, writingMode, glyphs, allowVerticalPlacement);
-
+
return shaping;
}