From 631d0574c617eac22884da1cb3dc08e1be2a8905 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Malte=20Hu=CC=88bner?= Date: Sat, 30 Sep 2017 23:07:32 +0200 Subject: [PATCH] Place awesome icons at the right position. --- .../Marker/ExtraMarkerPrinter.php | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/ElementPrinter/Marker/ExtraMarkerPrinter.php b/src/ElementPrinter/Marker/ExtraMarkerPrinter.php index e44ac01..aff2189 100644 --- a/src/ElementPrinter/Marker/ExtraMarkerPrinter.php +++ b/src/ElementPrinter/Marker/ExtraMarkerPrinter.php @@ -60,9 +60,25 @@ class ExtraMarkerPrinter imagecopy($markerImage, $extramarkers, 0, 0, $sourceX, $sourceY, $markerWidth, $markerHeight); - $white = imagecolorallocate($markerImage, 255, 255, 255); - imagettftext($markerImage, 24, 0, 16, 43, $white, __DIR__.'/../../../fonts/fontawesome-webfont.ttf', json_decode(sprintf('"&#x%s;"', $this->marker->getAwesome()))); + $this->writeMarker($markerImage); return $markerImage; } + + protected function writeMarker($markerImage) + { + $fontSize = 20; + $fontFile = __DIR__.'/../../../fonts/fontawesome-webfont.ttf'; + $text = json_decode(sprintf('"&#x%s;"', $this->marker->getAwesome())); + + $bbox = imagettfbbox($fontSize, 0, $fontFile, $text); + + $x = $bbox[0] + (imagesx($markerImage) / 2) - ($bbox[4] / 2) + 3; + $y = 42; + + $white = imagecolorallocate($markerImage, 255, 255, 255); + imagettftext($markerImage, $fontSize, 0, $x, $y, $white, $fontFile, $text); + + + } }