Имя пользователя как водяной знак
хорошо, я искал в интернете и stackoverflow, но я просто не могу найти ответ на свою проблему.
Мне нужно изображения водяных знаков, загруженные пользователями динамически, но я не хочу, чтобы только текст применялся к изображению. Мне нужен настоящий водяной знак такой:
единственный способ достичь этого эффекта - использовать Photoshop, добавляя тень и уменьшая заполнение до 0%. Но если мой сайт посещают более 200 пользователей, загружать свои изображения, я просто не могу сделать для каждому из них новый файл PNG с именем пользователя. Вот почему я ищу динамическое решение этой проблемы.
Я уже нашел классы, как добавить png-файл в качестве водяного знака к изображениям, но, как я уже сказал, это не сработает, если мой сайт посетит много пользователей.
Я надеюсь, что кто-то знает способ, как решить эту проблему и получить тот же эффект на изображения динамически.
большое спасибо.
4 ответов
документация библиотеки обработки изображений ImageMagick включает такой прозрачный пример водяного знака. Даже если вы хотите использовать GD вместо ImageMagick, это может дать вам представление о том, как это сделать.
вы можете использовать imageMagick для этого с PHP. Сделайте некоторые Googling для водяных знаков PHP imagemagick, этот поток может помочь некоторым: http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=17067
вы по существу хотите сделать PNG-файл вашего водяного знака. ПНГ позволит обеспечить прозрачность альфа и вы можете получить эффект тени и т. д.
Это будет применено к вашему изображению JPG, и окончательное изображение JPG с водяными знаками будет сделано с ваш PNG добавлен поверх него.
должны работать.
другие ответы здесь отличные ответы, но я хотел бросить альтернативу.
вы можете динамически создавать скрипты на в GIMP выполнить, который дает вам тонны гибкость. Это перебор для простого водяного знака, но если вам нужно сделать более сложную обработку изображений, это определенно вариант. CoolText.com пример сайта, который делает это.
тот же подход должен работать в Photoshop как хорошо. На самом деле, вы, вероятно, могли бы создать экземпляр Photoshop COM-интерфейс с PHP.
опять же, я не рекомендую это для базовой защиты... просто, если вам нужно больше функций, чем то, что предоставляется с ImageMagick/GD.
к другим ответам я добавлю, что вы не должны генерировать изображение на лету. Если водяной знак имеет имя пользователя, создайте файл водяного знака один раз, когда пользователь регистрируется на вашем сайте (или меняет имя пользователя), а затем используйте этот файл в качестве наложения для загруженных изображений. Это сэкономит много времени процессора.