首页 > 其他分享 >gimp脚本.scm一些心得记录

gimp脚本.scm一些心得记录

时间:2022-11-04 09:33:24浏览次数:43  
标签:scm 脚本 菜单 fu test 心得 scirpt gimp


gimp的脚本scm一些心得记录

GIMP 2.10 图像处理脚本推荐
GIMP使用脚本使得图像处理的功能更加强大,对于一些常见操作可以通过脚本快速实现。GIMP也出来2.10版本了,比前面的2.8相比在界面和功能上都更加强大,本文推荐的插件是基于GIMP2.10的,不适用2.8,2.6版本。

gimp支持python-fu和scirpt-fu两种脚本方法,python-fu顾名思义就是用python来写;script-fu,这是一个lisp的方言sch
me。这两天用的就是scheme,所以就讲它了。

(1)脚本的下载
在下列网站下载插件脚本:
https://www.gimphelp.org/script210.html#downloads
https://www.freesion.com/article/6164276062/

(2)脚本的注册

在gimp的scripts目录下(/usr/share/gimp/2.0/scripts)新建.scm后缀的文本文件。
要注意的是不同gimp版本,可能scripts目录的位置会不一样。常见的,gimp2.8是在~/.gimp-2.8/scirpts/,而gimp2.10则是在/usr/share/gimp/2.0/scripts)或者~/.config/GIMP/2.10/scripts/这个目录下。

.scm后缀的文本文件代码格式如下:

(define
(scirpt-test ;函数名
;接下来都是变量名,要和scirpt-fu-regiser里面的变量一样(命名和顺序),变量才会正常传递
image
drawable
)
)
(scirpt-fu-register
"scirpt-test" ;函数名,scirpt-fu官方建议都以"-"连接单词这种风格命名函数
"菜单abc" ;菜单标签,这是会显示在菜单上的标签
"脚本描述" ;描述这个脚本的功能作用之类的,可以在方法浏览器查看。
"作者"
"copyright 2020巴拉巴拉" ;版权信息,也是描述性文字。
"2020/4/1" ;日期
"" ;这个我还没搞没明白它的功用,但不能少。
;接下来是些变量和默认值了,这些参数名要和函数定义里面的变量名一样,顺序也不能乱
; 参数类型 参数名 默认值
SF-IMAGE "image" 0 ;如果用了这个参数,这个必须是第一个参数。传递图片给脚本,默认是当前并正在工作的图片
SF-DRAWABLE "drawable" 0 ;如果有用SF-IMAGE,这个也必须启用,并且必须放是第二个参数。
SF-VALUE "a" "0" ;值,可以是int或string,但默认值要求必须是string.传递的若是数字,如"123",会自动识别成相应的数字类型,如"int"
SF-STRING "b" "sadf" ;字符串参数

;还有其他类型变量,可以自行查阅官方文档
)
;下面是在菜单中注册,注册成功可在菜单上找到这个脚本。
(script-fu-menu-register "script-test" "<Image>/File/test")
;问题:
当<Image>/中文菜单/test,时不能显示中文,而且保存时,会自动删除后面的字符。不知道是什么原因,造成对中文菜单不支持。

;"<Image>/File/test"是菜单路径,表示这个最终会注册到"文件"-"test"这个菜单下。
;<Image>这是必须的不可更改的,可以理解为根菜单,后面的/File/test可以是已存在的菜单,或不存在的菜单.不存在的菜单会自动创建路径。
;有些单词因为汉化原因会自动转成中文,如“file”会自动变为“文件”,但你也可以直接输入中文路径如,"<Image>/脚本/测试",则会在"脚本"-"测试"菜单中,查看到"菜单abc"
一些易忽略的点
gimp内部方法,返回的都是list,即使值只有一个。所以,使用时,可能要用car之类的方法去抽取元素。

 

 

标签:scm,脚本,菜单,fu,test,心得,scirpt,gimp
From: https://www.cnblogs.com/kuangcc/p/16856630.html

相关文章

  • 数据库设计心得——by你说的都队
     项目介绍我们的项目是基于跨层优化的视频传输系统,在dash架构的基础上实现视频的流畅播放,构建一个供用户交流的视频分享平台。设计思路我们小组根据前期的需求文档和......
  • 数据库设计心得-4班-软小五比奇堡乐园队
    小组名软小五比奇堡乐园项目名软件工程导论实践教学管理平台小组成员张凯航(PM)、李林畅、李佳豪、牟洺楷、张恩硕数据库简介数据库(DataBase,DB):指长期保存在计算机的存......
  • MyBatis初学心得和收获总结
    首先MyBatis是一个优秀的大型持久层框架,用于简化JDBC的开发,javaee分为表现层、业务层和持久层三层架构。框架是一个半成品软件。利用MyBatis可以简化JDBC的书写,在后续的开......
  • 数据库设计心得-4班ok_fine_goodnight组
    数据库系统设计心得_ok_fine_goodnight引言首先为什么要设计数据库:当数据库比较复杂(如数据量大,表较多,业务关系复杂)时,我们需要先设计数据库.一个好的数据库设计能保......
  • 网友心得—运行jeecgboot-vue3项目可能出现的问题
    运行jeecgboot-vue3项目可能出现的问题1.执行pnpminstall的时候报错ERR_PNPM_INVALID_OVERRIDE_SELECTOR Cannotparsethe"//"selectorintheoverrides​ 翻......
  • 2022.10代码大全阅读心得1
    第11章:变量名的力量问题:怎样给一个变量命名?长名字还是短名字?命名的最佳实践有哪些?有哪些常见的命名方法?在命名中应该要避免的东西有哪些?怎样给一个变量命名?通......
  • 2022.10代码大全阅读心得2
    第十四章组织直线型代码14.1必须有明确顺序的代码对于具有明显的顺序关系的代码,应该使用顺序结构。对于隐含的顺序关系,应该:去除不合理的依赖关系(如不应该在Calculat......
  • 第六章学习心得
    知识点归纳信号和信号处理;信号和中断的统一处理将信号视为进程中断,将进程从正常执行转移到信号处理信号的来源,包括来自硬件、异常和其他进程的信号信号在Unix/Linux......
  • 赛后心得
    这一打比赛属实艰难啊被疫情整的心烦。但收获也不小,正好zy让我们写心得,那我就写一下吧!毕竟是第一次参加CSP_J,当时还蛮紧张的。T1:  第一时间想到快速幂,脑子卡住了,想......
  • 10月心得体会分享
    这个月继续学习了Linux,学到了磁盘分区,挂载挂载是Linux文件系统中很重要的概念,除了根文件系统,其他所有文件系统都要先挂载到根文件系统中的某个目录之后才能访问。Linux无......