note 58014 added to function.imagecopy
| From: | johnnyatnetvordotsk at osu1 dot php dot net | Date: | Fri, 21 Oct 2005 15:48:51 +0000 |
| Subject: | note 58014 added to function.imagecopy | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-97357@lists.php.net to get a copy of this message | ||
simple image combination srcipt, ie. if u want to create one huuuge signature from more small ones
<?php
// config --
$src = array ("http://www.google.com/images/logo_sm.gif",
"http://sk2.php.net/images/php.gif");
$under = 0; // combine images underneath or not?
// -- end of config
$imgBuf = array ();
$maxW=0; $maxH=0;
foreach ($src as $link)
{
switch(substr ($link,strrpos ($link,".")+1))
{
case 'png':
$iTmp = imagecreatefrompng($link);
break;
case 'gif':
$iTmp = imagecreatefromgif($link);
break;
case 'jpeg':
case 'jpg':
$iTmp = imagecreatefromjpeg($link);
break;
}
if ($under)
{
$maxW=(imagesx($iTmp)>$maxW)?imagesx($iTmp):$maxW;
$maxH+=imagesy($iTmp);
}
else
{
$maxW+=imagesx($iTmp);
$maxH=(imagesy($iTmp)>$maxH)?imagesy($iTmp):$maxH;
}
array_push ($imgBuf,$iTmp);
}
$iOut = imagecreate ($maxW,$maxH) ;
$pos=0;
foreach ($imgBuf as $img)
{
if ($under)
imagecopy ($iOut,$img,0,$pos,0,0,imagesx($img),imagesy($img));
else
imagecopy ($iOut,$img,$pos,0,0,0,imagesx($img),imagesy($img));
$pos+= $under ? imagesy($img) : imagesx($img);
imagedestroy ($img);
}
imagegif($iOut);
?>
----
Manual Page -- http://www.php.net/manual/en/function.imagecopy.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+58014
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes&reason=useless
Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes&reason=non-english
Delete: already in docs -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes&reason=already+in+docs
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+58014&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+58014&report=yes
Search -- http://master.php.net/manage/user-notes.php