Войти
Меню :
foto (20)
php img (16)
php (386)



Blog (1575)
php (386)
js (295)
html (152)
css (139)
html tags (62)
js tag (56)
js method (44)
jquery (42)
php array (38)
ruweb.net (37)
text (37)
js date (33)
other (32)
online (30)
form html (30)
Показать еще :
fonts (30)
js events (22)
php file (21)
foto (20)
atom (20)
input (19)
database (19)
php date (18)
svg (18)
forum (18)
mysql (17)
hosting (17)
info (17)
lingvo (17)
php time (16)
board (16)
php img (16)
dosite (16)
color (15)
js url (14)
jsphp (14)
img (14)
js time (14)
table (13)
select (13)
notepad (13)
знак (13)
html book (13)
htaccess (13)
osclass (13)
yandex (13)
download (12)
keyboard (12)
dw block (12)
php path (12)
icon (11)
$ server (11)
form (10)
mouse (10)
vs code (10)
js delete (10)
ftp (9)
hover (8)
chart (8)
php url (7)
comment (7)
php post (7)
adminka (6)
php get (6)
hey tag (6)
canvas (6)
нок (6)
list (6)
iframe (6)
click (6)
js vars (6)
reg.ru (5)
tag a (5)
js math (5)
web (5)
js id (5)
value (5)
console (5)
js file (5)
xml (5)
heading (5)
mb (5)
year (5)
js form (4)
ssl (4)
vk (4)
symbols (4)
task (4)
scandir (4)
js hash (4)
bbcode (4)
base64 (4)
youtube (4)
day (4)
numbers (4)
php var (4)
pages (4)
week (4)
month (4)
games (4)
submit (4)
file (3)
рся (3)
units (3)
jquery post (3)
https (3)
js post (3)
line (3)
money (3)
video (3)
padding (3)
domen (3)
aimp (3)
ucoz (3)
куб (3)
captcha (3)
src (2)
blob (2)
google (2)
prompt (2)
height (2)
details (2)
seo (2)
sitemap (2)
tag hr (2)
counter (2)
пк (2)
typeof (2)
arrows (2)
qr code (2)
js img (2)
lingvo (1)
windows (1)
archive (1)
speed (1)
scroll (1)
cursor (1)
webp (1)
ok (1)
php day (1)
jino (1)
smile (1)
нод (1)
rutube (1)

Ставим водяной знак на картинку php

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

А именно наложения прозрачного "водяного знака" на оригинальное изображение.

