• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Водяные знаки

Статус
В этой теме нельзя размещать новые ответы.

sk8er

Banochkin.com
Регистрация
21 Июл 2008
Сообщения
404
Реакции
25
1) дле 7.2
2) нулёная мид тимом
3) Вопрос такой назрел любопытный... Есть ли возможность накладывать 2 водяных знака? Нужно, чтоб один накладывался в правый нижний угол, другой в левый верхний угол. Ну в идеале чтоб редактировать можно было :)
 
  • Заблокирован
  • #2
делаеш блок ватемага 50 на 100 и в двух углах пишешь свой ватермак,ламерский вопрос :-]
 
открываем файл engine/inc/makethumb.php

ищем следующий код:
Код:
function insert_watermark($min_image)
    { global $config;
        $margin = 7;

		$this->watermark_image_light = ROOT_DIR.'/templates/'.$config['skin'].'/dleimages/watermark_light.png';
		$this->watermark_image_dark =  ROOT_DIR.'/templates/'.$config['skin'].'/dleimages/watermark_dark.png';

        $image_width = imagesx($this->img['src']);
        $image_height = imagesy($this->img['src']);

        list($watermark_width, $watermark_height)
            = getimagesize($this->watermark_image_light);


                $watermark_x = $image_width - $margin - $watermark_width;
                $watermark_y = $image_height - $margin - $watermark_height;


        $watermark_x2 = $watermark_x + $watermark_width;
        $watermark_y2 = $watermark_y + $watermark_height;

        if ($watermark_x < 0 OR $watermark_y < 0 OR
            $watermark_x2 > $image_width OR $watermark_y2 > $image_height OR
			$image_width < $min_image OR $image_height < $min_image)
        {
           return;
        }


        $test = imagecreatetruecolor(1, 1);
        imagecopyresampled($test, $this->img['src'], 0, 0, $watermark_x, $watermark_y, 1, 1, $watermark_width, $watermark_height);
        $rgb = imagecolorat($test, 0, 0);

        $r = ($rgb >> 16) & 0xFF;
        $g = ($rgb >> 8) & 0xFF;
        $b = $rgb & 0xFF;

        $max = min($r, $g, $b);
        $min = max($r, $g, $b);
        $lightness = (double)(($max + $min) / 510.0);
        imagedestroy($test);

        $watermark_image = ($lightness < 0.5) ? $this->watermark_image_light : $this->watermark_image_dark;

        $watermark = imagecreatefrompng($watermark_image);

        imagealphablending($this->img['src'], TRUE);
        imagealphablending($watermark, TRUE);

        imagecopy($this->img['src'], $watermark, $watermark_x, $watermark_y, 0, 0,$watermark_width, $watermark_height);

        imagedestroy($watermark);

    }
и в нём уже ковыряемся. допустим за расположение отвечают эти переменные:
$watermark_x и $watermark_y
я думаю по аналогии сможете добавить по переменной, для второй картинки в другом углу.

Добавлено через 2 минуты
делаеш блок ватемага 50 на 100 и в двух углах пишешь свой ватермак,ламерский вопрос :-]
Ламерский ответ :mad: А что делать, если картинки всегда разного размера?
Где-то будет нормально, а где-то будет получаться, что watermark в центре картинки допустим!
 
делаеш блок ватемага 50 на 100 и в двух углах пишешь свой ватермак,ламерский вопрос :-]

эт ты зря... в движке фиксация картинки по максимальным размерам, а если картинка будет меньше? Я так понял, что его интересует сама функция... То php тебе в руки, если хоть не много в нем понимашь, то топай в своем двиге сюда:
Код:
/engine/inc/makethumb.php


находи вот эту строку:
Код:
function insert_watermark($min_image)

ну и правь как тебе надо...

зы во бляхамуха, покаписал, раньше меня ответили :D
 
скопировать процедуры функции и все по переименовывать ну и координаты свои и буит 2 )))
 
делаеш блок ватемага 50 на 100 и в двух углах пишешь свой ватермак,ламерский вопрос
:D:D:D Да))) Очень ламерский вопрос))

Ребят, а можете помочь полностью всё реализовать?) Я всё закосячу... в php ничего не знаю...
 
:D:D:D Да))) Очень ламерский вопрос))

Ребят, а можете помочь полностью всё реализовать?) Я всё закосячу... в php ничего не знаю...

Это бы сообщение на серч :) В твою тему об услугах по ДЛЕ :D

Влепите мне кто нить штраф за оффтоп :thenks:
 
  • Заблокирован
  • #8
А не проще создать ватемарк размером 768* и по бокам написать что-то?
 
  • Заблокирован
  • #9
у каждой картинки свой размер, сделаешь 768* а картинку зальют 1280х1024 и бред получится
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху