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

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

[已解决] 【新手】求助这个代码中有多少错误,求修改建议 [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 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)

Rank: 4

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

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

Moderator

疯子

Rank: 5Rank: 5

23#
发表于 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值总时间的十分之一,所以加个系数...这样解释能理解么。。。?我以前也被这时间单位绕过...

Rank: 4

22#
发表于 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吗?

Moderator

疯子

Rank: 5Rank: 5

21#
发表于 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))

Rank: 4

20#
发表于 2012-9-9 14:55:52 |只看该作者
milkyjing 发表于 2012-9-9 14:54
对... 也可以手动输[code...

呜咕。。明白 。。谢谢建议

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

19#
发表于 2012-9-9 14:54:44 |只看该作者
对... 也可以手动输[code...

Rank: 4

18#
发表于 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)
复制代码
这样吗

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

17#
发表于 2012-9-9 14:40:53 |只看该作者
爱雪音MiKu 发表于 2012-9-9 14:29
呜咕。。code是什么?

一个discuz论坛标签, 点回复的时候, 那个窗口上面不是有一排图标么? 最右边那个笑脸的旁边有一个<>图标, 就是code标签了, 点开, 复制代码到输入框即可

Rank: 4

16#
发表于 2012-9-9 14:29:09 |只看该作者
milkyjing 发表于 2012-9-9 14:05
建议: 贴代码用效果举例:

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

呜咕。。code是什么?

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

15#
发表于 2012-9-9 14:05:35 |只看该作者
建议: 贴代码用[code]你的代码[/code]效果举例:

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

Rank: 4

14#
发表于 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

Rank: 5Rank: 5

13#
发表于 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楼提到的脚本,然后模仿着写。

Rank: 4

12#
发表于 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))..这样的吗

Rank: 5Rank: 5

11#
发表于 2012-9-9 13:41:13 |只看该作者
参考内置特效脚本。
eft_006.py - 出现一个较大的文字, 然后逐渐缩小, 带有边框变化, 使用颜色c2

Rank: 5Rank: 5

10#
发表于 2012-9-9 13:39:24 |只看该作者
用t函数。
比如fs(35) + t(fs(0))表示在整句时间内将35号字缩小为0号字

Rank: 4

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

呜咕。。明白。。那么这个代码偶想做出。。放大。。然后缩小消失的特效。。还需要改什么代码吗?

Rank: 5Rank: 5

8#
发表于 2012-9-9 13:33:59 |只看该作者
爱雪音MiKu 发表于 2012-9-9 13:31
呜咕。。透明的函数是什么。。偶想做透明的。。

是这个,但是你貌似打成alphaL了
alpha1表示控制第一颜色透明度,以此类推。直接打alpha则控制全部4种透明度。

Rank: 4

7#
发表于 2012-9-9 13:31:06 |只看该作者
我们的夏天 发表于 2012-9-9 13:28
30行,没有"alphal"这种函数。
也许你想表达的是alpha1?

呜咕。。透明的函数是什么。。偶想做透明的。。

Rank: 5Rank: 5

6#
发表于 2012-9-9 13:28:21 |只看该作者
爱雪音MiKu 发表于 2012-9-9 13:21

30行,没有"alphal"这种函数。
也许你想表达的是alpha1?
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-11-22 11:28

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH