JavaScript - 正在生成 .SRT 文件
JavaScript - Generating .SRT file
我制作了一个脚本来在我的浏览器中编辑我的字幕。不是在文本编辑器等中。所以我做了所有事情,我正处于最后阶段,当我单击按钮 'save' 下载我编辑的版本时,我的浏览器会按预期自动下载 SRT 文件,但是副标题显示为 'Little Square Boxes' 而不是我编写和编辑的阿拉伯文文本..
我在 VLC 视频播放器上看到的内容:
我的 SRT 文件中的内容:
1
00:00:05,796 --> 00:00:06,888
چیرۆكم پێ بڵێ
2
00:00:07,048 --> 00:00:08,265
چیرۆكم پێ بڵێ
3
00:00:08,424 --> 00:00:09,846
چیرۆكم پێ بڵێ
用于生成字幕编辑版本的代码:
// Function to download data to a file
function download(data, filename, type) {
var file = new Blob([data], {type: type});
if (window.navigator.msSaveOrOpenBlob) // IE10+
window.navigator.msSaveOrOpenBlob(file, filename);
else { // Others
var a = document.createElement("a"),
url = URL.createObjectURL(file);
a.href = url;
a.download = filename;
document.body.appendChild(a);
a.click();
setTimeout(function() {
document.body.removeChild(a);
window.URL.revokeObjectURL(url);
}, 0);
}
}
然后:
download(all_str,"anyth.srt","text/html")
字符串all_str
是我新编辑的字幕版本..全部用换行符分隔,就像文本编辑器版本
该字幕适用于英语和阿拉伯语以外的其他语言
我为解决这个问题所做的事情:
- 已将
text/html
更改为 text/plain
、text/plain utf-8
和 text/plain charset=utf-8
,但没有用
- 已将 VLC 播放器的编码类型从通用更改为 utf8,但没有用
我认为这与编码类型有关,我错过或不知道的事情?请填写
您做的一切都正确,但是我们当前的大多数操作系统 运行 Windows-1256..
我已经用这个 unicode 测试了你的代码,它适用于阿拉伯语和波斯语:
只需更改:
text/plain;charset=windows-1256
我制作了一个脚本来在我的浏览器中编辑我的字幕。不是在文本编辑器等中。所以我做了所有事情,我正处于最后阶段,当我单击按钮 'save' 下载我编辑的版本时,我的浏览器会按预期自动下载 SRT 文件,但是副标题显示为 'Little Square Boxes' 而不是我编写和编辑的阿拉伯文文本..
我在 VLC 视频播放器上看到的内容:
我的 SRT 文件中的内容:
1
00:00:05,796 --> 00:00:06,888
چیرۆكم پێ بڵێ
2
00:00:07,048 --> 00:00:08,265
چیرۆكم پێ بڵێ
3
00:00:08,424 --> 00:00:09,846
چیرۆكم پێ بڵێ
用于生成字幕编辑版本的代码:
// Function to download data to a file
function download(data, filename, type) {
var file = new Blob([data], {type: type});
if (window.navigator.msSaveOrOpenBlob) // IE10+
window.navigator.msSaveOrOpenBlob(file, filename);
else { // Others
var a = document.createElement("a"),
url = URL.createObjectURL(file);
a.href = url;
a.download = filename;
document.body.appendChild(a);
a.click();
setTimeout(function() {
document.body.removeChild(a);
window.URL.revokeObjectURL(url);
}, 0);
}
}
然后:
download(all_str,"anyth.srt","text/html")
字符串all_str
是我新编辑的字幕版本..全部用换行符分隔,就像文本编辑器版本
该字幕适用于英语和阿拉伯语以外的其他语言
我为解决这个问题所做的事情:
- 已将
text/html
更改为text/plain
、text/plain utf-8
和text/plain charset=utf-8
,但没有用 - 已将 VLC 播放器的编码类型从通用更改为 utf8,但没有用
我认为这与编码类型有关,我错过或不知道的事情?请填写
您做的一切都正确,但是我们当前的大多数操作系统 运行 Windows-1256.. 我已经用这个 unicode 测试了你的代码,它适用于阿拉伯语和波斯语:
只需更改:
text/plain;charset=windows-1256