function create_thumb($filename, $thumbfilename) { //Lade Bild $loaded_image = imagecreatefromfile($filename); //echo "a: ".imagetype($filename) ."<br>"; //preecho($loaded_image); $img = $loaded_image["img"]; //Berechne Zoomfaktor $zoom_data = getzoomfactor($filename, 200, 200, 0); //preecho($zoom_data); //Zoom $new_picture = zoompicture($img, $zoom_data); //Speicher Bild imagetofile($thumbfilename, "jpg", $new_picture, 10000, 60, 0); }
//zunächst wird von einem Fehler ausgegangen, wenn Upload OK-> $error=0; //Teste ob eine Datei hochgeladen wurde if (isset($_FILES["file"]["error"]) and isset($_FILES["file"]["name"])) { if ($_FILES["file"]["error"] == 0) { //Teste Dateiendung $imgtype = imagetype($_FILES["file"]["name"]); if ($imgtype != "UNKNOWN") { $_SESSION["image_type"] = $imgtype; $filename = $_SESSION["temp_image_file_path"] . ".{$imgtype}"; $_SESSION["image_temp_filename"] = $filename; $_SESSION["image_temp_modified_filename"] = $_SESSION["temp_image_file_path"] . ".modified.{$imgtype}"; //Kopiere Datei if (move_uploaded_file($_FILES["file"]["tmp_name"], $_SESSION["image_temp_filename"])) { $msg = "Datei ist valide und wurde erfolgreich hochgeladen.\n"; //Zoomfaktor für Anzeige bestimmen $retval = getzoomfactor($filename, $max_width, $max_height, $debug); $_SESSION["zoom_factor"] = $retval["zoom_factor"]; $_SESSION["image_width_org"] = $retval["image_width_org"]; $_SESSION["image_height_org"] = $retval["image_height_org"]; $_SESSION["image_width_show"] = $retval["image_width_new"]; $_SESSION["image_height_show"] = $retval["image_height_new"]; $error = 0; } else { $msg = "Möglicherweise eine Dateiupload-Attacke!\n"; } } else { $msg = "Fehler3 nicht unterstützter Dateityp<br>"; } } else { $msg = "Fehler1: Keine Datei hochgeladen!<br>"; }
} if ($postdata !== false) { // Get the data $imageData = $postdata; // Remove the headers (data:,) part. // A real application should use them according to needs such as to check image type $filteredData = substr($imageData, strpos($imageData, ",") + 1); // Need to decode before saving since the data we received is already base64 encoded $unencodedData = base64_decode($filteredData); //echo "unencodedData".$unencodedData; // Save file. This example uses a hard coded filename for testing, // but a real application can specify filename in POST variable $fp = fopen($_SESSION["image_temp_filename"], 'wb'); fwrite($fp, $unencodedData); fclose($fp); $retval = getzoomfactor($_SESSION["filename"], $max_width, $max_height, $debug); $_SESSION["zoom_factor"] = $retval["zoom_factor"]; $_SESSION["image_width_org"] = $retval["image_width_org"]; $_SESSION["image_height_org"] = $retval["image_height_org"]; $_SESSION["image_width_show"] = $retval["image_width_new"]; $_SESSION["image_height_show"] = $retval["image_height_new"]; //$size = getimagesize('images/'.$_SESSION["filename"]); /* $_SESSION["dim_org_x"]=$size[0]; $_SESSION["dim_org_y"]=$size[1]; if ($size[0]>320 || $size[1]>240) { $src_img = imagecreatefrompng('images/'.$_SESSION["filename"]); $dst_img = imagecreatetruecolor(320,240); imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, 320, 240, $size[0], $size[1]); //$lastpoint=strrpos($_SESSION["filename"],"."); //$newfilename='images/small'.substr ( $_SESSION["filename"] , 0 , $lastpoint ).".png";