lunes, 28 de noviembre de 2011




Para trabajar con imagenes, PHP utiliza la librería GD, la cual se encuentra en la versión 2, desde que apareció la versión 5 del lenguaje. Maneja imagenes en formatos gif,jpeg,png y bmp.

Para trabajar con imagenes con GD, uno de los clásicos ejemplos es enviar una imagen al navegador.Cuando se envía una imagen a éste, es necesario incluir una cabecera o header, el cual indica que el contenido es una imagen, y de que tipo es:
header("content-type: image/jpeg");

Las alternativas a image/jpeg son image/gif,image/png e image/wbmp. Las imagenes se tratan en php de la misma forma que un archivo de texto:Primero se abre el archivo de imagen, que está en el servidor o en otra parte, y si esta no existe, se crea una nueva imagen. Esta operación genera un manejador o handler, mediante el cual podemos efectuar todas las operaciones que vamos a llevar a cabo.Por último, lo que debemos hacer es destruir el manejador, que hemos usado para liberar recursos en la memoria de nuestro servidor.

Para crear un manejador de imagen, disponemos de las siguientes funciones:imagecreatefromjpeg(),imagecreatefromgif(),imagecreatefrompng,imagecreatefrombmp() debemos escoger una de acuerdo al tipo de archivo de imagen con el cual trabajaremos. Cada una de estas funciones recibe como argumento el nombre y la ruta del archivo de imagen,. Si la función no encuentra el archivo, devolverá un valor false, ante lo cual deberemos emplear la función del operador de errores.

Una vez creado el manejador, haremos algo con la imagen. De momento sólo la mostraremos en el navegador. Para mostrar la imagen tenemos cuatro funciones:imagegif(),imagejpeg(),imagepng(),imagewmp(), la función elegida recibirá, como argumento la variable que contenga dicho manejador.

Veamos un ejemplo sencillo con una imagen jpeg:
<?php

 header("Content-type:image/jpeg");

 $imagenjpeg=imagecreatefromjpeg("Dibujo.jpg");

 imagejpeg($imagenjpeg);

 imagedestroy($imagenJPG);

?>


La función imagejpeg(), así como sus homólogas para los otros tipos de imágenes puede soportar un segundo parámetro:

imagejpeg($imagenjpeg,"imagenes/copiadeimagen.jpg");

En este caso. esta función copìara el archivo original en otro archivo llamado "copiadeimagen.jpg".

Pero, incluso a la función se le puede agregar un tercer parámetro, indicando la calidad con la cual se mostrará la imagen , o se grabará en el nuevo archivo. Si lo que queremos es sólo mostrarla debemos dejar en el segundo parametro una cadena vacía " " :

imagejpeg($imagenjpeg," ",2);

Si queremos copiar la imagen a otro archivo,especificando la calidad debemos incluir el segundo parámetro:

imagejpeg($imagenjpeg,"imagenes/copiadeimagen.jpg", 2);

En todo caso, en estos dos últimos ejemplos, los resultados que se obtendrán serán desastrosos, por lo que de momento es recomendable no manejar el tercer parámetro. Pero esto sirve para mostrar las capacidades de estas funciones.

0 comentarios:

Se ha producido un error en este gadget.

segunda mano

Blog Flux

Computers Blog Directory

BlogUpp!

Directorio de Blogs

Directorio de Blogs

Blog Archive

About Me

Mi foto
Patricio Morales

Ingeniero de Ejecución en Informática y Técnico en Electrónica Industrial con amplia experiencia en el área de Soporte Técnico Computacional. Entre mis antecedentes destacan: Haber trabajado como Soporte Técnico por 4 años desde 2003 hasta 2007 para Empresas Bravo CAS LTDA, que en aquel entonces ofrecía soporte administrativo para las Cadenas de Supermercados BRYC (hoy Unimarc), Mayorista 10,además de Abarrotes CD(Distribuidora) y Maspan S.A(Panificadora). En 2008 trabajé como Soporte Técnico para un contratista de SONDA S.A., tiempo en el cual me correspondió atender a varias empresas de carácter regional y nacional. Desde el 2009 trabajo como Coordinador de Informática para el Departamento de Educación(DAEM) de la I. Municipalidad de Temuco. Además he trabajado de forma particular, realizando diversos trabajos en el área de Soporte Informático y en el área de relatorías para particulares y empresas.

En lo personal, me considero una persona que le gusta algo nuevo cada día, investigar sobre varios temas, que no tengan que ver con la informática y la electrónica (hay vida mas allá de los bits).

Ver todo mi perfil

Archivo del blog

Seguidores

contador de visitas

View My Stats