{"repo":"matsuzakasatou01/geometry","free":true,"listed":false,"github":"https://github.com/matsuzakasatou01/geometry","clone":"git clone https://github.com/matsuzakasatou01/geometry.git","description":"用于制作Aegisub特效字幕的函数库、脚本以及我写过的一部分特效模板。","language":"Lua","stars":29,"topics":["aegisub","lua","library","script","template"],"license":"GPL-3.0","category":"workflow-automation","readme_excerpt":"有任何疑问先看README 这个仓库里存放的是用于Aegisub特效字幕制作的函数库、脚本，以及我写过的一部分模板。 函数库 图形库 geometry ，顾名思义就是「几何」。支持生成几何图形，还能对图形进行复杂的操作。从简单的矩形、菱形到复杂的数学公式、分子结构式，它都能绘制。在此基础上，它还额外提供了随机数类、颜色类等常用函数。 里面的函数大体上可以分为三类： 1. 功能型 2. 生成绘图型 3. 操作绘图型 每个函数的用法在手册中均有详细说明。 加载函数库的方法： 1. 把 geometry.lua 放进Aegisub中的 \\automation\\include 这个文件夹里，例如 C:\\Program Files (x86)\\Aegisub-3.3.3-win64\\automation\\include 。 2. 然后在同样是 include 这个文件夹里的 utils-auto4.lua 里加一句 require('geometry') 即可。 3. 如果你的Aeg是开启状态，在应用模板前，点击「自动化」→「自动化(A)…」→「重新扫描自动载入文件夹(S)」，重新加载函数库。 脚本 以下脚本主要适用范围：编写单首歌曲特效模板。 模板的一般结构（从上到下）： 1. code行 2. template行 3. karaoke行 4. fx行 对所有行生效 - 遍历统计各类行数 以遍历所有行的方法统计code行、template行、karaoke行、fx行、模板行（code行 + template行）的行数以及总行数，并输出日志。 - 逻辑统计各类行数 统计各类行数同上，但是即使是100万行也能瞬间出结果。 - 统计时间较短行 会将时间较短的行显示在日志下面，适用于单语双语两种情况。 - 选中奇数行或偶数行 - 执行自动化并统计耗时 依赖 kara-templater.lua 执行自动化，只有在可用 kara-templater.lua 执行自动化时才会变为启用状态，否则为禁用状态。 - 只留fx行 - 只留k值 会把字幕文件删成只有带k值的歌词。 - 只留歌词 - 重置karaoke行 会删除歌词中的标签、删除说话人、清空特效栏并取消注释。 - 获取行宽度 会在第一行前插入一行code行，定义所有样式的宽度表，命名规则如下。 所以你的样式名必须遵循Lua的变量命名规则：只由字母、数字和下划线组成，并且不能以数字开头。同时也不能有字母全转小写后相同的样式名，否则前一个样式的宽度表会被覆盖。 如果已经应用过脚本，会直接修改原行。 - 判断上下句时间是否连续 会在第一行前面插入一行code行，定义时间连续性判断表，0 为不连续，1 为连续。如果已经应用过脚本，会直接修改原行。所有样式的时间必须完全一致，建议先用「统计时间较短行」脚本检查。 对选中行生效 - 处理一行AI2ASS转出的字符串 把AI2ASS转出来的字符串粘贴到一行的文本区里，它会提取出color表和shape表。 - 勾选、取消注释 要搭配快捷键使用，不然反而麻烦。 - 绘图坐标取整 - 添加常用code行和template行 选中几行就会在选中的行上面添加几行你想添加的行。还可以添加AutoTags函数和Yutils的文字转绘图函数；添加all和fxgroup修饰语以及用于fxgroup判断的code行。脚本在添加行后会返回一个空表来改变选中行的逻辑，如果只添加一行的话，在添加完后会选中添加的行下面那一行（经测试3.3.3版本是这样，但是3.2.2版本会不选中任何行，其他版本未测试","default_branch":null,"files":null,"tree":[],"storefront":"/r/matsuzakasatou01","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/matsuzakasatou01/geometry/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}