Я создал функцию, вы можете использовать ее как помощник. Если кто-то это нужно :)
class YourCompany_YourModule_Helper_Image_Data extends Mage_Core_Helper_Abstract{
public function convert($ext, $path, $name, $newname = NULL)
{
$exploded = explode('.',$name);
$extoriginal = $exploded[count($exploded) - 1];
switch($extoriginal)
{
case 'jpg':
case 'jpeg':
$image = imagecreatefromjpeg($path . $name);
break;
case 'png':
$image = imagecreatefrompng($path . $name);
break;
case 'gif':
$image = imagecreatefromgif($path . $name);
break;
case 'bmp':
$image = imagecreatefrombmp($path . $name);
break;
}
$bg = imagecreatetruecolor(imagesx($image), imagesy($image));
imagefill($bg, 0, 0, imagecolorallocate($bg, 255, 255, 255));
imagealphablending($bg, TRUE);
imagecopy($bg, $image, 0, 0, 0, 0, imagesx($image), imagesy($image));
imagedestroy($image);
$quality = 100;
$newname = ($newname == NULL) ? $exploded[0] : $newname;
switch($ext)
{
case 'jpg':
case 'jpeg':
$newimage = $path . $newname . ".jpg";
imagejpeg($bg, $newimage, $quality);
break;
case 'png':
$newimage = $path . $newname . ".png";
imagepng($bg, $newimage, $quality);
break;
case 'gif':
$newimage = $path . $newname . ".gif";
imagegif($bg, $newimage, $quality);
break;
case 'bmp':
$newimage = $path . $newname . ".bmp";
imagewbmp($bg, $newimage, $quality);
break;
}
imagedestroy($bg);
return $newimage;
}
}
В config.xml (из пользовательского модуля) добавить это в глобальном узле
<helpers>
<news>
<class>YourCompany_YourModule_Helper_Image</class>
</news>
</helpers>
И использовать
$helper = Mage::helper('YourModule');
$helper->convert('jpg', $path, $yourimage);
Наслаждайтесь :)
Эй, спасибо за ваш ответ. Я знаю, как это сделать в PHP, но я буду удивлен, если не будет никакой функции с Magento, чтобы сделать это! – RenishV8
нет функции для преобразования изображения в magento –
Это невероятно :(но thx :) – RenishV8