Учусь Wordpress
4 / 4 / 0
Регистрация: 23.09.2014
Сообщений: 394
1

Добавление водяных знаков налету через .htaccess

15.05.2016, 18:27. Показов 1368. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пробую плагины
Add Watermarks
Watermark WP Image Protect
LDW Watermark

не работают!! права доступа к .htaccess дал.
При работе некоторых плагинов появляются правила перенаправления но не работают!!
Пробую в ручную

PHP
1
2
3
4
5
6
7
8
9
10
11
12
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(wp-content/uploads(.*)(gif|jpg|png)) addTextToImages.php?file=$1 [NC]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
 
# END WordPress
addTextToImages.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
//в параметре file нам было передано название и путь расположения файла.
$file = $_GET['file'];
//узнаём размер нашего файла
$inf = getimagesize($file);
//вводим надпись, которая будет водяным знаком
$text = 'http://selftrips.ru';
//выбираем шрифт (можете заменить на свой, но тогда положите в корневую папки новый файл со шрифтом
$font = './arial.ttf';
 
//для оформления темы используются файлы, в названии которых есть 'cropped-',
//мы не хотим, чтобы эти файлы имели водяной знак, поэтому проверям
//if (substr_count($file, 'cropped-'))  {
//$nosighn = 1;
//}
//else {
$nosighn = 0;
//}
 
//Проверяем, какого типа графияеский файл, если jpg, то вносим изменения
switch ($inf['mime']) {
    case 'image/jpeg':
//устанавливаем тип файла в заголовке вывода
        header('Content-Type: image/jpg');
 
// создаём изображение
        $im = imagecreatefromjpeg($file);
 
// создаём цвета
        $white = imagecolorallocate($im, 255, 255, 255);
        $grey = imagecolorallocate($im, 128, 128, 128);
        $black = imagecolorallocate($im, 0, 0, 0);
 
if ($nosighn != 1) {
// добавляем к картинке тень
        imagettftext($im, $inf[0] / 28.48, 0, $inf[0] - $inf[0] / 2.2784, $inf[1] - $inf[0] / 28.28, $grey, $font, $text);
 
// добавляем к картинке текст
        imagettftext($im, $inf[0] / 28.48, 0, $inf[0] - $inf[0] / 2.26032, $inf[1] - $inf[0] / 25.891, $black, $font, $text);
}
// выводим изображение и следующей командой очищаем память.
        imagejpeg($im);
        imagedestroy($im);
 
        break;
 
//повторяем аналогичные процедуры для файлов png и gif
    case 'image/png':
        header('Content-Type: image/png');
        $im = imagecreatefrompng($file);
        $white = imagecolorallocate($im, 255, 255, 255);
        $grey = imagecolorallocate($im, 128, 128, 128);
        $black = imagecolorallocate($im, 0, 0, 0);
if ($nosighn != 1) {
        imagettftext($im, $inf[0] / 28.48, 0, $inf[0] - $inf[0] / 2.2784, $inf[1] - $inf[0] / 28.28, $grey, $font, $text);
        imagettftext($im, $inf[0] / 28.48, 0, $inf[0] - $inf[0] / 2.26032, $inf[1] - $inf[0] / 25.891, $black, $font, $text);
}
        imagepng($im);
        imagedestroy($im);
        break;
 
    case 'image/gif':
        header('Content-Type: image/gif');
        $im = imagecreatefromgif($file);
        $white = imagecolorallocate($im, 255, 255, 255);
        $grey = imagecolorallocate($im, 128, 128, 128);
        $black = imagecolorallocate($im, 0, 0, 0);
if ($nosighn != 1) {
        imagettftext($im, $inf[0] / 28.48, 0, $inf[0] - $inf[0] / 2.2784, $inf[1] - $inf[0] / 28.28, $grey, $font, $text);
        imagettftext($im, $inf[0] / 28.48, 0, $inf[0] - $inf[0] / 2.26032, $inf[1] - $inf[0] / 25.891, $black, $font, $text);
}
        imagegif($im);
        imagedestroy($im);
        break;
}
?>
тоже ничего не происходит, как можно реализовать этот метод?
Будет ли итоговое изображение попадать в кэш или каждый раз перестраиваться?
Спасибо
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2016, 18:27
Ответы с готовыми решениями:

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

Добавление водяных знаков налету
Вроде для nginx .htaccess не отрабатывает правила типа RewriteRule...

Скрытие водяных знаков
Необходимо удалить водяной знак более чем с 2500 изображений. Исходного изображения водяного знака...

Наложение водяных знаков на изображения
Всем привет. кто знает помогите пожалуйста. водяных знаков на изображения есть лого (картинка...

3
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
15.05.2016, 23:24 2
tester2014, определись для начала что у тебя за веб сервер, и что не работает именно перенаправление.
PS. Количество тем проблему не решит
0
Учусь Wordpress
4 / 4 / 0
Регистрация: 23.09.2014
Сообщений: 394
16.05.2016, 02:01  [ТС] 3
разбираюсь как раз с помощью форумом. ngnix стоит, по этому и не работает перенаправление. Редактирование файла конфигурации nginx не доступно. Как можно решить такую проблему?
0
Учусь Wordpress
4 / 4 / 0
Регистрация: 23.09.2014
Сообщений: 394
28.06.2017, 12:02  [ТС] 4
Как через nginx сделать?
0
28.06.2017, 12:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2017, 12:02
Помогаю со студенческими работами здесь

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

Массовое наложение водяных знаков.
Ищу программу, которая накладывает копирайт(водяной знак) на изображение, причём массово. Главная...

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru