问题标签 [script-fu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
318 浏览

scheme - 出现错误(:22091)>:参数 1 必须是:数字 - GIMP Script-fu

我有很多大约 100 张的图像,我需要使用缩放因子调整所有图像的大小。但是,当我运行脚本时,它向我显示以下错误

我不是 Script-Fu 方面的专家,所以我找不到任何可以帮助我的资源。以下是我的脚本,任何帮助将不胜感激。

0 投票
1 回答
166 浏览

scheme - 在 GIMP Scheme (script-Fu) 中提供有意义的默认目录名称

我是 Scheme 的新手(大约 1 周)。我正在注册一个脚本,其第二个参数是输出目录名称 - 通过 SF-DIRNAME。如何为不使用主机平台特定名称的前端小部件提供有意义的默认值?理想情况下,我希望它是 '/Users/[username]' - 或者如果可能的话 - 相当于 ${PWD} 的 Scheme。例如,当您创建新图像并第一次点击“保存”时,默认目录为“/Users/[username]/Documents” - 所以它必须是可能的。小部件如何知道您的用户主目录是什么?如何在注册声明的默认字段中引用它?最后,如果 Gimp 能“记住”那就太好了 上次选择哪个输出目录(在 Gimp 实例的生命周期范围内)并在脚本的第二次和后续调用中将其提供为默认值。我已经搜索了数百个其他人的脚本、Gimp 社区页面和 Scheme 文档,但从字面上看,我没有发现任何关于此要求的内容。提前致谢。维维

0 投票
1 回答
1123 浏览

scheme - gimp script-fu:画一条简单的线

我正在尝试使用 gimp 脚本绘制一条线。在以下脚本中:我创建了一个 512x512 的新图像并尝试绘制对角线 (0,0)->(512,512)。但图像 (tmp.xcf) 保持透明。

我究竟做错了什么 ?

用法:

0 投票
2 回答
1680 浏览

scheme - 如何使用 GIMP Script-Fu 导出平面图像

我有一个脚本应该可以展平、调整大小和导出初始图像。我被困在出口上。我正在使用文件-png-保存。我的参数似乎很好,除了第三个参数,它应该是一个可绘制的。

对于可绘制对象,我使用的是从 gimp-image-flatten 获得的扁平层。我收到回复说我的第三个论点无效。图层并不总是作为可绘制对象工作吗?我需要转换它吗?

0 投票
1 回答
1195 浏览

scheme - 在 script-fu (TinyScheme) 中连接字符串和变量

我正在尝试编写一个简单的脚本功能。我希望它filename作为参数并从文件夹(其路径将被硬编码)加载此文件。

基本代码:

这是我想在 ecmascript 语法中实现的目标:

我查看了 Scheme 文档,但没有看到变量+字符串连接的示例...

https://groups.csail.mit.edu/mac/ftpdir/scheme-7.4/doc-html/scheme_7.html#SEC61

提前致谢,祝您有美好的一天。

0 投票
1 回答
309 浏览

python - 如何制作这个 GIMP/ImageMagick 脚本?

我正在使用 GIMP 对许多图像进行简单但繁琐的操作,所以我想知道如何制作一个脚本来为我做这件事,或者找到一些更简单的方法来做这件事。

我导入了一个尺寸很大但大部分是正方形的图像文件,有时像 550x564、580x596 等,可能是 jpg、bmp 或 png,我想导出一个 192x192 的 PNG 文件,调整大小并在两端裁剪较长的维度,通常是垂直的,但也可以是水平的。

我对垂直比水平长的图像执行以下步骤:

  1. Image->Scale Image->Set Width to 192(锁定,所以高度会自动设置为 196)
  2. 单击比例
  3. 图片->画布大小->设置高度为192
  4. 点击中心
  5. 单击调整大小
  6. File->Export As->same file name but extension更改为.png,并从下拉列表中选择PNG图像(通常原始文件是jpg,但有时它们是png,因此必要时覆盖)
  7. 单击导出(单击加载默认值)
  8. 再次单击导出

如何在 GIMP 的 script-fu 或 python 中执行此操作?还是在 ImageMagick 中?或者有没有更好的方法为此制作宏?

0 投票
1 回答
462 浏览

python - Gimp python-fu:选择两层

我想为 gimp 创建一个 python-fu 脚本,用户可以在其中选择两层

每当我尝试这个时,我的表单只包含一个选项(我想它使用默认图层?)在此处输入图像描述

如何获得两个“选择”控件?我试图将 PF_DRAWABLE 更改为 PF_LAYER 但我仍然得到相同的结果。

0 投票
1 回答
1196 浏览

python - GIMP Script-fu/Python-fu:对所有图层应用滤镜或颜色?

好的,我对 GIMP 脚本/插件和 stackoverflow 还很陌生,所以对于我容易犯的任何错误,我提前道歉。

无论如何,我有 Windows 8、GIMP 2.8.22、GAP 和 animstacks 都是为了制作高质量的 gif。最近我注意到 GAP 帧缩放(plug-in-gap-anim-scale 或ANIM_SCALE)调整单个文件中每个帧/层的大小,我很好奇;使用 GAP 的定义参数或类似代码,是否可以自动化其他插件来转换每一层?例如,适用于文件中每一层的反锐化蒙版或级别的脚本或插件。

如果之前已经完成或者有更简单的方法可以实现我的目标(将滤镜和颜色应用于 gif 的每一帧),请告诉我!我几乎不知道如何阅读代码,但对我来说,将 GAP 的 .xcf 动画功能与过滤器或颜色脚本结合起来似乎是可以实现的。

PS 欢迎您在gimp-forum上回答我的问题,如果这不属于 python 标签,请告诉我!

6 月 29 日更新:我从教程中复制了足够多的内容,为我的锐化、亮度和颜色设置制作了一个工作脚本。您可以在 pastebin.com/PrXmS5u3 上看到模板代码,有人知道如何将其应用于所有层吗?

0 投票
1 回答
35 浏览

gimp - 问:编辑照片后导出 GIMP 脚本?

我想知道是否可以在 GIMP 中以交互方式编辑照片,然后导出脚本以以相同方式以编程方式转换一系列图像?

克里斯

0 投票
1 回答
5928 浏览

gimp - 使用 gimp 批量调整图像大小

我想调整目录中每个 jpg 的大小。

这是我找到的 gimp 脚本。对我来说看起来很明智。

我将其保存为C:\Users\rwb\.gimp-2.8\scripts\batch-resize.scm然后调用

"C:\Program Files\GIMP 2\bin\gimp-console-2.8.exe" -i -b '(batch-resize "*.JPG")' -b '(gimp-quit 0)'

输出是

此时它只是挂起。

我期待(gimp-message filename)打印文件名,但什么也没有!

我真的不知道这里发生了什么!你能提供什么建议吗?甚至打印文件名也是一个开始。