mamedu :: logoAimagen
mamedu.gif

Programación y linux

  • Contenido pendiente de traducción

18 de June, 2010

Archivos

Nombre Tamaño Fecha MIME código V
logoAimagen 5.0Kb 07 de Septiemre, 2010 text/x-sh [Ver] [V]
#!/bin/bash ## Este programa esta sujeto a la licencia GNU/GPL. # # En esta página podeis encontrar una traducción en castellano # http://gugs.sindominio.net/licencias/gples.html # # y aquí la versión original http://www.gnu.org/licenses/gpl-3.0.html autor='Eduardo Magrané' mail='eduardo.mamedu.com' licencia='GNU/GPL 3.0' web='http://www.mamedu.com' prog=`basename $0` version='0.4' descripcion="Insertar logo en una imagen" pendiente= dependencias='composite zenity' # colores cNormal="\033[0m" cError="\033[1;31m" cAviso="\033[1;37m" cComentario="\033[47m\033[1;30m" cAfirmativo="\033[1;32m" cDestacado="\033[1;37m" ## Añadimos color # # Uso: # color # # @param color Color a añadir color() { if [ "$var_color" = 'si' ] ; then local c=${1:-cNormal} ; echo -e "${!c}" ; fi } # Variables configurables var_fich_conf="$HOME/.${prog}rc" desc_var_fich_conf="Archivo de configuración" var_color=si desc_var_color='Presentar colores' # Si tenemos fichero de configuración recogemos lo insertamos [[ -e "$var_fich_conf" ]] && source $var_fich_conf function info() { # local l=`echo "$prog" | sed s/./=/g` # echo # echo "$prog" # echo $l echo echo ":version: $version" echo ":licencia: $licencia" echo ":autor: $autor" echo ":web: $web" echo ":mail: $mail" echo if [ -n "$descripcion" ] ; then echo echo Descripción echo "Descripción" | sed s/./-/g echo echo -e "$descripcion" echo fi help if [ -n "$dependencias" ] ; then echo echo 'Programas externos necesarios' echo 'Programas externos necesarios' | sed s/./-/g echo for dep in $dependencias ; do echo -e " - $dep" ; done echo fi if [ -n "${!var_*}" ] ; then echo echo 'Variables configurables' echo 'Variables configurables' | sed s/./-/g echo for var in ${!var_*} ; do d="desc_$var" ; echo -e " - ${!d}: ${!var}" ; done echo fi if [ -n "$pendiente" ] ; then echo echo Pendiente echo Pendiente | sed s/./-/g echo echo -e "$pendiente" fi } function help() { echo echo "uso" echo "uso" | sed s/./-/g echo echo "$prog -l " echo echo Opciones: echo echo " -l Logo a añadir" echo " -g Lugar donde ubicar el logo, por defecto SouthEast" echo " -help Pantalla de ayuda" echo echo "$prog -info, Para más información" echo } function error() { if [ `tty` ] ; then echo echo `color cError` $1 `color` echo echo Ayuda echo ----- echo help else zenity --error --text="$1\n\nAyuda:\n\n`help`" fi exit "$2" } function comprobar_dependencias() { local salir=no echo echo Comprobar dependencias for d in $dependencias ; do s="`whereis $d`" s="${s/#*:}" if [ -z "$s" ] ; then echo " - $d `color cError`[NO]`color`" salir=si else echo " - $d `color cAfirmativo`[si]`color`" fi done if [ "$salir" = "si" ] ; then echo echo `color cError`Necesitas instalar los programas no encontrados`color` exit 1 fi } while [ -n "$1" ] ; do case "$1" in -h|-help|--help) help ; exit ;; -info) info ; exit ;; --dependencias|-d) comprobar_dependencias ; exit ;; -l) logo="$2" ; shift 2;; -g) gravity="$2" ; shift 2 ;; *) break;; esac done if [ -z "$gravity" ];then gravity=$(zenity --list --title="Elija lugar donde se ubicara el logo" --column='' --column="Orientacion" --radiolist FALSE NorthWest FALSE North FALSE NorthEast FALSE West FALSE Center FALSE East FALSE SouthWest FALSE South TRUE SouthEast) if [ -z "$gravity" ];then gravity="SouthEast" fi fi if [ -z "$logo" ];then FILE=`zenity --file-selection --title="Seleccione el logo"` case $? in 0) logo="$FILE" echo "\"$FILE\" seleccionado.";; 1) echo "No ha seleccionado ningún archivo.";; -1) echo "No ha seleccionado ningún archivo.";; esac if [ -z "$logo" ];then error "Imagen sin especificar, -l " 1 fi fi if [ -z "$1" ];then error "Imagen sin espicificar" 1 fi for imgfile in $* ;do if [ ! -r "$imgfile" ]; then echo "ERROR: No puedo leer imagen $imgfile" else bn=`basename "$imgfile"` dn=`dirname "$imgfile"` if echo "$bn" | grep "^logo_" > /dev/null ; then echo "File $imgfile has already logo_ in its name, ignored..." continue fi outfilename="$dn/logo_$bn" echo "writing $outfilename ..." composite -gravity ${gravity:-SouthEast} -dissolve 100 "$logo" "$imgfile" "$outfilename" [[ $? != 0 ]] && error "Error al procesar imagen $imgfile" 1 fi done if [ `tty` ] ; then exit 0 ; else zenity --info --text="$prog terminado" ; fi
Administrar

Nombre:

Contraseña: