Vincent Lammens

↶ Terug

Herschaal foto's in bulk

Datum: 2020/11/05

Ik heb een script gemaakt om foto’s in bulk te herschalen. Het is een PHP script, bedoeld om vanaf de CLI gedraaid te worden op bv je computer.

<?php

// loop door alle .jpg bestanden
foreach(glob("*.jpg") as $filename) {

  // genereer de nieuwe naam
	$filenameArray = explode(".",$filename);
  $newFileName = $filenameArray[0] ."-herschaald.".$filenameArray[1];
  
  // haal de grote op van de huidige foto
	list($width, $height) = getimagesize($filename);

  // nieuwe hoogte, pas dit aan zoals nodig
  $newheight = 360;
  
  // bepaal breedte op basis van nieuwe hoogte
  $ratio = $newheight/$height;
	$newwidth = $width*$ratio;

  // maak de nieuwe foto aan
  $thumb = imagecreatetruecolor($newwidth, $newheight);
  
  // laad de originele foto in
	$source = imagecreatefromjpeg($filename);

	// Resize
	imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

	// Output
	imagejpeg($thumb, $newFileName);
}
?>