Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Andrey Kiselev                       2:5020/400     06 May 2003  19:43:46
 To : Vladimir Mosgalin
 Subject : Re: Gimp: пакетная обработка файлов
 -------------------------------------------------------------------------------- 
 
 .RFC-Message-ID: <88l89b.tgm.ln@127.0.0.1>
 From: Andrey Kiselev <dron@ak4719.spb.edu>
 
 Vladimir Mosgalin <Vladimir.Mosgalin@p17.f1041.n5030.z2.fidonet.org> wrote:
 
 VM> Расскажите, как в гимпе обработать сотню файлов одинаковым образом.
 VM> В фотошопе нужно было нажать "запись макроса", сделать действия, потом
 VM> сказать "обработай пачку файлов этим макросом". Как тут?
 VM> Я знаю про умное слово script-fu, но не писать же мне в текстовом
 VM> редакторе непонятно что, предварительно долго выискивая названия нужных
 VM> мне функций? Если уж без него никак, как сказать гимпу самому его
 VM> написать по пачке действий?
 
 Вот тебе пример скрипта, решающий задачу, о которой тут недавно
 спрашивал Захар. Берем файл, поворачиваем на 90 градусов, делаем либо
 постеризацию, либо индексирование. Сохраняем в двух разных форматах.
 
 ; File scan.scm
 
 (define (scan filename)
   (set! img (car (gimp-file-load 1 filename filename)))
   (gimp-image-undo-disable img)
   (set! drawable (car (gimp-image-active-drawable img)))
   (plug-in-rotate 1 img drawable 3 1)
 ; Постеризация, если надо
   (gimp-posterize drawable 16)
 ; Индексация, опять же, если надо
   (gimp-convert-indexed img 0 0 16 0 1 "")
   (set! outname (string-append "" filename ".png"))
   (file-png-save 1 img drawable outname outname 0 9 0 0 0 0 0)
   (set! outname (string-append "" filename ".gif"))
   (file-gif-save 1 img drawable outname outname 0 0 0 0 )
 ; Для визуального тестирования (на одиночном изображении)
 ;  (gimp-display-new img)
   (gimp-image-delete img)
 )
 
 ; Register script with script-fu.  
 (script-fu-register "scan"  
        "<Toolbox>/Xtns/Script-Fu/Dron/Scan" 
        "Process scanned images" 
        "Andrey Kiselev <dron@ak4719.spb.edu>" 
        "Andrey Kiselev" 
        "2003-04-05"
        ""
        SF-FILENAME _"Scanned image" "")
 
 Это кладется в $HOME/.gimp/scripts. Для пакетной обработки пускаем прямо
 из шелла:
 
 $ for i in *.ppm; do gimp -i -b "(scan \"$i\")" "(gimp-quit 0)"; done
 
 Само собой, тут есть еще куда руки приложить (правильно переписывать
 суффикс, например). Hо для начала, я думаю, сгодится. Hекоторые идеи
 будут более понятны.
 
 -- 
 Andrey V. Kiselev
 --- ifmail v.2.15dev5
  * Origin: Scientific Research Center for Ecological Safety Russia (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Gimp: пакетная обработка файлов   Vladimir Mosgalin   05 May 2003 13:58:20 
 Re: Gimp: пакетная обработка файлов   Vladimir Bormotov   06 May 2003 03:40:07 
 Re: Gimp: пакетная обработка файлов   Victor Wagner   06 May 2003 09:37:32 
 Re: Gimp: пакетная обработка файлов   Andrey Kiselev   06 May 2003 19:43:46 
Архивное /ru.linux/17229fdad213.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional