@narciso
Для того, чтобы затемнить картинку и наложить текст с логотипом с помощью php, можно использовать функции изображения в GD библиотеке или ImageMagick.
Пример реализации с помощью GD библиотеки:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
// Создаем изображение из исходного файла $img = imagecreatefromjpeg('image.jpg'); // Устанавливаем цвет для затемнения $color = imagecolorallocatealpha($img, 0, 0, 0, 100); // Создаем прозрачный прямоугольник для затемнения imagefilledrectangle($img, 0, 0, imagesx($img), imagesy($img), $color); // Устанавливаем цвет для текста $textColor = imagecolorallocate($img, 255, 255, 255); // Устанавливаем путь к файлу с логотипом $logoPath = 'logo.png'; // Создаем изображение логотипа $logo = imagecreatefrompng($logoPath); // Устанавливаем позицию для логотипа $logoX = 10; $logoY = 10; // Копируем логотип на изображение imagecopy($img, $logo, $logoX, $logoY, 0, 0, imagesx($logo), imagesy($logo)); // Устанавливаем текст для надписи $text = 'Пример текста'; // Устанавливаем размер шрифта $fontSize = 30; // Устанавливаем позицию для надписи $textX = 100; $textY = 100; // Устанавливаем шрифт $fontFile = 'font.ttf'; // Рисуем надпись на изображении imagettftext($img, $fontSize, 0, $textX, $textY, $textColor, $fontFile, $text); // Выводим изображение на экран или сохраняем в файл header('Content-Type: image/jpeg'); imagejpeg($img, null, 100); // Освобождаем память imagedestroy($img); imagedestroy($logo); |
Этот код создаст новое изображение на основе исходного файла image.jpg
, затемнит его с помощью прозрачного прямоугольника, наложит на него логотип logo.png
и добавит надпись «Пример текста» в заданном месте с использованием шрифта font.ttf
. Результат будет выводиться на экран как JPEG изображение с максимальным качеством.