gpt4 book ai didi

gimp - Python-fu/gimpfu 参数 - "image"是什么意思?

转载 作者:行者123 更新时间:2023-12-01 09:19:53 37 4
gpt4 key购买 nike

我一直在尝试从 script-fu 切换到 python-fu,但我无法弄清楚我应该为“image”参数传递什么。在 script-fu 中它只是一个整数,但是当我将相同的整数放入 python-fu 时,它只是说它是错误的类型。与字符串和浮点数相同......我应该在这里放什么?文档只是说它采用的参数是“IMAGE”,但这是什么意思?我在哪里可以找到它?我如何得到它?

pdb.gimp_image_get_layers(image)

Here's a picture of the interpreter.

最佳答案

你传递一个 Image 对象 -
大多数在 script-fu 中只是整数的参数都不会被使用 - 取而代之的是,您必须传递一个实际的对象引用。你如何得到这些?

简单地说,所有 PDB 函数和方法都已经返回这些对象 - 而不是它们的数字 ID,就像它在 script-fu 中发生的那样。

因此,对于 Image,您可以获取 Image 作为 python-fu 函数的参数,或者调用 pdb.gimp_image_new。

如果您经常在交互式控制台上进行测试,那么您必须获取对事件图像的引用。在这种情况下,请调用gimp.image_list()获取包含当前打开图像的 Python 列表 - 此列表中索引 0 处的图像是屏幕上最右侧(最新)的打开图像 - 所以只需执行 image = gimp.image_list()[0]得到它的引用。

当你在它的时候,用 dir(image) 探索图像对象。您会发现它填充了属性和方法,这些属性和方法是其他难以键入的 pdb 调用的便捷快捷方式。例如,image.layers为您提供引用图像上所有层的 Python 列表(作为实际的层对象,而不是它们的 ID),image.width给你宽度,然后调用 img.new_layer()创建一个新层并将其添加到图像中 - 此调用具有可选参数来指定其名称、宽度、高度等。

作为最后的手段,gimp 上有保留的方法。可以将数字 ID 转换为实际对象的模块:'_id2display', '_id2drawable', '_id2image', '_id2vectors' - 你不应该需要使用这些。如果您发现自己需要在脚本主体中使用它们,由于某些 pdb 函数返回 ID 而不是对象,请填写 GIMP 的 bugzilla 上的错误报告。

关于gimp - Python-fu/gimpfu 参数 - "image"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35146891/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com