2012-01-26 13 views
10

¿Alguno de ustedes conoce una buena clase de php que puedo usar para descargar una imagen de una fuente remota, cambiar el tamaño a 120x120 y guardarlo con el nombre de archivo que elija ?descargar imagen de fuente remota y cambiar el tamaño luego guardar

Así que, básicamente, tendría una imagen en "http://www.site.com/image.jpg" guardar en mi servidor web "/images/myChosenName.jpg" como un 120x120 píxeles.

Gracias

+0

¿Y si la imagen original no es cuadrada? ¿Estás planeando recortarlo, escalarlo o algo más? ¿Y qué pasa si la imagen original es más pequeña que 120x120? ¿Estás planeando escalarlo? –

+0

En una nota más de "respuesta", debería poder escribir este código usted mismo de forma bastante rápida y sencilla: use las funciones 'file_get_content' con la url de la imagen para obtener el contenido de la imagen en una variable, luego use un par de GD funciona para escalarlo, y finalmente la función 'file_put_contents' para guardar el resultado. –

+0

el original nunca será más pequeño que 120x120 pero pueden necesitar escalar – Ivar

Respuesta

14

Puede intentar esto:

<?php  
$img = file_get_contents('http://www.site.com/image.jpg'); 

$im = imagecreatefromstring($img); 

$width = imagesx($im); 

$height = imagesy($im); 

$newwidth = '120'; 

$newheight = '120'; 

$thumb = imagecreatetruecolor($newwidth, $newheight); 

imagecopyresized($thumb, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 

imagejpeg($thumb,'/images/myChosenName.jpg'); //save image as jpg 

imagedestroy($thumb); 

imagedestroy($im); 
?> 


Más información acerca de la función de imagen PHP: http://www.php.net/manual/en/ref.image.php

+0

Muchas gracias, ¡funciona genial! – Ivar

Cuestiones relacionadas