Водяные знаки

Тема в разделе "NetCat", создана пользователем ITyleR, 3 апр 2009.

Статус темы:
Закрыта.
  1. ITyleR

    ITyleR Создатель

    Регистр.:
    14 июл 2007
    Сообщения:
    47
    Симпатии:
    0
    Никто не сталкивался с вопросом наложения водяных знаков на изображения в Netcat ?
    Или это не зависит от движка и наложение происходит при выводе картинки? Как в таком случае быть, если вывод картинок производится через highslide ?
     
  2. s0lo

    s0lo Создатель

    Регистр.:
    24 дек 2006
    Сообщения:
    47
    Симпатии:
    4
    Я думаю, что не важно каким образом осуществляется вывод картинок, т.к. водяные знаки обычно накладываются при добавлении картинки, т.е непосредственно после загрузки.
     
  3. ITyleR

    ITyleR Создатель

    Регистр.:
    14 июл 2007
    Сообщения:
    47
    Симпатии:
    0
    А способы наложения бывают разные? Может есть вариант, не требующий особых знаний, полегче?
     
  4. masterby

    masterby Читатель

    Заблокирован
    Регистр.:
    24 май 2008
    Сообщения:
    261
    Симпатии:
    26
    Все возможные настройки смотри в разделе модули CAPTCHA.Описание смотри в руководстве модулей.
     
  5. s0lo

    s0lo Создатель

    Регистр.:
    24 дек 2006
    Сообщения:
    47
    Симпатии:
    4
    Всё зависит от того какой ватермарк ты хочешь наложить на картинку. Если это просто текст, что очевидно проще, то есть очень много примеров в инете и доступных хороших классов, ежели это картинка, по реализации немного сложнее, то в инете тоже можно найти вот например http://www.codenet.ru/webmast/php/watermark/. В любом случае придется править код нетката в части загрузки изображений.
     
  6. najel

    najel Постоялец

    Регистр.:
    3 фев 2009
    Сообщения:
    145
    Симпатии:
    15
    Ничего править не нужно. Ищем обычный php код наложения водяных знаков, заходим в неткат в действие после добалвения добавляем этот код.
     
  7. programmer87

    programmer87 Создатель

    Регистр.:
    8 фев 2007
    Сообщения:
    23
    Симпатии:
    10
    В данном случае потребуются функции библиотеки GD языка PHP, в интернете найдите необходимые классы для обработки изображений и добавьте их в файл /netcat/modules/default/functions.inc.php а дальше в действии после добавления объекта в компонентах вызывайте необходимые методы класса для обработки закаченного изображения.
     
  8. tranzistor

    tranzistor Создатель

    Регистр.:
    16 дек 2006
    Сообщения:
    26
    Симпатии:
    3
    Ну да, для watermark необходимо знать парочку функций библиотеки GD в PHP
    Недавно писал скрипт, который проставит watermark по центру каждого изображения, взятого из указанной папки и переместит в папку watermarked :ay:

    PHP:
    <?php
    ini_set
    ("max_execution_time""3000");
    $imgfolder "downloadedimg";
    $baseUrl "$_SERVER[DOCUMENT_ROOT]";
    $srcimgfolder "$_SERVER[DOCUMENT_ROOT]/$imgfolder";
    $files scandir($srcimgfolder);
    $files array_slice($files2sizeof($files));

    function 
    watermarkall($infile,$outfile){
        
    $src imagecreatefromjpeg($infile);
        if (!
    $src)
            return 
    0;
        
    $w_src imagesx($src); 
        
    $h_src imagesy($src);
            
    //watermark puts here.
            
    $watermark imagecreatefrompng("watermark.png");
            
    $watermark_w imagesx($watermark);
            
    $watermark_h imagesy($watermark);
            
    imageAlphaBlending($watermarkfalse);
            
    imageSaveAlpha($watermarktrue);
            
    imagecopy($src$watermark$w_src/2-$watermark_w/2$h_src/2-$watermark_h/200,
    $watermark_w$watermark_h);
            
            
    imagejpeg($src,$outfile,100);
            
    imagedestroy($src);
            return 
    1;
    }

    foreach(
    $files as $row){
        
    $infile "$baseUrl/$imgfolder/$row";
        
    $outfile "$baseUrl/watermarked/$row";
        
    watermarkall($infile,$outfile);
    }
    echo 
    "Done!";
    ?>
    Вам наверняка пригодится для обработки уже залитых изображений + по аналогии можете добавить пару строк кода при загрузке фоток.
     
  9. Cokol

    Cokol Создатель

    Регистр.:
    11 июн 2008
    Сообщения:
    17
    Симпатии:
    4
    Аналогично (сохранением функции обработки изображения в /netcat/modules/default/functions.inc.php) можно накладывать WaterMark непосредственно в шаблон, например ".pic_watermark($f_Pic, $text).", где:
    - pic_watermark($a, $b) функция в functions.inc.php
    - $f_Pic - поле шаблона с картинкой
    - $text - текст для размещения на картинке
     
  10. InoffLine

    InoffLine

    Регистр.:
    18 апр 2007
    Сообщения:
    573
    Симпатии:
    155
    а саму функцию pic_watermark можешь написать?
     
Статус темы:
Закрыта.