Windows系统下GIMP Script-Fu命令行调用无输出问题求助
GIMP Script-Fu脚本无法正常执行问题
环境信息
- 系统:Windows 10 Pro 21H2(19044.1826)、Windows 11 Pro 21H2(22000.795)
- GIMP版本:2.10.32(Revision 1)
问题详情
在上述环境中,所有Script-Fu脚本均无法正常工作。我编写了一个极简测试脚本,用于读取图片文件并无修改重命名保存,脚本代码如下:
(define (mytest in_filename out_filename) (let* ( (image (car (gimp-file-load RUN-NONINTERACTIVE in_filename in_filename))) (drawable (car (gimp-image-get-active-layer image)))) (gimp-file-save RUN-NONINTERACTIVE image drawable out_filename out_filename) (gimp-image-delete image) ) )
测试时添加了script-fu-register代码块,可在GIMP程序浏览器中确认脚本已被检测且无错误加载,说明脚本位置及选项中的脚本路径设置正确:
(script-fu-register "mytest" "" _"Test" "" "" "2022/07/16" "" SF-IMAGE "Image" 0 SF-DRAWABLE "Drawable" 0 )
进入包含源图片p.jpeg的目录(%userprofile%\pictures),执行以下命令:
"C:\Program Files\GIMP 2\bin\gimp-2.10.exe" -idf -b '(mytest p.jpeg p1.jpeg)' -b '(gimp-quit 0)' --verbose
预期在同目录生成p.jpeg的副本p1.jpeg,但实际仅弹出协议窗口显示命令执行成功,无输出文件生成;即使拼写错误函数名或传入不存在的文件名,也没有任何报错提示。
已尝试的解决方法
- 重装GIMP
- 更换系统环境测试
- 更换图片存储目录
- 更换图片格式及文件
- 使用管理员/普通用户权限运行命令行
- 更换测试脚本
- 添加/移除script-fu-register块
- 带/不带引号及使用完整路径传入文件参数
- 直接在命令行执行完整脚本逻辑
内容的提问来源于stack exchange,提问作者jamacoe
相关产品推荐
相关产品推荐

