DaveThuet
Erfahrenes Mitglied
Hallo Zusammen,
ich habe natürlich wiedermal ein Problem das ich nicht gelöst bekomme und komischerweise auch nicht mein Programmierer der Homepage...
Es geht um folgendes:
Wenn man ein Wallpaper wählt hier ein Beispiel und nun ein Download-Format wählt (im Fenster "Download-Auflösungen"), zum Beispiel 1280x960 (bis dahin geht es ohne Registrierung).
Nun möchte ich das man dann mit einem Rechtsklick aufs neu geöffnete Bild der Originalname mit der gewählten Grösse abspeichert als jpg, also in etwa so für die oben gemachten Beispiele "Closed rose 1280x960.jpg".
Ideal wäre auch wenn das Format mitübernommen werden könnte, also dann "Closed rose 1280x960.png".
Im Moment wird alles als "download.php" abgespeichet im Firefox und im Internet Explorer als "untitled.bmp".
Ich habe es bereits versucht indem ich den Bildname und das gewählte Bild-Format übergeben habe an die download.php aber alles ohne ersichtlichen Erfolg.
Hätte jemanden eine Lösungsidee?
Hier die zwei Seiten die den ganzen Prozess realisieren:
Als erstes die download.php:
Und als zweites und die wichtigste die download2.php:
Ich wäre echt sehr dankbar für Ideen oder Lösungsvorschläge...
ich habe natürlich wiedermal ein Problem das ich nicht gelöst bekomme und komischerweise auch nicht mein Programmierer der Homepage...
Es geht um folgendes:
Wenn man ein Wallpaper wählt hier ein Beispiel und nun ein Download-Format wählt (im Fenster "Download-Auflösungen"), zum Beispiel 1280x960 (bis dahin geht es ohne Registrierung).
Nun möchte ich das man dann mit einem Rechtsklick aufs neu geöffnete Bild der Originalname mit der gewählten Grösse abspeichert als jpg, also in etwa so für die oben gemachten Beispiele "Closed rose 1280x960.jpg".
Ideal wäre auch wenn das Format mitübernommen werden könnte, also dann "Closed rose 1280x960.png".
Im Moment wird alles als "download.php" abgespeichet im Firefox und im Internet Explorer als "untitled.bmp".
Ich habe es bereits versucht indem ich den Bildname und das gewählte Bild-Format übergeben habe an die download.php aber alles ohne ersichtlichen Erfolg.
Hätte jemanden eine Lösungsidee?
Hier die zwei Seiten die den ganzen Prozess realisieren:
Als erstes die download.php:
PHP:
<?php
//Connection statement
require_once('XXX');
//Aditional Functions
require_once('XXX');
session_start();
header("location: download2.php?".$_SERVER['QUERY_STRING']);
?>
PHP:
<?php
//Connection statement
require_once('XXX');
//Aditional Functions
require_once('XXX');
session_start();
$filename = "XXX"
$groesse = getimagesize($filename);
cropImage($_GET['b'], $_GET['h'], $filename, 'jpg', '');
function cropImage($nw, $nh, $source, $stype, $dest) {
$size = getimagesize($source);
$w = $size[0];
$h = $size[1];
$groessenkorrektur = ($_GET['b']/$_GET['h'])/($w/$h);
if($groessenkorrektur < 1) {
$groessenkorrektur = 1;
}
$h = $size[1]/$groessenkorrektur;
switch ($size[2]) {
case 1: $simg = imagecreatefromgif($source); break;
case 2: $simg = imagecreatefromjpeg($source); break;
case 3: $simg = imagecreatefrompng($source); break;
default: trigger_error('This is not an allowed image type.', E_USER_WARNING); break;
}
$dimg = imagecreatetruecolor($nw, $nh);
$wm = $w/$nw;
$hm = $h/$nh;
$h_height = $nh/2;
$w_height = $nw/2;
if($w> $h) {
$adjusted_width = $w / $hm;
$half_width = $adjusted_width / 2;
$int_width = $half_width - $w_height;
imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);
} elseif(($w <$h) || ($w == $h)) {
$adjusted_height = $h / $wm;
$half_height = $adjusted_height / 1.2;
$int_height = $half_height - $h_height;
imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);
} else {
imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);
}
header('Content-type: image/jpeg');
imagejpeg($dimg,"",100);
}
?>
Ich wäre echt sehr dankbar für Ideen oder Lösungsvorschläge...
Zuletzt bearbeitet: