[php] Добавление на изображение числа циклически

12

Генерация картинок с изменяющимся значением

В данном примере на изображение накладываются числа от 1 до 5, и сохраняется отдельными изображениями

<?php

header("Content-type: image/jpeg"); // указываем на тип передаваемых данных
$root_dir = __DIR__;                // корневая папка
$img = $root_dir."/nakl.png";       // указываем картинку фона PNG
$font = $root_dir."/ff.ttf";        // подрубаем шрифт
$font_size = 140;                   // размер шрифта
$center_w = 220;                    // отступ слева
$center_h = 680;                    // отступ справа

$num_min = 1;   // минимально число
$num_max = 5;   // максимальное число
for ($i = $num_min; $i <= $num_max; $i++) {
    $picture = ImageCreateFrompng($img);                    // открываем рисунок в формате JPEG
    $color = imagecolorallocate($picture, 0, 0, 0);         // цвет текста
    $color_sh = imagecolorallocate($picture, 220, 220, 220);// цвет тени текста
    $box = imagettfbbox($font_size, 0, $font, $i);

    // центруем текст
    $left = $center_w - round(($box[2]-$box[0])/2);
    $top = $center_h - round(($box[7]-$box[1])/2);

    // выводим текст на изображение
    imagettftext($picture, $font_size, 0, $left+10 ,$top+10, $color_sh, $font, $i); // делаем тень текста
    imagettftext($picture, $font_size, 0, $left, $top, $color, $font, $i);          // размещаем текст на картинку

    imagepng($picture, $root_dir."/nakl/nom_".$i.".png");   // сохраняем рисунок в формате JPEG
    imagedestroy($picture);                                 // освобождаем память и закрываем изображение  
}