var source=[{"sTime":20,"id":1,"eTime":30,"content":"李雷,你最近好吗"},{"sTime":45,"id":2,"eTime":59,"content":"很好,你呢"},{"sTime":86,"id":3,"eTime":102,"content":"我也很好,谢谢"},{"sTime":115,"id":4,"eTime":124,"content":"不谢"}]
var data='';
if(source.length>0){
var add0=function(m){return m<10?'0'+m:m };
var secondFormat=function(second) {
var h = Math.floor(second/3600%24);
var m = Math.floor(second/60%60);
var s = Math.floor(second%60);
return add0(h)+":"+add0(m)+":"+add0(s);
}
source.forEach(function(e,i){
//生成字幕文件内容
data+=(i+1)+'\n'+
secondFormat(e.sTime)+',000 -->'+secondFormat(e.eTime)+',000\n'+
e.content+'\n\n';
})
//设置http头部返回信息
res.append('Content-Type', 'application/force-download;');
res.append( 'Content-Disposition', 'attachment; filename='+encodeURIComponent(ret.title)+'.srt')
//注意这里,node生成的data为utf格式,必须调用icnov-lite转换编码格式为unicode,否则srt文件加载出现乱码
var iconv = require('iconv-lite');
data=iconv.encode(data,'gb2312');
res.send(data);
}
node后台生成srt字幕文件
最新推荐文章于 2024-02-17 12:01:37 发布