Как скопировать направляющие линии в The Gimp?

StackOverflow https://stackoverflow.com/questions/616644

  •  03-07-2019
  •  | 
  •  

Вопрос

Можно ли скопировать направляющие линии из одного изображения в другое?
Я нуждаюсь в этом, потому что у меня есть несколько изображений, которые нуждаются в одной и той же композиции, поэтому я хочу использовать для этого контрольные линии.
Нет возможности выбрать & amp; скопируйте направляющую линию, поэтому я должен добавить их вручную.

Было бы неплохо, если бы был небольшой скрипт script-fu.

Хорошо, есть несколько интересных функций, которые я нашел:

(gimp-image-find-next-guide image index)
(gimp_image_add_hguide image xposition)
(gimp_image_add_vguide image yposition)
(gimp_image_get_guide_orientation image guide)
(gimp_image_get_guide_position image guide)

Заранее спасибо!

Это было полезно?

Решение

Я бы очень хотел вам помочь, но я не уверен, что понимаю, что вы пытаетесь сделать. Не могли бы вы отредактировать вопрос, чтобы предоставить более подробную информацию?

На предположение (в ожидании дополнительной информации) вы ищете что-то подобное?

guide = 0
while guide = gimp_image_find_next_guide (image_1,guide) != 0
     position = gimp_image_get_guide_position (image_1,guide)
     if gimp_image_get_guide_orientation (image_1,guide) == 0
          gimp_image_add_hguide (image_2,position)
        else
          gimp_image_add_vguide (image_2,position)

Обратите внимание, что это псевдокод, поскольку указанные вами функции, по-видимому, являются частью API, который использует синтаксис, отличный от сценария схемы-fu:

Но первый вопрос - что вы пытаетесь выполнить? - после этого мы можем позаботиться о деталях того, как это сделать.

Другие советы

Давным-давно желая изучить Gimp Scripts (PythonFu) и требуя этой функциональности, я использовал псевдокод, предоставляемый MarkusQ, и это удобное руководство https://jacksonbates.wordpress.com/python-fu-gimp-scripting-tutorial-pages/ для создания сценария для копирования рекомендаций от одного изображения к другому.

#!/usr/bin/env python

from gimpfu import *

def CopyGuidelines(image_1, drawable, image_2):     
    guide = pdb.gimp_image_find_next_guide(image_1, 0)
    while guide != 0 :
        position = pdb.gimp_image_get_guide_position (image_1,guide)        
        if pdb.gimp_image_get_guide_orientation (image_1,guide) == 0:
            pdb.gimp_image_add_hguide (image_2,position)
        else:
            pdb.gimp_image_add_vguide (image_2,position)
        guide = pdb.gimp_image_find_next_guide (image_1,guide)      

register(
    "python-fu-CopyGuidelines",
    "Copy Guidelines",
    "Copy Guidelines from one image to another",
    "Anthony", "JustAGuyCoding", "2017",
    "Copy Guidelines",
    "", # type of image it works on (*, RGB, RGB*, RGBA, GRAY etc...)
    [
        (PF_IMAGE, "image_1", "takes current image", None),
        (PF_DRAWABLE, "drawable", "Input layer", None),
        (PF_IMAGE, "image_2", "takes other image", None)
    ],
    [],
    CopyGuidelines, menu="<Image>/Tools")  

main()

Вам необходимо скопировать его в файл CopyGuidelines.py и поместить его в каталог подключаемых модулей Gimp (см. «Настройки»> «Папки») и перезапустить Gimp, чтобы увидеть параметр CopyGuideline в разделе «Инструменты». Затем откройте два изображения, выберите одно с Руководствами и выберите CopyGuidelines для запуска сценария.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top