Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Прикрепить функцию водяного знака. Прикрепить функцию водяного знака. 
:(
    Опции темы
Predator199
Дата 11.6.2012, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 412
Регистрация: 1.2.2012

Репутация: -3
Всего: -4



Добрый день. Есть готовый скрипт которым я пользуюсь, хотел бы чтоб на изображение налаживался водяной знак.
Помогите прикрепить watermark.

Вот рабочий скрипт загрузки изображения.
Код

<?php
        
         $max_filesize = 2097152; 
     $allowed_filetypes = array('.jpg','.jpeg','.gif','.png');
     $filename = $_FILES['userfile']['name']; 
     $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);
     $file_strip = str_replace(" ","_",$filename);
     $upload_path = 'uploads/fpsimages/'; 
     
        include 'watermark.func.php';

    if(!in_array($ext,$allowed_filetypes)) {
            die('<div class="error">На сайте зпрещено загружать файлы с таким форматом.</div>');
    }
   if(filesize($_FILES['userfile']['tmp_name']) > $max_filesize) {
      die('<div class="error">Файл, который Вы попытались загрузить, слишком большой.</div>');
    }
 
   if(!is_writable($upload_path)) {
      die('<div class="error">Извените, администрация забылавыставить права ><, скоро поправим</div>');
    }
     if(move_uploaded_file($_FILES['userfile']['tmp_name'],$upload_path . $file_strip)) {
      echo '<div class="success">http://www.ru/uploads/fpsimages/'. $file_strip .'</div>'; 
    } else {
      echo '<div class="error">'. $file_strip .'Не был загружен, пожалуйста поробуйте еще.</div>';
 }
?>



Рабочая и настроенная функция watermark.func.php
Код

<?php

/**
 * Наложение водяного знака в виде изображения
 * @param $oldimage_name - исходное изображение
 * @param $new_image_name - выходное изображение
 * @return Boolean
 */

function watermark_image($oldimage_name, $new_image_name){
    // получаем имя изображения, используемого в качестве водяного знака    
    global $image_path;
    // получаем размеры исходного изображения
    list($owidth,$oheight) = getimagesize($oldimage_name);
    // задаем размеры для выходного изображения    
    $width = 810;
    $height = 500;    
    // создаем выходное изображение размерами, указанными выше
    $im = imagecreatetruecolor($width, $height);
    $img_src = imagecreatefromjpeg($oldimage_name);
    // наложение на выходное изображение, исходного
    imagecopyresampled($im, $img_src, 0, 0, 0, 58, $width, $height, $owidth, $oheight);
    $watermark = imagecreatefrompng($image_path);
    // получаем размеры водяного знака
    list($w_width, $w_height) = getimagesize($image_path);
    // определяем позицию расположения водяного знака    
    $pos_x = $width - $w_width; 
    $pos_y = $height - $w_height;
    // накладываем водяной знак
    imagecopy($im, $watermark, $pos_x, $pos_y, 10, 10, $w_width, $w_height);
    // сохраняем выходное изображение, уже с водяным знаком в формате jpg и качеством 100
    imagejpeg($im, $new_image_name, 90);
    // уничтожаем изображения
    imagedestroy($im);
    unlink($oldimage_name);
    return true;
}

?>


Сперва нужно подключить функцию 
include 'watermark.func.php';

а вот дальше не знаю что делать, помогите.

Это сообщение отредактировал(а) Predator199 - 11.6.2012, 15:23
PM MAIL   Вверх
Sanchezzz
Дата 11.6.2012, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



Код

<?php



         $max_filesize = 2097152; 
     $allowed_filetypes = array('.jpg','.jpeg','.gif','.png');
     $filename = $_FILES['userfile']['name']; 
     $ext = substr($filename, strpos($filename,'.'), strlen($filename)-1);
     $file_strip = str_replace(" ","_",$filename);
     $upload_path = 'uploads/fpsimages/'; 
     
        include 'watermark.func.php';
    if(!in_array($ext,$allowed_filetypes)) {
            die('<div class="error">На сайте зпрещено загружать файлы с таким форматом.</div>');
    }
   if(filesize($_FILES['userfile']['tmp_name']) > $max_filesize) {
      die('<div class="error">Файл, который Вы попытались загрузить, слишком большой.</div>');
    }
 
   if(!is_writable($upload_path)) {
      die('<div class="error">Извените, администрация забылавыставить права ><, скоро поправим</div>');
    }
     if(move_uploaded_file($_FILES['userfile']['tmp_name'],$upload_path . $file_strip)) {
         $image_path = '';  //суда вписать путь до вотермарка 
        watermark_image($upload_path . $file_strip , $upload_path . $file_strip);


      echo '<div class="success">http://www.ru/uploads/fpsimages/'. $file_strip .'</div>'; 
    } else {
      echo '<div class="error">'. $file_strip .'Не был загружен, пожалуйста поробуйте еще.</div>';
 }
?>


24 строка впиши путь до фотермарка дальше играйся с размерами если вотермарк криво накладывается 

Это сообщение отредактировал(а) Sanchezzz - 11.6.2012, 18:38


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0450 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.