Billede Class -resize af billeder
Er det mulig at skrive i denne billed class at jeg gerne vil have billederne til at være 300x225 og thumbnails 120x90??<?
class billed{
private $mappe,$billede;
public function __construct($mappe){
$this->mappe =$mappe;
}
/**
* Denne metode bruges hvis du ikke ønsker at bruge metoiden form()
*
*
* @param $_FILEs $billednavn
*/
public function setBilled($billednavn){
$this->billede=$billednavn;
}
public function form(){
if ($_FILES[billed][tmp_name]!="") {
$this->billede=$_FILES['billed'];
}//else{
$tekst='<form action ="" method="POST" enctype="multipart/form-data">
Fil:<input type="file" name="billed"><br>
<input type="submit" name="upload" value="Send">
</form>';
return $tekst;
//}
}
public function upload(){
if ($this->billede!="") { //hvis der er noget i egenskaben billede så...
$billednavn=time() . "_" . $this->billede[name];//lav et nyt billede
copy($this->billede[tmp_name], $this->mappe.$billednavn);//kopier billedet ind i mappen
return $billednavn;//Send billednavnet tilbage
}else {
return false;
}
}
public function visBilled($navn){
$res="<img src='" . $this->mappe .$navn . "'>";
return $res;
}
public function lavThumb($navn,$bredde='100',$hoejde='100'){
$nytNavn=$this->mappe . "thumb_" . $navn;
copy($this->mappe.$navn,$nytNavn);
$thumbnail = imagecreatetruecolor ($bredde, $hoejde);
$billede = ImageCreateFromJpeg($nytNavn);
$billedstr = getimagesize($nytNavn);
imagecopyresized ($thumbnail,$billede, 0, 0, 0, 0, $bredde, $hoejde,$billedstr[0], $billedstr[1]);
imagejpeg($thumbnail, $nytNavn);
}
/**
* Viser billed galleri...
*
*/
public function visGalleri(){
$handle=opendir($this->mappe);
while (false !== ($fil = readdir($handle))) {
if ($fil != "." && $fil != ".." && stristr($fil,"thumb_")) {
$vis=$this->mappe . ltrim($fil,"thumb_");
$billedstr=getimagesize($vis);
?>
<a onclick="window.open('<?=$vis;?>',null,'height=<?=$billedstr[1]?>,width=<?=$billedstr[0]?>')"><img src='<?=$this->mappe
.$fil;?>'></a>
<?
}
}
}
}
?>