2011-12-23 3 views
0

Не знаете, почему это выглядит так плохо, но когда я копирую изображение по другому изображению, он выглядит очень ужасно, как будто он потерял почти все его цвета по какой-то причине.PHP GD imagecopyresampled ужасное качество

$img = imagecreate(240, 140);  
$wall = imagecreatefrompng($src); 
imagecopyresampled($img, $wall, 0, 0, 40, 340, 240, 140, 240, 140); 

Я пытался найти решение самостоятельно, но я не могу найти один, кто-то действительно хорошее с GD, который может помочь? Я не могу использовать imagemagick.

+1

_imagecreate - создать новое изображение на основе палитры _... означает, что изображение может иметь максимум 256 цветов, возможно, причина почему ваше изображение выглядит размытым. –

ответ

7

Вам необходимо создать свое изображение на холсте с помощью imagecreatetruecolor(), а не imagecreate(), так как первый создает палитру на основе холста с ограниченной поддержкой цвета.

Предполагаю, что вы используете imagepng(), чтобы сохранить наш вывод изображения. Третий аргумент, принятый этой функцией, определяет качество изображения или уровень сжатия (0-9)

+0

Спасибо! Я не знаю, почему я не мог понять это, должно быть, недостаток сна ... –