Spear
почемучка
Наложение watermark на кратинку
Здравствуйте,
у меня такая проблема- пытаюсь сделать скрипт, который будет выводить нужную картинку, накладывая на неё так называемый watermark.
На форуме тем много по поводу ГД, но ничего конкретного ненашел
я с ГД раньше не работал, поэтому парочку топиков более-менее содержательных - не понял.
Вообщем вот есть такой код, хотел бы узнать - насколько он удобен для использования?
Что посоветуете?
-~{}~ 16.06.05 20:37:
Пока проблема в чем - если ставить качество картинки 100, то при выводе новой (с наложенным ватермарком) размер картинки получается больше чем оригинала (примерно на 200 кб)
Здравствуйте,
у меня такая проблема- пытаюсь сделать скрипт, который будет выводить нужную картинку, накладывая на неё так называемый watermark.
На форуме тем много по поводу ГД, но ничего конкретного ненашел
я с ГД раньше не работал, поэтому парочку топиков более-менее содержательных - не понял.Вообщем вот есть такой код, хотел бы узнать - насколько он удобен для использования?
PHP:
<?php
$watermark = "water.png";
$im = imagecreatefrompng($watermark);
$image = $_GET['image'];
$types = array(1 => "gif", 2 => "jpeg", 3 => "png");
if ($image_info = @getimagesize($image))
{
$image_create_handle = "imagecreatefrom".$types[$image_info[2]];
if (!$im2 = @$image_create_handle($image))
{
die("Error opening $image!");
}
imagecopy($im2, $im, (imagesx($im2)/100)-(imagesx($im)/100), (imagesy($im2)/100)-(imagesy($im)/100), 0, 0, imagesx($im), imagesy($im));
if($_GET[repeat])
{
$waterless = imagesx($im2) - imagesx($im);
$rest = ceil($waterless/imagesx($im)/1);
for($n=1; $n<=$rest; $n++)
{
imagecopy($im2, $im, ((imagesx($im2)/100)-(imagesx($im)/100))-(imagesx($im)*$n), (imagesy($im2)/100)-(imagesy($im)/100), 0, 0, imagesx($im), imagesy($im));
imagecopy($im2, $im, ((imagesx($im2)/100)-(imagesx($im)/100))+(imagesx($im)*$n), (imagesy($im2)/100)-(imagesy($im)/100), 0, 0, imagesx($im), imagesy($im));
}
}
header("Content-Type: image/jpeg");
imagejpeg($im2, $destination, 90);
imagedestroy($im);
imagedestroy($im2);
}
else
{
die("Error opening $image!");
}
?>
-~{}~ 16.06.05 20:37:
Пока проблема в чем - если ставить качество картинки 100, то при выводе новой (с наложенным ватермарком) размер картинки получается больше чем оригинала (примерно на 200 кб)

Я пока всю док-цию прочту...