PHP
Referenzliste
imagecopyresampled
Image-Funktionen
Befehl:
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
Parameter-Liste:
Beschreibung | |
---|---|
Destination Image-Link-Ressource. | |
Quelle Bild-Link-Ressource. | |
x-Koordinate des Zielpunktes. | |
y-Koordinate des Zielpunktes. | |
x-Koordinate der Quellpunkt. | |
y-Koordinate der Quellpunkt. | |
Quelle der Breite. | |
Quelle Höhe. |
Rückgabewerte:
Gibt bei Erfolg
TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben. Beschreibung:
imagecopyresampled() kopiert einen rechteckigen Abschnitt eines Bildes auf ein anderes Bild, reibungslos Interpolieren von Pixelwerten, so dass insbesondere die Verringerung der Grösse eines Bildes noch immer eine grosse Klarheit.
Aktiv in Version:
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
Hinweis:
Hinweis:
Es ist ein durch Bildpalette Einschränkungen (255 +1 Farben) Problem. Resampling oder Filtern eines Bildes häufigsten braucht mehr als 255 Farben, ist eine Art der Annäherung verwendet, um die neuen Pixel neu abgetastet und seine Farbe zu berechnen. Mit einer Palette Bild versuchen wir, eine neue Farbe zuweisen, wenn das scheiterte, wählen wir den am nächsten (in der Theorie) berechnet Farbe. Dies ist nicht immer in der Nähe visuelle Farbe. Das mag eine seltsame Ergebnis, wie leer (oder optisch leer) Bilder. Um dieses Problem zu überspringen, verwenden Sie bitte ein Truecolor-Bild als Zielbild, wie man die durch imagecreatetruecolor().
Siehe auch:
imagecopyresampled() - Beispiel: Dieses Beispiel wird ein Bild auf die Hälfte seiner ursprünglichen Grösse resample.
Eingabe:
<?php // The file $filename = 'php.jpg'; $percent = 0.5; // Content type header('Content-Type: image/jpeg'); // Get new dimensions list($width, $height) = getimagesize($filename); $new_width = $width * $percent; $new_height = $height * $percent; // Resample $image_p = imagecreatetruecolor($new_width, $new_height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height); // Output imagejpeg($image_p, null, 100); imagedestroy($image_p); ?>
Ausgabe:
imagecopyresampled() - Beispiel 2: In diesem Beispiel wird ein Bild mit der maximalen Breite und Höhe anzuzeigen, von 200 Pixeln.
Eingabe:
<?php // The file $filename = 'php.jpg'; // Set a maximum height and width $width = 200; $height = 200; // 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($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // Output imagejpeg($image_p, null, 100); imagedestroy($image_p); ?>
Ausgabe:
Image-Funktionen