Файл: inc/img_copyright.php
Строк: 20
<?
// накладываем копирайт на изображения, если он есть.
// размер копирайта динамически изменяется в зависимости от изображения
function img_copyright($img)
{
    global $set, $setup;
    /// Сначала генерируем и сохраняем файл маркировки
    $imwidth = 100;
    $imheight = 20;
    $im = ImageCreate($imwidth, $imheight);
    $background_color = ImageColorAllocate($im, 255, 255, 255);
    $text_color = ImageColorAllocate($im, 0, 0, 160);
    $border_color = ImageColorAllocate($im, 154, 154, 154);
    /*
    // Генерируем помехи в виде линий                                   
    $g1 = imagecolorallocate($im, 152, 152, 152); // Задаем цвет линий  
    for ($i = 0; $i <= 100; $i += 6)                                    
    imageline($im, $i, 0, $i, 25, $g1); // Горизонтальные линии     
    for ($i = 0; $i <= 25; $i += 5)                                     
    imageline($im, 0, $i, 100, $i, $g1); // Вертикальные линии      
    */
    // Генерируем надпись
    $x = ($imwidth - strlen($code)) / ($setup['mark_size'] * 6);
    $y = 2;
    imagestring($im, $setup['mark_size'] * 2, $x, $y, $setup['mark_text'], $text_color);
    ImagePNG($im, 'inc/copy.png');
    imagedestroy($im);
    if ($copy = @imagecreatefromstring(file_get_contents('inc/copy.png')))
    {
        $img_x = imagesx($img);
        $img_y = imagesy($img);
        $copy_x = imagesx($copy);
        $copy_y = imagesy($copy);
        $w = intval(min($img_x / 2, $copy_x, 128));
        $h = intval(min($img_y / 2, $copy_y, 64));
        $x_ratio = $w / $copy_x;
        $y_ratio = $h / $copy_y;
        if (($copy_x <= $w) && ($img_y <= $h))
        {
            $dstW = $copy_x;
            $dstH = $copy_y;
        } elseif (($x_ratio * $copy_y) < $h)
        {
            $dstH = ceil($x_ratio * $copy_y);
            $dstW = $w;
        } else
        {
            $dstW = ceil($y_ratio * $copy_x);
            $dstH = $h;
        }
        imagecopyresampled($img, $copy, $img_x - $dstW, $img_y - $dstH, 0, 0, $dstW, $dstH, $copy_x, $copy_y);
    }
    return $img;
}
?>