Foros del Web » Programando para Internet » PHP »

dibujar una lineas sobre una imagen

Estas en el tema de dibujar una lineas sobre una imagen en el foro de PHP en Foros del Web. Necesito saber si conocen alguna librería que me permita hacer esto: tengo que poder dibujar sobre una imagen una raya o una cruz y que ...
  #1 (permalink)  
Antiguo 08/06/2011, 08:57
Avatar de xamilo  
Fecha de Ingreso: febrero-2010
Mensajes: 120
Antigüedad: 14 años, 2 meses
Puntos: 1
dibujar una lineas sobre una imagen

Necesito saber si conocen alguna librería
que me permita hacer esto:

tengo que poder dibujar sobre una imagen una raya o una cruz
y que luego esa imagen nueva se guarde....

hasta ahora estoy mirando la librería GD...
pero no encuentro ninguna ejemplo más gráfico de lo que necesito
__________________
- Ingeniero en Informática -
  #2 (permalink)  
Antiguo 08/06/2011, 09:02
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: dibujar una lineas sobre una imagen

http://php.net/manual/es/ref.image.php
http://www.programacionweb.net/artic...iculo/?num=324
http://www.google.com.ar/search?sour...+imagen+%2B+gd
  #3 (permalink)  
Antiguo 08/06/2011, 13:53
Avatar de xamilo  
Fecha de Ingreso: febrero-2010
Mensajes: 120
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: dibujar una lineas sobre una imagen

alguna ejemplificación funcional???
__________________
- Ingeniero en Informática -
  #4 (permalink)  
Antiguo 08/06/2011, 15:03
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: dibujar una lineas sobre una imagen

http://www.imagemagick.org/script/index.php
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #5 (permalink)  
Antiguo 08/06/2011, 15:47
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: dibujar una lineas sobre una imagen

XD

ese par...

mira la librería GD te puede servir, tal como has planteado, sigue estos pasos:

Código PHP:
//PNG:
$img=imagecreatefrompng("direccion/de/la/imagen.png");
//JPG o JPEG:
//$img=imagecreatefromjpeg("direccion/de/la/imagen.jpg");
//BMP:
//$img=imagecreatefromwbmp("direccion/de/la/imagen.bmp");
//GIF:
//$img=imagecreatefromgif("direccion/de/la/imagen.gif"); 
con eso cargas la imagen en la variable $img

antes de dibujar la linea debes escoger un color para dibujarla, aqui algunos colores:

Código PHP:
$blanco=imagecolorallocate($img,255,255,255);
$negro=imagecolorallocate($img,0,0,0);
$rojo=imagecolorallocate($img,255,0,0);
$verde=imagecolorallocate($img,0,255,0);
$azul=imagecolorallocate($img,0,0,255);
$amarillo=imagecolorallocate($img,255,255,0);
$cyan=imagecolorallocate($img,0,255,255);
$magenta=imagecolorallocate($img,255,0,255); 
el primer valor es la imagen.
el primer color que uses se convertirá en el color de fondo de la imágen, te recomiendo usar blanco o negro para el fondo.
el segundo, tercero y cuarto valor son las variantes de rojo, verde y azul respectivamente.

ahora para dibujar la linea diagonal:

Código PHP:
imageline($img,0,0,100,100,$rojo); 
donde
imageline(imagen, posicion_incio_x, posicion_inicio_y, posicion_final_x, posicion_final_y, color);

luego para terminar puedes mostrar tu imagen así:

Código PHP:
imagepng($img);
//imagejpeg($img);
//imagewbmp($img);
//imagegif($img); 
o si en vez de mostrarla quieres guardarla, así:

imagepng($img,"direccion/de/la/imagen2.png");

(para mostrar la imágen no debe haber nada mas en el código o haber declarado el cabezal como imágen)

prueba ese código (las 4 partes) con tu imagen y nos cuentas :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #6 (permalink)  
Antiguo 09/06/2011, 07:50
Avatar de xamilo  
Fecha de Ingreso: febrero-2010
Mensajes: 120
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: dibujar una lineas sobre una imagen

ya puedo dibujar sobre la imagen... gracias!!!

ahora solo necesita pasar la el código a una aplicación para poder
dibujar con el mouse sobre la imagen
__________________
- Ingeniero en Informática -
  #7 (permalink)  
Antiguo 09/06/2011, 07:54
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: dibujar una lineas sobre una imagen

Cita:
Iniciado por xamilo Ver Mensaje
ya puedo dibujar sobre la imagen... gracias!!!

ahora solo necesita pasar la el código a una aplicación para poder
dibujar con el mouse sobre la imagen
eso sería con javascript o flash no se si pueda con php pero lo dudo.
  #8 (permalink)  
Antiguo 09/06/2011, 07:59
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: dibujar una lineas sobre una imagen

Cita:
Iniciado por memoadian Ver Mensaje
eso sería con javascript o flash no se si pueda con php pero lo dudo.
exacto, puede que te hayas ido por el camino equivocado, a no ser que estés enviando $_POST uno tras otro XD

tendrías que hacerlo con javascript (tomar la posición del mouse y reproducirla en la imagen con AJAX)

sería más fácil con alguna otra aplicación como flash, o java... etc.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #9 (permalink)  
Antiguo 09/06/2011, 09:03
Avatar de xamilo  
Fecha de Ingreso: febrero-2010
Mensajes: 120
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: dibujar una lineas sobre una imagen

mmmmmmmm..........

alguna guía entonces sobre como hacerlo con javascrit?
__________________
- Ingeniero en Informática -
  #10 (permalink)  
Antiguo 09/06/2011, 09:51
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: dibujar una lineas sobre una imagen

puedes capturar la posición del mouse con javascript, la función depende del navegador:

aqui un código js para lograrlo:

Código Javascript:
Ver original
  1. <script language="JavaScript" type="text/javascript">
  2. var xCoord = 0;
  3. var yCoord = 0;
  4. function checkwhere(e) {
  5.     if (document.layers){
  6.         xCoord = e.x;
  7.         yCoord = e.y;
  8.     }
  9.     else if (document.all){
  10.         xCoord = event.clientX;
  11.         yCoord = event.clientY;
  12.     }
  13.     else if (document.getElementById){
  14.         xCoord = e.clientX;
  15.         yCoord = e.clientY;
  16.     }
  17. }
  18. document.onmousemove = checkwhere;
  19. if(document.captureEvents) {document.captureEvents(Event.MOUSEMOVE);}
  20. </script>

guardará la posición X e Y en las variable xCoord e yCoord respectivamente.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #11 (permalink)  
Antiguo 09/06/2011, 10:40
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: dibujar una lineas sobre una imagen

wao yo creo que la gente reza para que stramin participe en un post, y es que da unas respuestas dignas de colgarlas en los aportes XD
  #12 (permalink)  
Antiguo 09/06/2011, 10:46
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: dibujar una lineas sobre una imagen

jajaja si y no te manda directito a la chin... por no leer el manual XD

tal vez combinando lo que dice el buen stramin

con esto puedas lograr tu objetivo

http://www.openstudio.fr/Library-for...wing-with.html
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo

Etiquetas: dibujar, lineas
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 03:44.