发布 JianyingSRT 1.7.1 及 Newtonsoft.Json 增加追加JSON数据遇到的坑

主要更新内容:

增加导入外部srt字幕

注意:
只会读取外部SRT第一行的字幕(如果有多行的话);
剪映页面删除轨道数据可能会有残留依然占用一条轨道导致本工具误差;
如果有需要同样也可以对字体大小、字号、样式、位置等进行预设;

《发布 JianyingSRT 1.7.1 及 Newtonsoft.Json 增加追加JSON数据遇到的坑》

《发布 JianyingSRT 1.7.1 及 Newtonsoft.Json 增加追加JSON数据遇到的坑》

《发布 JianyingSRT 1.7.1 及 Newtonsoft.Json 增加追加JSON数据遇到的坑》

>> subtitle

颜色较深,为暗红棕色的轨道。

  • 如果剪映当前已经存在字幕,必须打开剪映编辑删除原来字幕,否则如果时间线重叠的话字幕也会重叠。
  • 编辑某一条文本默认同步到整条字幕轨道(可调只对选中的一句字幕生效)
  • 目前看只能是剪映自动生成字幕才会产生此类型

>> text

颜色为红棕色的轨道,其他与以上相对。

《发布 JianyingSRT 1.7.1 及 Newtonsoft.Json 增加追加JSON数据遇到的坑》

剪映最新的1.6.0版本改为以上样式,不再以颜色区分,而是在字幕前加个“T” 区别。

下载:OneDrive | 备用-1 | 备用-2 (访问密码:5678)




撸代码过程碰到拿到了点困难。

《发布 JianyingSRT 1.7.1 及 Newtonsoft.Json 增加追加JSON数据遇到的坑》

插入如上灰色部分。

以下只是列出关键问题,实际要更复杂些。

JyCusZiMuTrack JYTrack = new JyCusZiMuTrack();
JYTrack.flag = 0;
JYTrack.id = "ABCDEEFG";
JYTrack.type = "text";
JYTrack.segments = null;
(JArray)objD["tracks"].Add(JToken.FromObject(JYTrack)); //关键坑
class JyCusZiMuTrack
{
public int flag { set; get; }
public string id { set; get; }
public List<JyCusZiMuTrackSegment> segments { set; get; }
public string type { set; get; }
}

如果没有 JToken.FromObject() 就报错。

本来在微信推送本工具1.7.0版本优先体验,但使用 .NET Reactor 混淆居然出现软件功能异常,无法正确写入数据导致导入srt失败!

全部为采集文章,文中的 联系方式 均不是 本人 的!

发表评论