Нанесение на картинку текста с обводкой

И недавно я столкнулся с проблемой, нужно было нанести текст с обводкой. То есть белый текст с черной окантовкой(обводкой). Стандартного решения в пхп нет, пришлось импровизировать, возможно это не самый рациональный способ, но он работает.
<?php
    $fontName = "impact.ttf"; // путь к шрифту
    $fontSise = 48; // размер шрифта
    $im = imageCreateFromJpeg("pic.jpg"); // картинка-фон
    $padLeft = 10; // отступ слева
    $padTop = $fontSise+30; // отступ справа
    $text = "Текст кир\nиллица"; // текст, который будем наносить на картинку
    $textColor = 0xFFFFFF; // цвет шрифта
    $obvodkaColor = 0x000000; // цвет обводки
    // обводка текста
    imagettftext($im, $fontSise, 0, $padLeft+2, $padTop, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft-2, $padTop, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft, $padTop+2, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft, $padTop-2, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft+1, $padTop+1, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft+1, $padTop-1, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft-1, $padTop-1, $obvodkaColor, $fontName, $text);
    imagettftext($im, $fontSise, 0, $padLeft-1, $padTop+1, $obvodkaColor, $fontName, $text);
    // вывод текста
    imagettftext($im, $fontSise, 0, $padLeft, $padTop, $textColor, $fontName, $text);
    // выводим картинку в браузере
    Header("Content-type: image/png");
    imagePng($im);
     
    // или сохраняем картинку
    //$path = 'C:/testPNG.png';
    //imagePng($im, $path);
    // В конце освобождаем память, занятую картинкой.
    imageDestroy($im);
?>
Теги:
текст
Добавлено: 09 Мая 2018 18:29:06 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...