Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Генератор градиентов
Формирует градиентную картинку налету на основании переданных паратметров:
<img src="gradient.php?type=g&w=500&h=30">
Данный пример позволяет сформировать градиентное изображение в online.
Исходный код примера:
//определяем тип: вертикальный или горизонтальный
$type = (isset($_GET['type']) && $_GET['type'] == 'g') ? 'g' : 'v';
//определяем высоту
$height = (isset($_GET['h'])) ? intval($_GET['h']) : 100;
//определяем ширину
$width = (isset($_GET['w'])) ? intval($_GET['w']) : 60;
//определяем цвета
$start = (isset($_GET['s']) && preg_match('#[0-9A-F]{6}#',$_GET['s'])) ? $_GET['s'] : '000000';
$end = (isset($_GET['e']) && preg_match('#[0-9A-F]{6}#',$_GET['e'])) ? $_GET['e'] : 'FFFFFF';
//определяем RGB этих цветов
$start_r= hexdec(substr($start, 0, 2));
$start_g = hexdec(substr($start, 2, 2));
$start_b = hexdec(substr($start, 4, 2));
$end_r = hexdec(substr($end, 0, 2));
$end_g = hexdec(substr($end, 2, 2));
$end_b = hexdec(substr($end, 4, 2));
//создаём картинку
$image = imagecreate($width, $height);
//определяем тип и рисуем градиент
if($type == 'g'){
for($x=0; $x<$width; $x++){
$new_r = $start_r - intval(($start_r - $end_r) / $width * $x);
$new_g = $start_g - intval(($start_g - $end_g) / $width * $x);
$new_b = $start_b - intval(($start_b - $end_b) / $width * $x);
$row_color = imagecolorresolve($image, $new_r, $new_g, $new_b);
imageline($image, $x, 0, $x, $height, $row_color);
}
}else{
for($y=0; $y<$height; $y++){
$new_r = $start_r - intval(($start_r - $end_r) / $height * $y);
$new_g = $start_g - intval(($start_g - $end_g) / $height * $y);
$new_b = $start_b - intval(($start_b - $end_b) / $height * $y);
$row_color = imagecolorresolve($image, $new_r, $new_g, $new_b);
imageline($image, 0, $y, $width, $y, $row_color);
}
}
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
Примеры использования:
<img src="gradient.php">
<img src="gradient.php?type=g&w=500&h=80&s=F01935&e=08B864">
- Описание параметров:
- type - тип градиента (горизонтальный - g, вертикальный - v - по умолчанию)
- w - ширина картинки. По умолчанию 60
- h - высота картинки. По умолчанию 100
- s - цвет начала. По умолчанию чёрный
- e - цвет конца. По умолчанию белый.
Источник: http://phpcodes.ru/code14.html
.
Прокомментировать/Отблагодарить