TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua

 找回密码
 新人加入
查看: 6232|回复: 4
打印 上一主题 下一主题

[完整特效] [SAI]037_sukitteiinayoOP [复制链接]

Administrator

Shanzhai Pro.

Rank: 7Rank: 7Rank: 7

跳转到指定楼层
楼主
发表于 2012-10-16 17:41:34 |只看该作者 |倒序浏览
預覽:http://pan.baidu.com/s/1hqqY9CC#dir/path=%2FSaiyakuFX_Preview

這特效相當簡單 比較適合新手學習
另外英文單詞拆回字母的方法 雖然比較蛋疼 還是可以參考下的
  1. from tcaxPy import *
  2. def tcaxPy_Main(_i, _j, _n, _BT, _ET, _SK, _KT, _X, _Y, _A, _TXT):

  3.     ASS_BUF  = []                # 保存ASS特效

  4.     ass_main(ASS_BUF, SubL(_BT+_SK-10, _BT+_SK+_KT,20), bord(0.5) +fad(350,0)+pos(_X,_Y), _TXT)

  5.     if _i == 2 or _i == 9:
  6.         ass_main(ASS_BUF, SubL(_BT+_SK+_KT, _ET+12,10),bord(0.5)+ pos(_X,_Y)+fad(0,450), _TXT)
  7.     elif _i == 0:
  8.         if _j==0:
  9.             global l
  10.             l = len(_TXT)
  11.             for k in range(l):
  12.                 ass_main(ASS_BUF, SubL(_BT+_SK+_KT, _ET+k*5,10),bord(0.5)+ pos(_X-_A/2 +_A/l/2+_A/l*k,_Y)+fad(0,150), _TXT[k])  
  13.         else:
  14.             ass_main(ASS_BUF, SubL(_BT+_SK+_KT, _ET+(l-1+_j)*5,10),bord(0.5)+ pos(_X,_Y)+fad(0,150), _TXT)        
  15.               
  16.     else:   
  17.         ass_main(ASS_BUF, SubL(_BT+_SK+_KT, _ET+_j*5,10),bord(0.5)+ pos(_X,_Y)+fad(0,150), _TXT)
  18.     return (ASS_BUF,None)
复制代码
1

查看全部评分

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

沙发
发表于 2012-10-16 23:07:38 |只看该作者
当教程例子很好用

Rank: 4

板凳
发表于 2012-10-16 23:27:22 |只看该作者
_TXT[k],原来还可以这样,之前一直傻逼用clip来拆单词

Rank: 4

地板
发表于 2012-10-17 14:03:56 |只看该作者
来学习了

Moderator

疯子

Rank: 5Rank: 5

5#
发表于 2012-10-20 22:38:37 |只看该作者
好几天没认真看邮箱,突然发现又有新的脚本看了啊,好教程

Rank: 4

6#
发表于 2022-1-25 14:55:50 |只看该作者
本帖最后由 Seekladoom 于 2022-1-25 19:41 编辑

TCAX 淡入淡出效果(含类似Aegisub的char修饰语文本拆分功能代码).rar (0 Bytes, 下载次数: 2398)

简化前:
  1. from tcaxPy import *

  2. def tcaxPy_Init():
  3.     pass

  4. def tcaxPy_Main(_i, _j, _n, _BT, _ET, _SK, _KT, _X, _Y, _A, _TXT):
  5.     ASS_BUF  = []                # 保存ASS特效

  6.     DY = _Y - 13

  7.     #tcc文件中为word模式时,将英文单词拆分为一个个字母的方法
  8.     if _j == 0:
  9.         global l
  10.         l = len(_TXT)
  11.         for k in range(l):
  12.             ass_main(ASS_BUF, SubL(_BT+_SK+_KT, _ET+k*5,10),bord(0.5)+ pos(_X-_A/2 +_A/l/2+_A/l*k,DY)+fad(200,200), _TXT[k])  
  13.     else:
  14.         ass_main(ASS_BUF, SubL(_BT+_SK+_KT, _ET+(l-1+_j)*5,10),bord(0.5)+ pos(_X,DY)+fad(200,200), _TXT)

  15.     return (ASS_BUF,None)
复制代码
简化后:
  1. from tcaxPy import *

  2. def tcaxPy_Init():
  3.     pass

  4. def tcaxPy_Main(_i, _j, _n, _BT, _ET, _SK, _KT, _X, _Y, _A, _TXT):
  5.     ASS_BUF  = []                # 保存ASS特效

  6.     DY = _Y - 13
  7.    
  8.     #tcc文件中为word模式时,将英文单词拆分为一个个字母的方法
  9.     global l
  10.     l = len(_TXT)
  11.     for k in range(l):
  12.         ass_main(ASS_BUF, SubL(_BT+_SK+_KT+k*5, _ET+(_j+k)*5,0), pos(_X-_A/2 + _A/l/2 + _A/l*k,DY) + bord(0.5) + fad(200,200), _TXT[k])  

  13.     return (ASS_BUF,None)
复制代码

Rank: 4

7#
发表于 2022-1-25 15:17:00 |只看该作者
本帖最后由 Seekladoom 于 2022-1-25 19:48 编辑
kk123456 发表于 2012-10-16 23:27
_TXT[k],原来还可以这样,之前一直傻逼用clip来拆单词
这里其实是通过人为构造全局变量的方式来实现文本拆分,刚好sai大这里写的就是相较于Aegisub而言缺少的类似char修饰语的功能代码。

现在来看的话,功能其实还不够完善啊。。。_(:з」∠)_
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-11-22 06:04

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH