При уменьшении картинки появляется черная рамка

Мне кажется проблема в родительском элементе, и формате файла. Посмотрите, куда сама по себе картинка "вставляется", возможно там что-то не то! Хотя, могу ошибаться.
исходный файл чистый. Сохраняется средняя копия с обрезкой и уменьшением.
 
Все просто, нужно кадрироваться а не просто уменьшать пропорционально. В документации есть параметр отвечающий за кадрирование относительно любой стороны и центра. Точно помню была такая же проблема.
 
Попробуй переписать... вот простая и рабочая функция ресайза

function setTransparency($new_image,$image_source)
{

$transparencyIndex = imagecolortransparent($image_source);
$transparencyColor = array('red' => 255, 'green' => 255, 'blue' => 255);

if ($transparencyIndex >= 0) {
$transparencyColor = imagecolorsforindex($image_source, $transparencyIndex);
}

$transparencyIndex = imagecolorallocate($new_image, $transparencyColor['red'], $transparencyColor['green'], $transparencyColor['blue']);
imagefill($new_image, 0, 0, $transparencyIndex);
imagecolortransparent($new_image, $transparencyIndex);

}
?>


Пример использования

<?php
$image_source = imagecreatefrompng('img.png');
$new_image = imagecreatetruecolor($width, $height);
setTransparency($new_image,$image_source);
imagecopyresampled($new_image, $image_source, 0, 0, 0, 0, $new_width, $new_height, $old_width, $old_height);
?>
 
Назад
Сверху