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

标题: 【新手】求助这个代码中有多少错误,求修改建议 [打印本页]

作者: 爱雪音MiKu    时间: 2012-9-9 13:06:09     标题: 【新手】求助这个代码中有多少错误,求修改建议

本帖最后由 爱雪音MiKu 于 2012-9-9 20:44 编辑

from tcaxPy import *


def tcaxPy_Init():
    global _FD
    global _Fs
    global Fs1
    global Fs2
    global Fs3
    _FD = 1000 / GetVal(val_FXFPS)
    _Fs = GetVal(val_FontSize)
    Fs1 = _Fs
    Fs2 = 0
    Fs3 = _Fs+3



def tcaxPy_Fin():
    pass


def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):

    ASS_BUF  = []        # used for saving ASS FX lines
    TCAS_BUF = []        # used for saving TCAS FX raw data

    ts = _start + _elapk - 1 * _FD / 10
    te = _start + _elapk + _k
   
    EFT1 = alpha1(255) + t(0,5 * _k, bord(4) + blur(2.5) + fs(Fs3) +  alphal(255)) + t (5 * _k, 5 *_k,

alpha3(255))
    EFT2 = t(5*_k,9*_k,bord(4)+blur(2.5)+fs(Fs2) +alpha3(0))+t(9*_k,9*_k,alpha3(0))
    EFT = pos(_x,_y)+EFT1+EFT2
    ass_main(ASS_BUF, SubL(ts,te,10),EFT, _txt)


    return (ASS_BUF, TCAS_BUF)

前天刚学的TCAX。。。代码写了错误好多(T.T)

作者: kk123456    时间: 2012-9-9 13:18:16

运行一下,提示哪错就改哪呗
作者: 爱雪音MiKu    时间: 2012-9-9 13:21:22

J)BL6W]M_3RZZVT`ELJ)RD6.jpg

图片附件: J)BL6W]M_3RZZVT`ELJ)RD6.jpg (2012-9-9 13:22:07, 77.49 KB) / 下载次数 2671
http://tcax.org/forum.php?mod=attachment&aid=OTQ2fDNkMjhjNmIyfDE3MzIyMjUxMzd8MHww


作者: 爱雪音MiKu    时间: 2012-9-9 13:21:37

。。。。图片发不上来0.0
作者: 爱雪音MiKu    时间: 2012-9-9 13:23:14

之前已经解决的好几个错误。。。这次不会了(T.T)
作者: 我们的夏天    时间: 2012-9-9 13:28:21

爱雪音MiKu 发表于 2012-9-9 13:21

30行,没有"alphal"这种函数。
也许你想表达的是alpha1?
作者: 爱雪音MiKu    时间: 2012-9-9 13:31:06

我们的夏天 发表于 2012-9-9 13:28
30行,没有"alphal"这种函数。
也许你想表达的是alpha1?

呜咕。。透明的函数是什么。。偶想做透明的。。
作者: 我们的夏天    时间: 2012-9-9 13:33:59

爱雪音MiKu 发表于 2012-9-9 13:31
呜咕。。透明的函数是什么。。偶想做透明的。。

是这个,但是你貌似打成alphaL了
alpha1表示控制第一颜色透明度,以此类推。直接打alpha则控制全部4种透明度。
作者: 爱雪音MiKu    时间: 2012-9-9 13:36:41

我们的夏天 发表于 2012-9-9 13:33
是这个,但是你貌似打成alphaL了
alpha1表示控制第一颜色透明度,以此类推。直接打alpha则控制全部4种透 ...

呜咕。。明白。。那么这个代码偶想做出。。放大。。然后缩小消失的特效。。还需要改什么代码吗?
作者: 我们的夏天    时间: 2012-9-9 13:39:24

用t函数。
比如fs(35) + t(fs(0))表示在整句时间内将35号字缩小为0号字
作者: 我们的夏天    时间: 2012-9-9 13:41:13

参考内置特效脚本。
eft_006.py - 出现一个较大的文字, 然后逐渐缩小, 带有边框变化, 使用颜色c2

作者: 爱雪音MiKu    时间: 2012-9-9 13:41:40

我们的夏天 发表于 2012-9-9 13:39
用t函数。
比如fs(35) + t(fs(0))表示在整句时间内将35号字缩小为0号字

呜咕。。V。。那么放大缩小就。。fs(35) + t(fs(40)) + (fs(0))..这样的吗
作者: 我们的夏天    时间: 2012-9-9 13:45:42

本帖最后由 我们的夏天 于 2012-9-9 14:08 编辑

不是。你写的最后一个fs()不在t函数内,是无效的。
  1. fs(35) + t(0, 200, fs(40)) + t(200, 800, fs(0))
复制代码
表示0至200ms内放大字号至40,200至800ms内字号缩小为0。

建议学习一下11楼提到的脚本,然后模仿着写。
作者: 爱雪音MiKu    时间: 2012-9-9 13:49:23

