Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Водяной знак

00 голосов
8
Появилась идея сделать водяной знак для картинок. Тоесть когда выгружаешь товары из 1с, чтобы на картинки ставился логотип фирмы или что-то подобное.
Возможно кто-нибудь подскажет, хотябы в какой компонент первоначально лезть? Или в битриксе такое предусмотрено изначально?
спросил 12 Авг, 13 от Kiriel (2,010 баллов)

8 Ответы

00 голосов
про то как добавить водяной знак к элементу инфоблока очень неплохо написано вот тут в комментарии:

http://dev.1c-bitrix.ru/api_help/iblock/events/onbeforeiblockelementadd.php
ответил 13 Янв, 13 от RaZor (440 баллов)
показан 01 Май, 15 от root
00 голосов
Никто не сталкивался с подобным?
ответил 12 Авг, 13 от Kiriel (2,010 баллов)
00 голосов
ответил 17 Окт, 13 от Evolet (140 баллов)
00 голосов
нужно поставить обработчик в инит.пхп на апдейт или создание элемента
тут уже где-то выкладывался скрипт для ресайза картинок.
просто делаем не ресайз, а знак накладываем. Но это уже голый пхп и GD2
ответил 19 Янв, 14 от Shilen (900 баллов)
00 голосов
Вот знать бы ещё писали подобное... Скриптов для водяных знаков в инете великое множество как на JS так и на ПХП. Но как сие организовать так и не понятно.
ответил 07 Май, 14 от Kiriel (2,010 баллов)
00 голосов
Вот хороший примерчик с того же сайта
http://mysitez.km.ua/Programming/?phptransmask
Посмотрела на вскидку вроде все правильно автор пишет, реализовать не пыталась пока, отпишусь, если не забуду.
ответил 02 Сен, 14 от Evolet (140 баллов)
00 голосов
Код
              if(strlen($waterPath)>0) // водный знак
              {
                $arwater_img = getimagesize($waterPath);
                $water_width = $arwater_img[0];
                $water_height = $arwater_img[1];
                $water_img_type = $arwater_img[2];
                $water_img_type = $arwater_img[$water_img_type-1];
                $water_img_size = $arwater_img[3];

                $water_img = imagecreatefrompng($waterPath);
                $wbg = imagecolorallocate($water_img, 255, 255, 255);
                imagecopy ($img_dest, $water_img, $x_water, $y_water, 0, 0, $water_width, $water_height);

              }


Вод кусок, который делает водяной знак
где
$waterPath - это урл картинки
$img_dest - это куда знак помещать
$x_water, $y_water - координаты куда пихать знак

картинка водяного знака делается в формате png, где заранее ставится нужная прозрачность.
ответил 09 Янв, 15 от Shilen (900 баллов)
00 голосов
Волшебство и никакого машенства:

Код
header("Content-type: image/png");
$res = imagecreate(468,297);    
$img = imagecreatefromjpeg("photo.JPG");
imagetruecolortopalette($img,true,250);
$logo = imagecreatefrompng("logo.PNG");
$white= imagecolorallocate($res,255,255,255);
imagecopyresized ($res,$img,
                  0,0,
                  0,0,
                  468,297,
                  imagesx($img),imagesy($img));
imagecopy ($res,$logo,352,228,0,0,116,69);
$trans= imagecolorallocate($res,255,0,255);
imagecolortransparent($res,$trans);
imagepng($res);
ответил 26 Апр, 15 от Evolet (140 баллов)
А куда это пихать?

Связанных вопросов не найдено