Kezdőoldal » Számítástechnika » Programozás » PHP-val hogyan oldható meg...

PHP-val hogyan oldható meg egy feltöltött kép méretarányos átméretezése?

Figyelt kérdés
valaki írja le kérlek hogy mitől lesz arányos a képcsökkentés, és hogy milyen függvények, és más dolgok szükségesek, hozzá + egy logikát amin végmehetek. Köszi a válaszokat előre is!

#php #méretarányos képátméretezés
2012. nov. 10. 19:52
 1/4 anonim ***** válasza:

[link]


Itt vannak a képekhez való PHP függvények.

Ha nincs alapból (most nem futom át és rég PHP-ztem) olyan méretezés ami neked kell, akkor kérd le a kép méretét (megkapható) és azt változtasd méretarányosan.

2012. nov. 10. 19:54
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
De pont ezt kérdeztem hogy mitől lesz méretarányos a képátméretezés?
2012. nov. 10. 19:55
 3/4 anonim ***** válasza:

A kérdésedben benne van a válasz. Nézz utána a síkidomok hasonlóságának. Általános iskolás anyag.

[link]

2012. nov. 10. 21:15
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:

Ezt használom.

Egyszer írtam illetve máshonnan összehajaztam egy system kernelt. Azt használom mindnehol, abban van. Universal :D


function imageResize($photo, $width, $height) {

if (file_exists($photo)) {

while (true) {

$imageName = sha1(time()) . ".jpg";

if (!is_file($imageName)) break;

}


$size = getimagesize($photo);

$x_ratio = $width / $size[0];

$y_ratio = $height / $size[1];


if (($size[0] <= $width) && ($size[1] <= $height)){

$tn_width = $size[0];

$tn_height = $size[1];

} else {

if (($x_ratio * $size[1]) < $height){

$tn_height = ceil($x_ratio * $size[1]);

$tn_width = $width;

} else {

$tn_width = ceil($y_ratio * $size[0]);

$tn_height = $height;

}

}


$pathInfo = pathinfo($photo);


switch ($pathInfo['extension']) {

case "png": $src = imagecreatefrompng($photo); break;

case "jpg": $src = imagecreatefromjpeg($photo); break;

case "jpeg": $src = imagecreatefromjpeg($photo); break;

case "gif": $src = imagecreatefromgif($photo); break;

default: die("Error: Unsupported image type.");

}


$dst = imagecreatetruecolor($tn_width, $tn_height);


imagecopyresampled($dst, $src, 0, 0, 0, 0, $tn_width, $tn_height, $size[0], $size[1]);

imagejpeg($dst, $imageName, 1) or die("Error: Photo has not been resized.");

imagedestroy($src);

imagedestroy($dst);

}

}

2012. dec. 6. 23:34
Hasznos számodra ez a válasz?

További kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!