我们的夏天 发表于 2012-9-9 13:45
不是。你写的最后一个fs()不在t函数内,是无效的。
fs(35) + t(0, 200, fs(40)) + t(200, 800, fs(0))表示0 ...

呜咕。。V。。这个是固定特效的时间的。。有办法让这个特效在K值里完成的那种吗0.0
作者: milkyjing    时间: 2012-9-9 14:05:35

建议: 贴代码用[code]你的代码[/code]效果举例:

http://www.tcax.org/forum.php?mod=viewthread&tid=506
作者: 爱雪音MiKu    时间: 2012-9-9 14:29:09

milkyjing 发表于 2012-9-9 14:05
建议: 贴代码用效果举例:

http://www.tcax.org/forum.php?mod=viewthread&tid=506

呜咕。。code是什么?
作者: milkyjing    时间: 2012-9-9 14:40:53

爱雪音MiKu 发表于 2012-9-9 14:29
呜咕。。code是什么?

一个discuz论坛标签, 点回复的时候, 那个窗口上面不是有一排图标么? 最右边那个笑脸的旁边有一个<>图标, 就是code标签了, 点开, 复制代码到输入框即可
作者: 爱雪音MiKu    时间: 2012-9-9 14:50:24

milkyjing 发表于 2012-9-9 14:40
一个discuz论坛标签, 点回复的时候, 那个窗口上面不是有一排图标么? 最右边那个笑脸的旁边有一个图标, 就 ...
  1. from tcaxPy import *


  2. def tcaxPy_Init():
  3.     global _FD
  4.     global _Fs
  5.     global Fs1
  6.     global Fs2
  7.     global Fs3
  8.     _FD = 1000 / GetVal(val_FXFPS)
  9.     _Fs = GetVal(val_FontSize)
  10.     Fs1 = _Fs
  11.     Fs2 = 0
  12.     Fs3 = _Fs+3



  13. def tcaxPy_Fin():
  14.     pass


  15. def tcaxPy_Main(_i, _j, _n, _start, _end, _elapk, _k, _x, _y, _a, _txt):

  16.     ASS_BUF  = []        # used for saving ASS FX lines
  17.     TCAS_BUF = []        # used for saving TCAS FX raw data

  18.     ts = _start + _elapk - 1 * _FD / 10
  19.     te = _start + _elapk + _k
  20.    
  21.     EFT1 = alpha(255) +fs(_Fs)+ t(0,5 * _k, bord(4) + blur(2.5) + fs(Fs3) +  alpha(255)) + t (5 * _k, 5 *_k, alpha3(255))
  22.     EFT2 =  t(5*_k,9*_k,bord(4)+blur(2.5)+fs(Fs2) +alpha3(0))+t(9*_k,9*_k,alpha(0))
  23.     EFT = pos(_x,_y)+EFT1+EFT2
  24.     ass_main(ASS_BUF, SubL(ts,te,10),EFT, _txt)


  25.     return (ASS_BUF, TCAS_BUF)
复制代码
这样吗
作者: milkyjing    时间: 2012-9-9 14:54:44

对... 也可以手动输[code...
作者: 爱雪音MiKu    时间: 2012-9-9 14:55:52

milkyjing 发表于 2012-9-9 14:54
对... 也可以手动输[code...

呜咕。。明白 。。谢谢建议
作者: 渣渣疯子    时间: 2012-9-9 19:07:52

爱雪音MiKu 发表于 2012-9-9 13:49
呜咕。。V。。这个是固定特效的时间的。。有办法让这个特效在K值里完成的那种吗0.0 ...

K值内也可以啊t(0,_k * 5,fs(40))+t(_k * 5,_k * 10,fs(20))
作者: 爱雪音MiKu    时间: 2012-9-9 20:02:16

渣渣疯子 发表于 2012-9-9 19:07
K值内也可以啊t(0,_k * 5,fs(40))+t(_k * 5,_k * 10,fs(20))

呜咕。。在TCAX里。。一个K值被分为10吗。。0,_k*5。。这句的意思就是K值的1/2的时间放大到40吗?
作者: 渣渣疯子    时间: 2012-9-9 20:13:24

爱雪音MiKu 发表于 2012-9-9 20:02
呜咕。。在TCAX里。。一个K值被分为10吗。。0,_k*5。。这句的意思就是K值的1/2的时间放大到40吗? ...

tcax里的时间单位是10毫秒,但是t后面的时间单位是1毫秒,_k在里面的话,就是K值总时间的十分之一,所以加个系数...这样解释能理解么。。。?我以前也被这时间单位绕过...
作者: 爱雪音MiKu    时间: 2012-9-9 20:15:15

渣渣疯子 发表于 2012-9-9 20:13
tcax里的时间单位是10毫秒,但是t后面的时间单位是1毫秒,_k在里面的话,就是K值总时间的十分之一,所以 ...

呜咕。。V。。明白了。。感谢




欢迎光临 TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua (http://tcax.org/) Powered by Discuz! X2