Решение проблемы непрозрачного фона watermark для dle

Раздел: DataLife Engine » Полезные статьи для DLE
Решение проблемы непрозрачного фона watermark для dle

Итак какую проблему решает Багфикс непрозрачного фона watermark для dle
Если вы используете watermark ( водяной знак Вашего веб-ресурса ) то наверное замечали, что при наложении знака на картинки с прозрачным фоном отображение искажается, не остается прозрачным, а заливается цветом.
Это проблема: в DataLife Engine watermark в формате png-24, при наложении png-24 на png-8 .
На скрине достаточно понятно видно как происходит наложение и к чему это может приводить.
Решение проблемы непрозрачного фона watermark для dle
Ошибка в версии: Все версии

Как это исправить, я напишу только счастливым обладателям файла /engine/classes/thumb.class.php

Находим данную строку:

imagecopy( $this->img['src'], $watermark, $watermark_x, $watermark_y, 0, 0, $watermark_width, $watermark_height );


Заменяем ее на:

if( $this->img['format'] == "PNG" ) {$png8fix = imagecreatetruecolor( $image_width, $image_height ); imagecopy( $png8fix, $this->img['src'], 0, 0, 0, 0, $image_width, $image_height ); imagecopy( $png8fix, $watermark, $watermark_x, $watermark_y, 0, 0, $watermark_width, $watermark_height );imagecopy( $this->img['src'], $png8fix, 0, 0, 0, 0, $image_width, $image_height );imagedestroy( $png8fix );}else imagecopy( $this->img['src'], $watermark, $watermark_x, $watermark_y, 0, 0, $watermark_width, $watermark_height );


Вот и все можно проверять и забыть про непрозрачные watermark =)

С уважением,
Олег Александрович a.k.a. Sander
Автор: Sander

Предлагаем скачать всё для dle сайта решение проблемы непрозрачного фона watermark для dle
  • 80
Рубрика: Все для DLE » Полезные статьи
Ранее » Полезная статья как сделать вручную MySQL запрос на DLE сайте« Далее Полезная статья Что такое Кнопка Google +1
Добавление комментарияОставить комментарий
  • № :5
  • 22 мая 2013 23:13
dle9, теперь понятненько. Спасибо за разъяснение.
  • № :4
  • 22 мая 2013 22:30
dgonke,
так это зашифрованный файл, вы пользуетесь демо версией с официального сайта. там 80% все зашифрована ...
  • № :3
  • 22 мая 2013 22:18
dle9,
нет там такой строки, проверил несколько раз. Код идёт одной строкой в документе.
Сделал скрин кода

Внимание! У вас нет прав для просмотра скрытого текста.
  • № :2
  • 22 мая 2013 15:25
Цитата: dgonke
imagecopy( $this->img['src'

плохо искали в самом конце есть такая строчка
  • № :1
  • 22 мая 2013 11:47
У меня сейчас стоит демо версия движка Dle9.7
Хотел сделать, что бы водяной знак отображался на всех изображениях еле заметно (был прозрачен). Перепробовал всё, но поменять не получается, надпись на белом изображении получается темной, а на темном белой. Как исправить не могу понять. То что вы написали выше, то я просто не нахожу в этом документе этой строки. Как решить эту проблему?