sep
28

Poner un borde a una capa con Gimp

8 comentariosEscribir comentario
Hoy un compañero que se está pasando a linux me ha preguntado como hacer un borde con Gimp. Supongo que esperaba algo al estilo de Photoshop usando algo parecido a los efectos de capa. Una vez que se lo he explicado le he dicho ¿porqué no hacemos un scripts que lo haga más fácilmente? En unos 5 minutos ya lo teníamos. Aquí el script:

  1. #!/usr/bin/env python
  2. # -*- coding: latin-1 -*-
  3. # Script para Gimp en Python
  4. # Realizado por Fco. Javier Perez Pacheco y Paco Diaz
  5. # Este script crea un borde a una capa
  6. # importamos los modulos necesarios
  7. from gimpfu import *
  8. def BordeACapa(img, drawable, borde):
  9. # comenzamos a agrupar el UNDO
  10. pdb.gimp_image_undo_group_start(img)
  11. layer_border = pdb.gimp_layer_new(img, img.width,
  12. img.height, RGB_IMAGE, "border", 100, NORMAL_MODE)
  13. layer_border.add_alpha()
  14. img.add_layer(layer_border, img.layers.index(drawable)+1)
  15. layer_border.fill(TRANSPARENT_FILL)
  16. pdb.gimp_selection_layer_alpha(drawable)
  17. pdb.gimp_selection_grow(img, borde)
  18. pdb.gimp_edit_bucket_fill(layer_border, FG_BUCKET_FILL, 
  19. 0, 100, 255, False, 0, 0)
  20. pdb.gimp_selection_clear(img)
  21. # agrupamos UNDO
  22. pdb.gimp_image_undo_group_end(img)
  23. # funcion principal
  24. if __name__ == '__main__':
  25. # llamada a funcion register
  26. register(
  27. "borde_a_capa",
  28. "Borde a capa",
  29. "Borde a capa",
  30. "Javi Pacheco y Paco Diaz",
  31. "Javi Pacheco y Paco Diaz",
  32. "2005",
  33. "<Image>/Python-Fu/Borde a capa",
  34. "RGB*, GRAY*",
  35. [
  36. (PF_SPINNER, "borde", "Borde", 2, (0, 10, 1))
  37. ],
  38. [],
  39. BordeACapa)
  40. main()
Que maravilla esto de los scripts. En estos días lo incluiré con los demás. Por cierto para colorear el código he usado esta web.

Últimamente casi no estoy escribiendo y es que nos encontramos trabajando a destajo en el nuevo videojuego que estará listo en 2 meses. Mi vida es un desastre y estoy trabajando a todas horas del día en el juego, así que voy a estar un poco perdido. Creo que merecerá la pena.
Categorías Gimp Proyectos Python

DraXus dice:
¿Podrías ponerlo en un fichero de texto plano? Es que al hacer copy paste salen # al principio de cada línea :(

Gracias!
javielinux dice:
Ok. Ya está. Está en el paquete junto a los demás scripts, se llama borde.py

saludos
DiZo dice:
Muy bueno el trabajo de los bordes Javielinux, aunque se nota tu ausencia por la Web, seguro que el trabajo que estás haciendo, merece la pena.Asi que Ánimo y que salga todo bien.Saludos !
javielinux dice:
Yo creo que si, que merece la pena. Ya sólo nos quedan 2 meses y tendrá que estar en la calle como quien dice. Ya falta menos

Gracias por tus ánimos DiZo, que hacen mucha falta ;-)
indiocabreao dice:
Holas Javielinux :-) Te escribo aqui pq hace bastante te mande un email, no me contestaste asi que supongo que automaticamente fui a tu spam :-P Te copio y pego el email: Supongo que te acuerdas de mi...soy el indiocabreao de GNUinOS y de Guadalinex, espero que estes bien :-) hace que no se de ti. Sin mas te explico un problema que tengo, por si me podias ayudar. Hace tiempo que mantengo un repositorio no oficial para Guadalinex, puedes verlo aqui: http://guadausers.lynksee.com/ Quiero empaquetar tus scripts para Nautilus, pero no encuentro porningun lado la ruta que deberian tener en el sistema (no en la home deusuario)....por si tu sabias algo.Muchas gracias y saludos :-)
javielinux dice:
Claro que me acuerdo de ti indio. Bueno, el correo no me llegó nunca, por eso no te lo contesté, siempre contesto los correos. Es raro que no me llegase, pero bueno...

Yo quiero desde hace tiempo empaquetarlos tb, pero es q no tengo demasiado tiempo ;-). La ruta donde se guardan los scripts es en:

/home/usuario/.gnome2/nautilus-scripts

o mejor

~/.gnome2/nautilus-scripts

No se si te refieres a eso.

Por cierto he arreglado un poco el texto ;-)
indiocabreao dice:
Holas, no me referia a eso. Esa seria la ruta para instalarlos en la home de usuario, pero para poder crear el paquete necesito saber la ruta donde los buscaria el sistema, un ejemplo seria: /usr/share/gnome-2.0/nautilus-scripts Supongo que ahora me entendiste mejor.P.D. Todas las posibles rutas que intento...ninguna funciona :-( Saludos
javielinux dice:
Me he llevado un rato probando y nada. He instalado de synaotic unos scripts en Bash para subversion y convertir formatos de audio. Me los ha instalado en /usr/share/nautilus-scripts, pero nada, a mi no me salen por ninguna parte, y los archivos están ahí

Recuerda que los archivos tienen que tener permisos de ejecución

Si lo consigue dime algo. Un saludo