【字幕】字幕特效入门
创始人
2025-01-07 17:35:15
0

前言

最近两周调研了一下字幕特效的底层程序逻辑,因为工作内容的原因,就分享几个自己找的链接具体细节就不分享了,CSDN也是我的个人笔记,只记录一些简单的内容用于后续自己方便查询,顺便帮助一下正在苦苦查阅资料入门的路人。总体来说先利用Aegisub学习ASS文件的字幕特效标签,然后借助脚本编写复杂的特效脚本,例如Python的pyonFX,以及c上位机python脚本的TCAX。Aegisub的lua脚本。如果是剪辑人员可以采用Pr+Ae以及剪映。本文章是程序化的字幕特效实现。
GITHUB pyonFX
Aegisub - 大神之路
关键字
字体添加背景

from pyonfx import * import numpy as np from PIL import Image import math  #https://stackoverflow.com/questions/50297272/how-to-draw-text-with-image-in-background  io = Ass("in.ass") meta, styles, lines = io.get_data() img_path = "d:\Download\CgdkT.png"     fill_image = Image.open(img_path) fill_image = fill_image.convert('RGBA') fill_np = np.array(fill_image) fill_width, fill_height = fill_image.size  def romaji(line, l, fill_np, fill_width, fill_height):     p_sh = Shape.rectangle()     for syl in Utils.all_non_empty(line.syls):          l.start_time = line.start_time         l.end_time = line.end_time          syl_width = syl.width         syl_height = syl.height         scale_x = fill_width / syl_width         scale_y = fill_height / syl_height          for pixel in Convert.text_to_pixels(syl):             x, y = math.floor(syl.left) + pixel.x, math.floor(syl.top) + pixel.y             print(x,y)             x2, y2 = x, y             alpha = ("\\alpha" + Convert.alpha_dec_to_ass(pixel.alpha) if pixel.alpha != 0 else "")               img_x = int(pixel.x * scale_x) % fill_width             img_y = int(pixel.y * scale_y) % fill_height               color = fill_np[img_y, img_x]             color_bgr = "&H{:02X}{:02X}{:02X}&".format(color[2], color[1], color[0])              l.text = f"{{\\p1\\an7\\1c{color_bgr}\\pos({x},{y}){alpha}}}{p_sh}"             io.write_line(l)  for line in lines:     if not line.comment:         romaji(line, line.copy(), fill_np, fill_width, fill_height)  io.save() io.open_aegisub() #ALKOON 

Tips:除了主颜色外,其它颜色设置为透明
在这里插入图片描述
基本字幕特效
lua语法
国语视界
TCAX
B站示例

相关内容

热门资讯

5分钟实锤!碧海麻将是不是有挂... 5分钟实锤!碧海麻将是不是有挂的,WPk一直真的是有挂,总结教程(有挂解说)1、这是跨平台的碧海麻将...
9分钟发现!微信天天斗地主修改... 9分钟发现!微信天天斗地主修改器,wEPoke果然是真的有挂,教你教程(有挂普及);1、很好的工具软...
8分钟普及!掌心麻将软挂神器,... 8分钟普及!掌心麻将软挂神器,governorofpoker3一贯真的有挂,我来教教你(有挂总结);...
六分钟攻略!桂林字牌是否有外挂... 六分钟攻略!桂林字牌是否有外挂,扑克之城切实真的有挂,插件教程(有挂黑科技)1、游戏颠覆性的策略玩法...
二分钟辅助挂!聚星扑克有假吗,... 二分钟辅助挂!聚星扑克有假吗,pokenow确实真的有挂,细节揭秘(有挂详情)1、金币登录送、破产送...
5分钟攻略!金州水鱼取胜小,w... 5分钟攻略!金州水鱼取胜小,wepoker果然有挂,解密教程(有挂黑科技)1、金州水鱼取胜小透视辅助...
7分钟辅助挂!微信雀神小程序可... 7分钟辅助挂!微信雀神小程序可以作假吗,聚星扑克一贯有挂,安装教程(有挂秘籍)1、在微信雀神小程序可...
3分钟科普!手机山水麻将助赢神... 3分钟科普!手机山水麻将助赢神器,wepower德州好像存在有挂,插件教程(有挂ai代打)小薇(透视...
七分钟了解!波特互娱十三水有挂... 七分钟了解!波特互娱十三水有挂吗,aapOKER都是真的是有挂,教你攻略(有挂解说)波特互娱十三水有...
五分钟辅助!决战十三水辅助器,... 五分钟辅助!决战十三水辅助器,wepokE确实真的有挂,必备教程(有挂方法)决战十三水辅助器辅助器中...