Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Водяной знак png24 получается с каким-то фоном...

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Рачей
Отправлено: 12 Октября, 2011 - 20:00:46
Post Id


Гость


Покинул форум
Сообщений всего: 94
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




Помогите найти ошибку. Что-то совсем не понимаю что не так...
Задача положить логотип на фото... 15 числа стартует мероприятие, и там 9 дней будут заливаться фотки. Все готово, за исключением логотипа на фото.. какой-то он не хороший получается..

PHP:
скопировать код в буфер обмена
  1.  
  2. move_uploaded_file($tempFile,$targetFile); // перелили файл из тема
  3. $zagruzili= str_replace($_SERVER['DOCUMENT_ROOT'].'/upload/','',$targetFile); // выбираем файл
  4. $src = imagecreatefromjpeg($zagruzili); // загруженый файл источник
  5. list($width, $height) = getimagesize($zagruzili); // сняли размеры файла       
  6. $newwidth = 1000; // новый размер ширины
  7. $newheight = ($height / $width) * $newwidth; // новый размер высоты
  8. $newfile=date('YmdHis').rand(100,1000).'.jpg'; // название файла
  9. $m_width = 75; // размер ширины миниатюры
  10. $m_height = ($height / $width) * $m_width;  // размер высоты миниатюры
  11. $W = imagecreatefrompng('logo.png'); // логотип
  12.  
  13.  
  14. $obrez=imagecreatetruecolor($newwidth, $newheight); // создали пустое изображение нового размера
  15. imagecopyresampled($obrez, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); // создали новое изображение
  16. imagecopymerge ($obrez, $W, 10, 10, 0,0, 200, 55 ,100); // положили логотип
  17. //imagecopy ($obrez, $W, 10, 10, 0,0, 200, 55); // положили логотип 2
  18. imagejpeg($obrez,''.$targetPath.'/'.$newfile.'',90); // записали файл
  19.  
  20. $dest_m = imagecreatetruecolor($m_width, $m_height);  // мини
  21. imagecopyresampled($dest_m, $src, 0, 0, 0, 0, $m_width, $m_height, $width, $height); // миниатюра
  22. imagejpeg($dest_m,''.$targetPath.'/mini/'.$newfile.'',90); // миниатюра
  23. imagedestroy($dest_m);  //             
  24. imagedestroy($src);             //
  25. imagedestroy($W);               //
  26. imagedestroy($obrez);   //
  27. unlink($zagruzili);             // удалили источник
  28.  

Попробовал 2 варианта наложения логотипа... В первом картинка png24 идет с каким-то полупрозрачным фоном. Во втором варианте png8 наслаивается нормально, но по краям видны пиксели фона.. и если он светлый, то на темной фото видны очертания логотипа...
 
 Top
topy
Отправлено: 13 Октября, 2011 - 09:47:37
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Февр. 2011  


Помог: 0 раз(а)




На сколько я помню, надо логотип сохранить с фотошопе с альфа-каналом (погуглите по этой фразе)...
 
 Top
Рачей
Отправлено: 14 Октября, 2011 - 01:22:42
Post Id


Гость


Покинул форум
Сообщений всего: 94
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




спасибо.. так ничего путнего и не нашел...
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Графика в PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB