Foros del Web » Programación para mayores de 30 ;) » Programación General »

que hago mal: Crear una imagen en fichero

Estas en el tema de que hago mal: Crear una imagen en fichero en el foro de Programación General en Foros del Web. Hola, tengo un script en perl, que crea una imagen de ciertas caracteristicas, pero ahora necesito guardar esa imagen del navegador en un fichero, cuyo ...
  #1 (permalink)  
Antiguo 08/04/2005, 01:31
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 2 meses
Puntos: 1
que hago mal: Crear una imagen en fichero

Hola, tengo un script en perl, que crea una imagen de ciertas caracteristicas, pero ahora necesito guardar esa imagen del navegador en un fichero, cuyo nombre sea la union de las 3 variables que recibe el script:

Para resumir...:

al final del código tengo:

print $im->png; #en $im tengo la información de la imagen

hasta aqui todo bien, al ejecutarlo enviandole 3 variables: color, string y tamaño de fuente me crea una imagen, pero al intentar guardarla en un fichero hago esto:

$NombreFichero="$var1 - $var2 - $var3";

open (IMAGEN, “>$NombreFichero.png”);
print IMAGEN $im;
close(IMAGEN);

Internal Server Error


no sé en qué puedo estar equivocado
  #2 (permalink)  
Antiguo 08/04/2005, 01:54
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 2 meses
Puntos: 1
he solucionado algo... pero no el archivo

Código:
print $im->png;
  
#guardar la imagen en fichero

	$fileName = "$var1-$var2-$var3.png";
	open (IMAGEN, ">fotos/$fileName");

	print IMAGEN "$im";
	close (IMAGEN);

co esto me crea la imagen en el navegador (NO me da error) pero no encuentro la imagen creada ? donde la guarda? hay algo mal?

Última edición por MandrakeXP; 08/04/2005 a las 01:56
  #3 (permalink)  
Antiguo 08/04/2005, 05:55
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Hola, cuando usas open y close debes darle alguna otra salida alternativa si se ocurre un error como ser

open(...) || &error('no sepuede abrir...');

y creas una función

sub error {
print $_[1];
}

De esta manera sabemos si el error está en esa línea de código, puede que tu carpeta actual no permita que se creen los archivos o algo así...

Otro problema que veo es que debes especificar que el archivo es BINARIO esto lo haces colocando

binmode(IMAGEN);

justo luego de abrir el archivo...

open...
binmode(IMAGEN);
print...
close...

Esa sería la lógica...

Espero que te sirva, probalo y luego contame...

Saludos
__________________
Esteban Quintana
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 04:32.