Пошаговая инструкция нанесения водяного значка php

  1. Описание как нанести водяной знак на изображение с помощью php
  2. Условие для установки водяного знака
  3. Создаем виртуальный водяной знак.
  4. Сохранение изображения с водяным знаком.
  5. Скрипт водяного знака
  6. Создание водяного знака в редакторе
  7. Как добавить свой размер водяного знака и условие...
  8. Скачать скрипт установка водяного знака- что в архиве.
  9. Скачать можно здесь.

  1. Описание как нанести водяной знак на изображение с помощью php

    Описание алгоритма нанесения водяного знака с помощью php.

    Создаем(заранее) несколько размеров водяных знаков в формате png. В зависимости от размеров загружаемого изображения ставится тот размер водяного знака(png), который подходит по условиям php.

    Накладываем водяной знак, уже на существующую картинку.

    Переписываем исходное изображение.

    Почему именно такой способ нанесения водяного знака!?

    Наложение прозрачного изображения на оригинальное ...

    Дело в том, что я попробовал использовать нанесение текста вместо картинки, но это оказалось таким проблематичным, что я на некоторое количество времени отказался вообще от водяного знака.

    Одна из главных проблем - это позиционирование водяного знака и сделать это со шрифтом... сложно... короче! Я "забодался"!

    В общем - я протестировал нанесение полупрозрачного изображения в виде водяного значка.

    Наш водяной знак будет стоять всегда "ПОСЕРЕДИНЕ" - если вам потребуется разобраться с позиционированием, то у нас есть страница на эту тему!

    Процесс наложения - создание водяного знака.

    У нас будет 4 изображения для наложения водяных знаков.

    Вам понадобится программа, которая сомжет делать полупрозрачное изображение - использовалась программа "Photoshop" в архив положу файл "psd" из которого делались ниже приведенные файлы. Вам потребуется изменить только разрешение исходника + собственный текст, и сохранить новое изображение в новом разрешении 4 раза, в названии файла вы видите какое разрешение файла:

    $watermark_src = __DIR__ . '/watermark_1300_307.png' ;

    $watermark_src = __DIR__ . '/watermark_1000_236.png' ;

    $watermark_src = __DIR__ . '/watermark_700_165.png' ;

    $watermark_src = __DIR__ . '/watermark_500_118.png' ;


  2. Условие для установки водяного знака

    Как вы поняли, наверное, если у нас 4 изображения, то будет 4 условия, разберем на первом, остальные аналогичные... если требуется добавить еще условие

    Загружаем внешнюю картинку с помощью move_uploaded_file

    Получаем размер картинки с помощью getimagesize

    $size_img = getimagesize($img);

    ширина

    $width = $size_img[0];

    высота

    $height = $size_img[1];

    Создаем условие наложения определенного водяного знака если существующее изображение будет в пределах ширина больше "1350" и высота больше "400"

    if($width > 1350 and $height > 400)

    Тогда у нас будет загружаться определенный водяной знак. __DIR__ - для примера и для данного случая - это самый удобный вариант(в том смысле, что путь до папки получается автоматически, где бы эта папка не находилась), если и картинки и скрипт находятся в одной папке.

    $watermark_src = __DIR__ . '/watermark_1300_307.png' ;

    Далее позиционирование...ставим посередине картинки(подробнее)

    $otstup_width = ($width - 1300)/2;

    $otstup_height = ($height/2) - (307/2);

    Создаем некую переменную, потом будем её использовать

    $do_watermark = 1;

    Собираем код(весь код не буду публиковать - очень длинный...(всё будет в архиве)):

    $img = __DIR__ . '/оригинал.png' ; // путь до исходной картинки

    $size_img = getimagesize($img); // получаем размер картинки

    $width = $size_img[0]; // ширина

    $height = $size_img[1]; // высота

    if($width > 1350 and $height > 400)

    {

      $watermark_src = __DIR__ . '/watermark_1300_307.png' ;

      $otstup_width = ($width - 1300)/2;

      $otstup_height = ($height/2) - (307/2);

      $do_watermark = 1;

    }

    еще условия... много условий


  3. Создаем виртуальный водяной знак.

    Вот и пригодилась та переменная($do_watermark)), по условию её существования... получаем размеры водяного знака + создаем в переменную "$image" наш оригинал.

    if($do_watermark)

    {

      $sizeWM = getimagesize($watermark_src); // получаем размер водяного знака

      $watermark_width = $sizeWM[0]; // ширина водяного знака

      $watermark_height = $sizeWM[1]; // высота водяного знака

      //Создаёт новое изображение из файла или URL

      if($mime[1]=='jpeg')

      {

        $image = imagecreatefromjpeg($img);

      }

    еще условия... много условий

    }

    Далее также создаем в переменную водяной знак...

    $watermark = imagecreatefrompng($watermark_src);

    И накладываем два изображения друг на друга...

    imagecopy($image, $watermark, $otstup_width, $otstup_height , 0, 0, $watermark_width, $watermark_height);

  4. Сохранение изображения с водяным знаком.

    Далее нам остается перезаписать существующую картинку(по адресу $img) на эту же картинку, но только с водяным знаками "$image".

    if($mime[1]=='jpeg')

    {

    imagejpeg($image, $img, 100); // качество в 100%

    }

    еще условия... много условий

    Очищаем

    Уничтожение изображения

    imagedestroy() освобождает память, занятую изображением image.

    imagedestroy($image);

    imagedestroy($watermark);


  5. Скрипт водяного знака

    Как использовать архив со скриптом и примерами водяных знаков?

    После того, как скачаете архив.

    Бросаем в любую папку на сайте, кроме файла "psd"(он нужен для того, чтобы понять, как должен выглядеть файл водяного знака.).

    Ставим водяной знак на  картинку  php

    Открываем файл "test.php" в браузере, нажимаем "выбрать картинку", на которую будет наложен водяной знак. Чекбокс уже "чекнут", его не нужно трогать.

    Ставим водяной знак на  картинку  php

    После выбора картинки и нажатия кнопки "сохранить изменения", в папке(на сервере) появится новое изображение с водяным знаком:

    Ставим водяной знак на  картинку  php

    Плюс - на странице выводится картинка с установленным водяным знаком:

    Нажмите, чтобы открыть в новом окне.
    Ставим водяной знак на  картинку  php

    Обращаю ваше внимание на путь - используется константа __DIR__ - если файл "test.php" со скриптом, либо сам скрипт будет находиться в другой папке, то путь до картинки с водяным знаком нужно прописывать вручную.

    Ставим водяной знак на  картинку  php

    Путь сохранения картинки

    Куда будет файл изначально сохраняться - $uploaddir.

    И второй путь до картинки с водяным знаком.

    Если вдруг загрузили не ту картинку, то вам может пригодиться замена картинки

  6. Создание водяного знака в редакторе

    К сожалению, создание изображения для водяного знака не подразумевает простой замены текста на ваше... но есть технология создания изображения водяного знака!

    Файл psd - это пример водяного знака. Как сделать водяной знак в фотошопе? Там не так сложно... в двух словах...

    Создаем несколько(как мимум 4) слоев с текстом.

    Использую шрифт bebas

    Растрируем.

    Накладываем на задние слои размытие по гауссу.

    Смещаем каждый из слоев в 4 направлениях. У вас должно получиться, что-то типа такого(здесь видим - непрозрачность 100%):

    Нажмите, чтобы открыть в новом окне.
    Смещаем каждый из слоев в 4 направлениях. У вас должно получиться, что-то типа такого(здесь видим - непрозрачность 100%):

    Я использую непрозрачность для водяного знака 10%:

    Нажмите, чтобы открыть в новом окне.
    Я использую непрозрачность для водяного знака 10%:

    Сохраняем изображение как ".png" - непрозрачность закрепится.

    Готовый файл "psd" - не удаляйте, потом он вам ещё пригодится, потому, что возможно, вам потребуются другие размеры изображения.

    Как создать несколько размеров водяных знаков?

    Для того, чтобы создать несколько, разных размеров вашего водяного знака, на примере фотошопа:

    Нажимаем сочетание клавиш ctrl + alt + i, либо.. изображение -> размер изображения

    Я использую непрозрачность для водяного знака 10%:

    Выставляем ширину требуемую, высота будет увеличена/уменьшена пропорционально(см.скрин, ну и на водяной знак вы тоже можете посмотреть...)

    Нажмите, чтобы открыть в новом окне.
    Я использую непрозрачность для водяного знака 10%:

  7. Как добавить свой размер водяного знака и условие...

    Предположим, что вы хотите добавить свой размер водяного знака - как это сделать?

    Рассмотрим последнее условие php...

    elseif($width < 750 and $height > 120 and $width > 550)

    {

    $watermark_src = __DIR__. '/watermark_500_118.png' ;

    $otstup_width = ($width - 500)/2;

    $otstup_height = ($height/2) - (118/2);

    $do_watermark = 1;

    }

    Вы хотите, например, добавить размер водяного знака по ширине 300px.

    Идем в редактор "ctrl + alt + i"(про размер я говорил здесь)

    Изменяем ширину на 300(высота получается 71):

    Нажмите, чтобы открыть в новом окне.
    Изменяем ширину на 300(высота получается 71):

    Сохраняем водяной знак как watermark_300_71.png

    Первая строка:

    Из правой части условия "$width > 550" перемещаем 550 в левую часть

    $width < 550

    Высоту устанавливаем больше нашего водяного знака 71:

    $height > 80

    Правая часть ширина водяного знака 300 + 50

    $width > 350

    Получилось:

    elseif($width < 550 and $height > 80 and $width > 350)
    Отступы:

    Чтобы водяной знак не прилипал к краям, логично сделать отступы:

    Отступ справа слева :

    $otstup_width = ($width - 300)/2;

    Отступ сверху, снизу:

    $otstup_height = ($height/2) - (71/2);
    Новый код:

    elseif($width < 550 and $height > 80 and $width > 350)

    {

    $watermark_src = __DIR__. '/watermark_300_71.png' ;

    $otstup_width = ($width - 300)/2;

    $otstup_height = ($height/2) - (71/2);

    $do_watermark = 1;

    }

    Данный код добавляем в файл "test.php" к предыдущим условиям.

  8. Скачать скрипт установка водяного знака- что в архиве.

    Что в архиве?

    В архиве 4 водяных знака для примера:

    https://dwweb.ru/_data/watermark/watermark_1300_307.png
    https://dwweb.ru/_data/watermark/watermark_1000_236.png
    https://dwweb.ru/_data/watermark/watermark_700_165.png
    https://dwweb.ru/_data/watermark/watermark_500_118.png

    В архиве файл psd(можно открыть, например фотошопом, либо любой другой программой, которая работает с файлами psd), о файле psd.

    Ставим водяной знак на  картинку  php
    Скачать можно здесь.
Не стесняемся говорить спасибо!
О комментах : 05.11.2024
Свои комменты в ожидании переделки!
Когда сделаю не знаю!
Времени нет...
Друзья! Пожалуйста держите себя в рамках приличия!
Иначе сообщение будет удалено, вас в бан - все просто!
Но если, сил нет как хочется высказать всё, что вы думаете об этом, пожалуйста - комменты от Vk - форма ниже:
Помочь проекту DwWeb.ru

Поделиться ссылкой! C друзьями или врагами!

Этим вы очень поможете проекту! Заранее огромное спасибо!

Теги:
водяной знак php php наложение водяного знака php водяной знак на картинку watermark php watermark через php
dwweb.ru есть здесь:
Все соцсети в одном месте!
Разное :Игра "пятнашки"
Угадай страну по флагу

Кальклятор
Математика онлайн

Списки шифрования
Часы

Числа словами
Названия чисел(max=10305)
Графики

Qr код онлайн

Как сделать сайт?
Md5 онлайн
Sitemap.html
Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2024 Контакты. Лучший хостинг : RUWEB + помощь по RUWEB Сайт работает круглосуточно 24/7.
Страница загружена за : 0.031907 секунд.