liefert Bilder, auch gecroppt. Könnte für den Einen oder den Anderen von Interesse sein:
<?php
/*
returns an image (JPEG, PNG, or GIF) stored anywhere in the LAN.
Parameters:
pic: file name of image
ImageDirectory: Directory of image
crop: if "yes" than image will be cropped
x_start, y_start: coordinates of cropping rectangle
DestWidth, DestHeight: size of cropping rectangle
example of how to use: <img src="/php/BringImage.php?pic=cam25.jpg&crop=yes&x_start=120&y_start=0&DestWidth=200&DestHeight=80">
*/
if(isset($_GET['pic']) && (!empty($_GET['pic'])))
{$pictureName = $_GET['pic'];}
if(isset($_GET['ImageDirectory']))
{$ImageDirectory = $_GET['ImageDirectory'];}
else
$ImageDirectory = "C:\IP-Symcon\media".chr(92);
if((isset($_GET['crop'])) and ($_GET['crop'])=="yes")
//if (1==1)
{
if(isset($_GET['x_start']))
{$x_start = $_GET['x_start'];}
if(isset($_GET['y_start']))
{$y_start = $_GET['y_start'];}
if(isset($_GET['$DestWidth']))
{$DestWidth = $_GET['DestWidth'];}
if(isset($_GET['$DestHeight']))
{$$DestHeight = $_GET['DestHeight'];}
$pictureReturn = CropAnyImage($ImageDirectory.$pictureName, $x_start, $y_start, $DestWidth, $DestHeight);
}
else
{
$pictureReturn = ReturnPicture($ImageDirectory.$pictureName);
}
header("Content-Type: image/png");
imagepng($pictureReturn);
//___________________________________________________________
Function ReturnPicture($pictureName)
{
$picturetype = substr($pictureName, -3);
$filename = $pictureName;
switch ($picturetype)
{
case "jpg":
$image=imagecreatefromjpeg($filename);
$mimetype = 'image/jpg';
break;
case "png":
$image=imagecreatefrompng($filename);
$mimetype = 'image/png';
break;
case "jpeg":
$image=imagecreatefromjpeg($filename);
$mimetype = 'image/jpg';
break;
case "gif":
$image=imagecreatefromgif($filename);
$mimetype = 'image/gif';
break;
}
return $image;
}
//__________________________
Function CropAnyImage($Image, $x_start, $y_start, $DestWidth, $DestHeight)
{
$imageCropped = imagecreatetruecolor($DestWidth, $DestHeight);
list($width, $height) = getimagesize($Image);
$ImageRes = ReturnPicture($Image);
imagecopyresampled ($imageCropped,$ImageRes,
0,0,
$x_start, $y_start,
$DestWidth, $DestHeight,
$DestWidth, $DestHeight);
return $imageCropped;
}
?>