note 109026 added to function.imagecopyresampled
| From: | tages at docsis dot ru | Date: | Thu, 14 Jun 2012 02:37:36 +0000 |
| Subject: | note 109026 added to function.imagecopyresampled | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-188593@lists.php.net to get a copy of this message | ||
/*------------
СÑÑаниÑа â2
------------*/
//Ðобавлена возможноÑÑÑ
обÑÐµÐ·Ð°Ð½Ð¸Ñ ÐÑимеÑание:
изменено Ð´Ð»Ñ Ñипов Ñайла PNG
каÑеÑÑво изобÑажение в =0
//@link http://php.net/manual/ru/function.imagecopyresized.php
function Resize($Dir, $NewDir, $NewWidth = 100, $NewHeight = 100, $Quality = 95, $cut = false)
{
list($OrigiWidth, $OrigiHeight, $TypeCode) = getimagesize($Dir);
$ImageType = ($TypeCode == 1 ? "gif" : ($TypeCode == 2 ? "jpeg" : ($TypeCode
== 3 ? "png" : FALSE)));
$CreateFunction = "imagecreatefrom".$ImageType;
$OutputFunction = "image".$ImageType;
if ($ImageType)
{
$OrigiImage = $CreateFunction($Dir);
if ($cut)
{
$cutSize = SizeCut($OrigiWidth, $OrigiHeight, $NewWidth, $NewHeight);
$NewImage = imagecreatetruecolor($cutSize['width'],
$cutSize['height']);
imagecopy($NewImage, $OrigiImage, 0, 0, 0, 0, $cutSize['width'],
$cutSize['height']);
$OrigiImage = $NewImage;
$OrigiWidth = $cutSize['width'];
$OrigiHeight = $cutSize['height'];
unset($cutSize);
}
//пÑопоÑÑионалÑное ÑжаÑие
на оÑновании коÑÑÑиÑиенÑа
$Ratio
$Ratio = ($OrigiHeight / $OrigiWidth);
if ($OrigiWidth > $NewWidth OR $OrigiHeight > $NewHeight)
{
if ($OrigiWidth > $NewWidth)
{
$ResizedWidth = $NewWidth; $ResizedHeight = $ResizedWidth * $Ratio;
}
else
{
$ResizedWidth = $OrigiWidth; $ResizedHeight = $OrigiHeight;
}
if ($ResizedHeight > $NewHeight)
{
$ResizedHeight = $NewHeight; $ResizedWidth = $ResizedHeight / $Ratio;
}
$NewImage = imagecreatetruecolor($ResizedWidth, $ResizedHeight);
imagecopyresampled($NewImage, $OrigiImage, 0, 0, 0, 0, $ResizedWidth, $ResizedHeight,
$OrigiWidth, $OrigiHeight);
}
else
{
$ResizedWidth = $OrigiWidth; $ResizedHeight = $OrigiHeight; $NewImage = $OrigiImage;
}
if ($ImageType == 'png')
$Quality = 0;
$OutputFunction($NewImage, $NewDir, $Quality);
return true;
}
else
return false;
}
function getImage($path, $width, $height, $return_type = "src", $alt = "",
$title = "")
{...
if (!file_exists($img_new))
Resize($img, $img_new, $width, $height, '95');
else
{
$nsize = @getimagesize($img_new);
if ($nsize[0] != $width OR $nsize[1] != $height)
Resize($img, $img_new, $width, $height, '95', true);
unset($nsize);
}...
}
//вÑзов
$a = getImage($in_params['path'], $in_params['width'],
$in_params['height'], $in_params['return_type'], $in_params['alt'],
$in_params['title']);
----
Server IP: 69.147.83.197
Probable Submitter: 46.50.132.253
----
Manual Page -- http://www.php.net/manual/en/function.imagecopyresampled.php
Edit -- https://master.php.net/note/edit/109026
Del: integrated -- https://master.php.net/note/delete/109026/integrated
Del: useless -- https://master.php.net/note/delete/109026/useless
Del: bad code -- https://master.php.net/note/delete/109026/bad+code
Del: spam -- https://master.php.net/note/delete/109026/spam
Del: non-english -- https://master.php.net/note/delete/109026/non-english
Del: in docs -- https://master.php.net/note/delete/109026/in+docs
Del: other reasons-- https://master.php.net/note/delete/109026
Reject -- https://master.php.net/note/reject/109026
Search -- https://master.php.net/manage/user-notes.php