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, 11 insertions, 1 deletions
diff --git a/src/mbgl/text/shaping.cpp b/src/mbgl/text/shaping.cpp
index 033cbdf4e5..725a93555b 100644
--- a/src/mbgl/text/shaping.cpp
+++ b/src/mbgl/text/shaping.cpp
@@ -79,7 +79,17 @@ PositionedIcon PositionedIcon::shapeIcon(const ImagePosition& image,
float top = dy - image.displaySize()[1] * anchorAlign.verticalAlign;
float bottom = top + image.displaySize()[1];
- return PositionedIcon{image, top, bottom, left, right};
+ Padding collisionPadding;
+ if (image.content) {
+ auto& content = *image.content;
+ const auto pixelRatio = image.pixelRatio;
+ collisionPadding.left = content.left / pixelRatio;
+ collisionPadding.top = content.top / pixelRatio;
+ collisionPadding.right = image.displaySize()[0] - content.right / pixelRatio;
+ collisionPadding.bottom = image.displaySize()[1] - content.bottom / pixelRatio;
+ }
+
+ return PositionedIcon{image, top, bottom, left, right, collisionPadding};
}
void PositionedIcon::fitIconToText(const Shaping& shapedText,