1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| <?php
print '<body style="background-color:#aaaaaa;"></body>';
function image_carre($fichier_source,$fichier_destination,$largeur,$hauteur)
{
// On charge l'image originale
$original = imagecreatefromstring(file_get_contents($fichier_source));
$largeur_original = imagesx($original);
$hauteur_original = imagesy($original);
if($largeur_original > $hauteur_original) {
print '<br>paysage';
$original = imagescale($original, $largeur);}
else {
print '<br>portrait '."($largeur_original/$hauteur_original)=".($largeur_original/$hauteur_original);
$original_nouvelle_largeur = ($largeur_original/$hauteur_original)*$largeur;
print '<br>nouvelle largeur = '.$original_nouvelle_largeur;
$original = imagescale($original, $original_nouvelle_largeur);
}
// On crée une nouvelle image vide aux même dimensions, sur fond blanc
$white = imagecreatetruecolor($largeur, $hauteur);
$whitebg = imagecolorallocate($white, 255, 255, 255); // couleur de fond : blanc 255,255,255 ; noir 0,0,0 etc.
imagefilledrectangle($white, 0, 0, $largeur, $hauteur, $whitebg);
imagecopy($white, $original, 0, 0, -($largeur/2)+$original_nouvelle_largeur/2, 0, $largeur, $hauteur);
$final = $white;
@unlink($fichier_destination);
imagewebp($final,$fichier_destination,70); // Generate webp image and save to location
print '<br><img src="'.$fichier_destination.'" ></img>';
imagedestroy($final);
imagedestroy($original);
//imagedestroy($white);
}
$format_a = array(
//array("fichier"=>"cart_default","largeur"=>"125","hauteur"=>"125"),
//array("fichier"=>"home_default","largeur"=>"250","hauteur"=>"250"),
array("fichier"=>"large_default","largeur"=>"800","hauteur"=>"800"),
//array("fichier"=>"medium_default","largeur"=>"452","hauteur"=>"452"),
//array("fichier"=>"small_default","largeur"=>"98","hauteur"=>"98"),
);
foreach($format_a as $format)
{
//$fichier_source = "source.jpg";
$fichier_source = "https://canadiantire.scene7.com/is/image/CanadianTire/0530180_1?defaultImage=image_na_EN&fmt=jpg&fit=constrain,1&wid=573&hei=499";
$fichier_destination = $format['fichier'].'.jpg';
image_carre($fichier_source,$fichier_destination,$format['largeur'],$format['hauteur']);
}
?> |
Partager