1

是否可以将引导线从一张图像复制到另一张图像?
我需要这个,因为我有几张图像需要完全相同的构图,所以我想为此使用指南。
没有选择和复制指南的选项,所以我必须手动添加它们。

如果有一个小的 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)

提前致谢!

4

2 回答 2

5

我真的很想帮助你,但我不确定我是否理解你想要做什么。您能否编辑问题以提供更多详细信息?

猜测一下(等待更多信息)你在寻找这样的东西吗?

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 的一部分,该 API 使用的语法不是 scheme-ish 脚本 fu。

但第一个问题是你想要完成什么?-- 之后我们可以担心如何做的细节。

于 2009-03-13T01:09:49.703 回答
1

一直想学习 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 的插件目录(请参阅 Preferences > Folders )并重新启动 Gimp 以查看 Tools 下的 CopyGuideline 选项。然后打开两张图片,选择带有指南的一张并选择 CopyGuidelines 以运行脚本。

于 2017-03-06T17:17:04.457 回答