Групповая обработка файлов в Gimp Script-Fu

Home Forums Разработка Разработка сценариев Групповая обработка файлов в Gimp Script-Fu

This topic contains 3 replies, has 3 voices, and was last updated by  spoilt_exile 7 years, 9 months ago.

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #838

    BigBoots
    Member

    Столкнулся с такой проблемой:

    Пишу для себя скрипт для ресайза картинок по разным алгоритмам на выбор.
    Открываю в нем файлы из списка file-glob и пытаюсь вызвать другие скрипты (Step-Resize из FX-Foundry и другой, самописанный), передавая им Image и Drawable. И на первом обращении в вызванном скрипте к Drawable, он выдает ошибку, якобы слой не существует и т.д.
    При этом после вылета скрипта картинки остаются висеть открытыми (без Display) и к слоям в них вполне можно обращаться.

    Кто-нибудь может подсказать, почему так происходит?

    #1407

    zend
    Participant

    Очень все не однозначно… Вот если бы вы показали участок кода, тогда можно было бы хоть за что то зацепиться.

    #1408

    BigBoots
    Member

    Ну, например вот так:

    (define (my_script filename)
    (let*
    (
    (img (car (gimp-file-load 1 filename filename)))
    (drawable (car (gimp-image-get-active-layer img)))
    )

    (script-fu-stair-resize RUN-NONINTERACTIVE img drawable 0 "800" 2)
    ;(script-fu-contrast RUN-NONINTERACTIVE img drawable 20 80)
    ;(script-fu-BSSS RUN-NONINTERACTIVE img drawable 5 0)
    (file-jpeg-save RUN-NONINTERACTIVE img drawable filename filename 0.98 0 0 0 "Resized" 1 0 0 2)
    (gimp-image-delete img)
    )
    )

    (script-fu-register
    "my_script"
    _"/Filters/My Script"
    "" "" "" "" ""
    SF-FILENAME "Файл" ""
    )
    #1409

    spoilt_exile
    Member

    Уберите RUN-NONINTERACTIVE из аргументов для запуска script-fu процедур. И никогда не ставьте этот аргмумент для запуска скриптов.

Viewing 4 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic.