Inicio > Scripts Nautilus > Script de Nautilus para añadir una marca de agua a una imagen

Script de Nautilus para añadir una marca de agua a una imagen

Jueves, 12 noviembre 2009 Deja un comentario Go to comments

Hola,

en muchas ocasiones necesitamos añadir una marca de agua a una imagen, yo al menos así lo hago con muchas fotos.  El script que os dejo permite usar una imagen como marca de agua y añadirsela a la imagen que queremos “firmar”. Aparte de escoger la imagen que queremos usar como marca de agua, el script nos permite configurar la visibilidad de la misma.

Requisitos del script:

  • Zenity
  • Imagemagick

Para el funcionamiento del script hay que copiarlo dentro del Home del usuario a la carpeta /.gnome2/nautilus-scripts y darle permisos de ejecución.  Ahora ya nos aparece en le menú contextual de Nautilus.

Pantallazo-5Imagen original

earth-horizon

Imagen que sirve como marca de agua

marca_agua_1_blog

Imagen con la marca de agua añadida y una visibilidad del 75%

wm_earth-horizon

Descargar Script.

Codigo fuente del script.


#!/bin/bash

#******************************************************************************************
#
# Marca de agua
# Versión= 1.0
#
# Script de Nautilus que añade una marca de agua a una imagen
# La marca de agua es otra imagen

# Script programado y probado satisfactoriamente en Debian Lenny y Gnome 2.22.3
# Esta programado pensado en ejecutarse como un script de Nautilus aunque es posible
# usarlo en consola pasandole como parámetro el nombre del fichero de la imagen.

#  DEPENDENCIAS
#
#  Zenity (http://freshmeat.net/projects/zenity)
#  Necesario para generar los cuadros de dialogo del script
#
#  Imagemagick (http://www.imagemagick.org/)
#  Contiene elprograma composite  necesario para crear el borde

# INSTALACION:
#     1. Copiar el script al directorio /home/usuario/.gnome2/nautilus-scripts
#    2. Dar permisos de ejecución al script
#    3. En este momento al pulsar con el botón derecho del ratón sobre una imagen nos
#       aparece el menú Scripts y dentro de el aparece el script.

# Copyright (C) 2009 Carlos Fco. Andión López

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

# http://www.gnu.org/copyleft/gpl.html

#******************************************************************************************

# Se comprueba que los programas necesarios para generar el borde estan presentes
for command in composite
do
 if [ ! $(which $command) ]
then
 zenity --error --text "Falta el programa "$command" .n
 Es necesario instalar el paquete ImageMagick."
 exit 1
 fi
done

#Se indica el fichero con la marca de agua y el porcentaje de visibilidad

 WM_FILE=`zenity --file-selection --title="Seleccione un archivo"`

 case $? in
 0)
 echo ""$WM_FILE" seleccionado.";;
 1)
 echo "No ha seleccionado ningún archivo.";;

 -1)
 echo "No ha seleccionado ningún archivo.";;

 esac

VISIBILITY=`zenity --title='Marca de agua' --text='¿Visibilidad en %?' --entry-text='50' --entry`

#Se inicializa la barra de progreso de zenity
FILES_COUNT="$#"
CURRENT_FILE=1

for arg;
 do
 #Se renombra el archivo para evitar sobreescribir el original y crear uno nuevo con la marca
 IMX_FILE_TARGET='wm_'"$arg"

 composite -dissolve "$VISIBILITY" "$WM_FILE" "$arg" "$IMX_FILE_TARGET"

 #Actualizo la barra de progreso de Zenity
 percentage=$(echo "$CURRENT_FILE * 100 / $FILES_COUNT" | bc)
 CURRENT_FILE=$((CURRENT_FILE + 1))
 echo $percentage

done | zenity --progress --title="Procesando imagenes"  --auto-close

Anuncios
Categorías:Scripts Nautilus Etiquetas: ,
  1. tolgalen
    Sábado, 27 marzo 2010 en 8:38 pm

    Sí, solo hay que añadirle la opción a composite

    composite -dissolve gravity southeast “$VISIBILITY” “$WM_FILE” “$arg” “$IMX_FILE_TARGET”

  2. ruy
    Sábado, 27 marzo 2010 en 7:13 pm

    excelente script!!!!

    pero me preguntaba si hay forma de modificar el mismo para darle la función -gravity southeast y con ello ponga la marca de agua en la esquina inferior izquierda.

    gracias

  1. No trackbacks yet.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: