Alinos - Notas

Crear miniaturas de múltiples imágenes con GIMP

Crear miniaturas (thumbnails) de las imágenes .jpg de una carpeta usando GIMP


El método y script para GIMP utilizado se ha descargado desde la web http://captainbodgit.blogspot.com/2016/11/scheme-ing-with-gimp-batch-photo.html

  1. Grabamos el script siguiente en un fichero llamado "scale-batch.scm" y lo ponemos en la carpeta de scripts de GIMP que puede variar según el sistema operativo y versión de Gimp utilizados. En un Linux tipo Debian con Gimp 2.0 hay que ponerlo en la ruta /usr/share/gimp/2.0/scripts
    (define (scale-batch pattern)
        (let*
            (
                (w 0)
                (h 0)
                (w1 250)    ;smallest dim for main photo is 250 pixels
                (h1 250)
                (scaler 1)
                (drw 0)
                (noExt " ")
            )
     
            (let* ((filelist (cadr (file-glob pattern 1))))
                (while (not (null? filelist))
                    (let* (
                                    (filename (car filelist))
                                    (image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
                                    (drawable (car (gimp-image-get-active-layer image)))
                                    (w1 250)
                                    (h1 250)
                               )
                
                                (set! filename (car (gimp-image-get-filename image)))    ;get file name & path
                                (set! noExt (car (strbreakup filename ".")));remove ext
                                (set! w (car(gimp-image-width image)))
                                (set! h (car(gimp-image-height image)))
                                (set! scaler (/ w h))
                                ;create page image     
                                (cond
                                    (
                                        (<= w h) (set! h1 (/ 250 scaler))
                                    )
                                    (
                                        (>  w h) (set! w1 (* 250 scaler))
                                    )
                                )
                                (gimp-message (number->string image))
                                (gimp-image-scale image w1 h1)
                                (set! drw (car (gimp-image-flatten image)))
    
                                (file-jpeg-save 1 image drw
                                    (string-append noExt "_s.jpg")
                                    (string-append noExt "_s.jpg")
                                    .75 0 0 0
                                    "Auto reduced web photo by SteveDee's script"
                                    0 1 0 1
                                )
                                (gimp-image-delete image)
                    )
                    (set! filelist (cdr filelist))
                )
            )
        )
    )
    
  2. Luego nos situamos en la carpeta que contiene las imágenes y ejecutamos la orden gimp -i -b '(scale-batch "*.jpg")' -b '(gimp-quit 0)'. En esa misma carpeta se van a crear las miniaturas con el mismo nombre de la imagen .jpg original pero con el sufijo "_s.jpg". El anterior script está configurado para crear las miniaturas de un tamaño máximo de 250 pixels de alto o ancho. Si se quieren generar a otros tamaños basta con reemplazar ese número de pixels en el script. Cuidado con mayúsculas/minúsculas que esta orden busca solo ".jpg". En la web del programador de este script... http://captainbodgit.blogspot.com/2016/11/scheme-ing-with-gimp-batch-photo.html hay ejemplos de esta instrucción para contemplar a la vez las extensiones en mayúsculas y minúsculas.

Categoría: Imágenes

Alinos - Notas Volver al Inicio de las Notas

Alinos - Notas Editar Notas


http://alinos.sytes.net

Contactar por e-mail

Aviso a navegantes: Las anotaciones recopiladas en esta base de datos son sólo una ayuda para mi memoria. No pretenden ser un tutorial ni un diccionario así que es posible que no sean de utilidad en otros casos o equipos diferentes a los que yo he usado y seguramente contienen múltiples errores e imprecisiones.