23. december 2008 - 09:35
Der er
1 kommentar og
1 løsning
Lav 100x100 hvidt billede hvor resized billede indsættes på
Hej Eksperter
Jeg har skrevet noget kode, som resizer et billede efter en ratio, så billedet ikke bliver stærkt.
Jeg resizer det, så det passer inden for 100x100. Så det kan blive 100x60, 80x100 eller lignende.
Dog vil jeg bagefter gerne lave et hvidt 100x100 billede og sætte det mindre billede centeret ind på.
Hvilke funktioner skal jeg her have fat i?
23. december 2008 - 09:44
#1
Jeg irritere mig tit over at jeg få oprettet et spørgsmål og derefter finder svaret 2 min efter.
<?php
// The file
$filename = '4923107_4929107_4921507_hardbeat_orginal.jpg';
// Set a maximum height and width
$width = 100;
$height = 10;
$thumbsize = 100;
// Content type
header('Content-type: image/jpeg');
// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);
$ratio_orig = $width_orig/$height_orig;
if ($width/$height > $ratio_orig) {
$width = $height*$ratio_orig;
} else {
$height = $width/$ratio_orig;
}
// Resample
$image_p = imagecreatetruecolor($thumbsize, $thumbsize);
$image = imagecreatefromjpeg($filename);
$white = ImageColorAllocate($image, 255, 255, 255);
ImageFill($image_p, 0, 0, $white);
imagecopyresampled($image_p, $image, -($width/2) + ($thumbsize/2), -($height/2) + ($thumbsize/2), 0, 0, $width, $height, $width_orig, $height_orig);
// Output
imagejpeg($image_p, null, 100);
?>