Foros del Web » Programando para Internet » PHP »

¿Cómo devolver JPG procesado que se pueda imprimir?

Estas en el tema de ¿Cómo devolver JPG procesado que se pueda imprimir? en el foro de PHP en Foros del Web. Hola de nuevo a todos. Resulta que tengo el típico script que genera una imagen JPG usando las librerias GD, y devuelve el contenido con ...
  #1 (permalink)  
Antiguo 31/03/2010, 15:21
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 21 años, 4 meses
Puntos: 1
¿Cómo devolver JPG procesado que se pueda imprimir?

Hola de nuevo a todos.

Resulta que tengo el típico script que genera una imagen JPG usando las librerias GD, y devuelve el contenido con el encabezado usual
header("Content-type: image/jpeg");

El script es tipico:
Código PHP:
header("Content-type: image/jpeg"); 
$imagen imagecreate(100,100); 
// aqui manipulo la imagen
imagejpeg($imagen ); 
imagedestroy($imagen ); 
El problema: Es que necesitaria que la imagen se puedira guardar como JPG, y/o que se imprimiera... esto es, al seleccionar 'guardar como' aparece un bmp y al imprimir sale la hoja en blanco.

¿Cómo puedo hacer que se devuelva como un JPG grabable? Tendria que guardar como archivo la imagen primero y mostrarla como un <img src="rutaImagen"> a ella o hay otras maneras más sencillas?

Muchas gracias como siempre y un saludo.
  #2 (permalink)  
Antiguo 31/03/2010, 16:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 7 meses
Puntos: 2135
Respuesta: ¿Cómo devolver JPG procesado que se pueda imprimir?

Eso en sí ya es una imagen, si tu seleccionas guardar como aunque te pone "image.php", es en realidad la imagen, solo cambia el nombre y guardala y puedes ver que es la imagen.

Saludos.
  #3 (permalink)  
Antiguo 01/04/2010, 01:02
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 21 años, 4 meses
Puntos: 1
Respuesta: ¿Cómo devolver JPG procesado que se pueda imprimir?

GatorV,
Encantado de recibir tu ayuda de nuevo.
En realidad al seleccionar guardar aparece como 'bmp'. He probado a guardar y renombrar como archivo jpg, y tras ello abriendo con un visor de imágenes se puede imprimir (y he comprobado que se imprime). Lo que pasa es que quizá es un poco lioso para los usuarios.
El script que genera la imagen se llama directamente, es decir, NO de la manera: <img src="url/script.php" />

Supongo que otra forma sería almacenar fisicamente la imagen generada previamente, y devolver el vínculo http a ésta dentro de un <img> ¿o piensas que hay otras maneras?

Gracias de nuevo por tu ayuda y un saludo.
  #4 (permalink)  
Antiguo 01/04/2010, 01:19
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: ¿Cómo devolver JPG procesado que se pueda imprimir?

No se si tienes el firebug para Mozila Firefox, pero si lo tienes (y si no debes instalarlo) cargas la página con la extensión encendida, y luego en la pestaña de RED das a Imágenes y buscas tu imagen. Haces click sobre ella y sale la información de los headers.

Uno de los headers será el Content-Type, y mira a ver cual es.

Si ves que es el correcto (el de jpeg) puedes probar a bajarlo desde otro explorador.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #5 (permalink)  
Antiguo 01/04/2010, 02:24
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 21 años, 4 meses
Puntos: 1
Respuesta: ¿Cómo devolver JPG procesado que se pueda imprimir?

AnesGy, gracias por tu ayuda!

Esto es lo que devuelve el script que genera la imagen.
Encabezados de la RESPUESTA:
Código:
He instalado el Firebug (no lo tenía)
Server	Microsoft-IIS/5.1
Date	Thu, 01 Apr 2010 08:22:28 GMT
X-Powered-By	ASP.NET, PHP/5.2.6
Connection	close
Set-Cookie	ZDEDebuggerPresent=php,phtml,php3; path=/
Expires	Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control	no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma	no-cache
Content-Type	image/jpeg
Encabezados de la SOLICITUD
Código:
Host	localhost
User-Agent	Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2
Accept	text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language	es-es,es;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding	gzip,deflate
Accept-Charset	ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive	115
Connection	keep-alive
Referer	http://localhost/prueba/genera_imagen.php?id=1
Cookie	CHP=b5f7teofau8rk3u7upb0avjnn0; ZDEDebuggerPresent=php,phtml,php3
Cache-Control	max-age=0
¿Alguna idea?
Gracias por la ayuda!
  #6 (permalink)  
Antiguo 01/04/2010, 03:15
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: ¿Cómo devolver JPG procesado que se pueda imprimir?

Hum... no veo porqué se debe bajar como bmp. Prueba a bajarlo con otro navegador. Y si ves que es lo mismo prueba con otro ordenador (si puedes).
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #7 (permalink)  
Antiguo 06/04/2010, 05:23
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 21 años, 4 meses
Puntos: 1
Respuesta: ¿Cómo devolver JPG procesado que se pueda imprimir?

Hola de nuevo y disculpad el tiempo sin responder, pero estuve fuera.
Aquí va:

-Con FireFox: Al seleccionar 'Guardar como' ofrece como nombre de archivo de la imagen a guardar: 'script.php.jpg' lo guardo y al abrir el archivo no se puede (no muestra nada) porque parece corrupto.

- Con IExplorer: Al seleccionar 'Guardar como' ofrece para guardar como 'bmp' guardo como 'JPG' y al abrir sí se abre correctamente.

¿Alguna idea?

Etiquetas: devolver, jpg
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:12.