pitch Maxim 0 Опубликовано 20 августа, 2008 Жалоба Share Опубликовано 20 августа, 2008 Почему нельзя использовать PNG 24? как сделать что бы края были сглаженные? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 21 августа, 2008 Жалоба Share Опубликовано 21 августа, 2008 Может дело в gd библиотеке, что не знаю даже, почему png нельзя использовать. Как края сделать, не знаю. Ссылка на сообщение Поделиться на другие сайты
pitch Maxim 0 Опубликовано 21 августа, 2008 Автор Жалоба Share Опубликовано 21 августа, 2008 Смысл в таком кривом водяном знаке если он ужасно отображается, есть вообше люди у которых он нормально работает? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 21 августа, 2008 Жалоба Share Опубликовано 21 августа, 2008 Я лишь могу сказать о своём опыте. Я вообще готовлю картинки в офлайне, в том числе и если нужно накладываю знаки водяные, это и быстрее и удобнее и проще. Ссылка на сообщение Поделиться на другие сайты
navilar 0 Опубликовано 28 апреля, 2012 Жалоба Share Опубликовано 28 апреля, 2012 после обновления 1.67 не использует PNG 24 в водяном знаке не знаю как раньше, покопался нашёл решение: admin/includes/classes/image_manipulator_GD2.php меняем кусок for($this->ypo = 0; $this->ypo < $this->mh; $this->ypo++) { for($this->xpo = 0; $this->xpo < $this->mw; $this->xpo++) { $this->indx_ref = @imagecolorat($this->mm, $this->xpo, $this->ypo); $this->indx_rgb = @imagecolorsforindex($this->mm, $this->indx_ref); if(($this->indx_rgb['red'] == $this->tr) && ($this->indx_rgb['green'] == $this->tg) && ($this->indx_rgb['blue'] == $this->tb)) { // transparent colour, so ignore merging this pixel } else { @imagecopymerge($this->t, $this->mm, $this->xx+$this->xpo, $this->yy+$this->ypo, $this->xpo, $this->ypo, 1, 1, $this->mo); } } } [/CODE] На этот код[CODE] if ($this->md[2] == 3) { imageAlphaBlending($this->mm, false); imageSaveAlpha($this->mm, true); @imagecopy($this->t, $this->mm, $this->xx, $this->yy, 0, 0, $this->mw, $this->mh); } else { for($this->ypo = 0; $this->ypo < $this->mh; $this->ypo++) { for($this->xpo = 0; $this->xpo < $this->mw; $this->xpo++) { $this->indx_ref = @imagecolorat($this->mm, $this->xpo, $this->ypo); $this->indx_rgb = @imagecolorsforindex($this->mm, $this->indx_ref); if(($this->indx_rgb['red'] == $this->tr) && ($this->indx_rgb['green'] == $this->tg) && ($this->indx_rgb['blue'] == $this->tb)) { // transparent colour, so ignore merging this pixel } else { @imagecopymerge($this->t, $this->mm, $this->xx+$this->xpo, $this->yy+$this->ypo, $this->xpo, $this->ypo, 1, 1, $this->mo); } } } } Теперь можем использовать красивый водяной знак PNG 24 Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 28 апреля, 2012 Жалоба Share Опубликовано 28 апреля, 2012 Спасибо за код. Правда не знаю, надо ли по умолчанию эту правку добавлять в код или нет. Ссылка на сообщение Поделиться на другие сайты
vasya 0 Опубликовано 10 мая, 2013 Жалоба Share Опубликовано 10 мая, 2013 Спасибо за код. Правда не знаю, надо ли по умолчанию эту правку добавлять в код или нет. Не понятно вообще почему убрали поддержку PNG. С помощью него можно было нарисовать на картинках много чего, а с GIF такого не получается. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения