Ahora que ya sabia como crear mis propios sliders, solo faltaba automatizar el proceso (flojo que soy), y como decidí hacer de python mi lenguaje por defecto XD, pues me puse a trabajar y esto fue lo que me salio, no es el súper programa pero intente hacerlo lo mas pythonista que pude, por favor si alguien lee esto y tiene mas conocimientos de python, se le agradecerán todos las criticas que me ayuden a mejorar u_u
- #!/usr/bin/python
- # -*- coding: UTF-8 -*-
- # Por: Jhonatan sneyder Salguero Villa (sney2002@gmail.com)
- # Crear fondos de escritorio cambiantes
- import sys, os
- FORMAT = """ <static>
- <duration>%(static_time).1f</duration>
- <file>%(current)s</file>
- </static>
- <transition>
- <duration>%(transition_time).1f</duration>
- <from>%(current)s</from>
- <to>%(next)s</to>
- </transition>"""
- class BackgroundSlider():
- EXTENSIONS = [".jpg", ".jpeg", ".png"]
- def __init__(self, static_time = 1200):
- self.xml_parts = ["<background>"]
- self.static_time = static_time
- self.path = os.getcwd()
- def get_images(self, ext=EXTENSIONS):
- """ Guardar archivos con extencion (jpg, jpeg, png) en self.images """
- # Se puede especificar los archivos como argumentos
- files = sys.argv[1:] or os.listdir(".")
- # Filtrar imágenes
- self.images = [os.path.join(os.getcwd(), img) for img in files if os.path.splitext(img)[1].lower() in ext]
- def add_image(self, current, next, static_time, transition_time = 5):
- """ Adicionar imagen al slider """
- self.xml_parts.append( FORMAT % locals() )
- def make_slider(self):
- """ Crear archivo xml que define el slider """
- images = self.images
- # Todo termina donde empiesa U_U
- images.append( images[0] )
- for i in range( len(images)-1 ):
- self.add_image(images[i], images[i+1], self.static_time)
- self.xml_parts.append("</background>")
- def save(self, filename = "background" ):
- """ Guardar el slider """
- xml = file(filename + ".xml", 'w')
- try:
- xml.write( "\n".join(self.xml_parts) )
- except IOError:
- print "Error al Guardar el archivo. Intente de Nuevo"
- finally:
- xml.close()
- if __name__ == "__main__":
- slider = BackgroundSlider()
- slider.get_images()
- slider.make_slider()
- slider.save()
No hay respuestas a “Fondo de escritorio cambiantes para ubuntu”
Deja una respuesta