本文最后更新于 <span id="expire-date"></span> 天前,文中部分描述可能已经过时。
上个月女朋友为了学习日语发给我 逃げるは恥だが役に立つ 的字幕,让我帮她转成可以方便查看修改的格式,于是我便折腾了一会,用了一些工具将 .str
文件转换成了 .epub
和 .pdf
。
用到的工具:
Calibre
,pandoc
用正则表达式删除字幕内的非必要内容
打开 .str
文件是发现里面的内容差不多是这样的
1
00:00:00,510 --> 00:00:04,030
对我来说 你已经不是轻易地可以去放弃的人
2
00:00:04,030 --> 00:00:06,250
你为什么要说这样的话
3
00:00:06,650 --> 00:00:08,870
这样会让我越来越喜欢你啊
4
00:00:11,480 --> 00:00:14,650
所以我才讨厌这样 只有我在单相思
稍作分析后觉得用正则表达式匹配替换应该是最快的,于是乎便写了正则 \n[1-9][0-9]{0,2}\n\d{2}:\d{2}:\d{2},\d{3} --> \d{2}:\d{2}:\d{2},\d{3}
用来匹配这一部分的内容,然后替换成空格。
1
00:00:00,510 --> 00:00:04,030
把这些编号和时间去掉之后,发现字幕里面还有一些这样的内容(看起来像是定义了字幕的特殊位置,但想要用文本看的话就没必要了)。
{\fs16}{\an8}{\pos(190,5)}RoBoHoN 夏普公司开发的便携型机器人手机
于是便用 \{(.*)\}
匹配然后替换掉 {\fs16}{\an8}{\pos(190,5)}
(简单粗暴)。
这样基本上就把所有多余的内容都删除好了。
将各个字幕文件合并
- 首先为每个字幕加上标题,方便生成目录。
# 第1话 プロの独身男と秘密の契約結婚
这个吗
是会议用的资料 上面拜托我收集数据
注意事项吗
准确程度和工作速度
- 将文件合并(这里我用脚本来合并)
#!/bin/bash
for i in {1..10}
do
cat $i.str >> final.md
done
- 使用 pandoc 将
.md
文件转换成.docx
文件(因为 Calibre 支持.docx
转其他格式)。
pandoc -o 中文_逃げるは恥だが役に立つ.docx final.md
使用 Calibre 转换成电子书
- 添加元数据 (Metadata)
打开 Calibre 将 .docx
文件导入, 编辑元数据,添加书名和作者民,方便在设备上查看,还可以添加封面(不过我是用 Calibre 自动生成的封面,因为它生成的封面还不错)
- 转换电子书
使用 Calibre 自带的 转换书籍 就可以非常方便地将 .docx
转换为 .epub
和 .pdf
(如果是在小屏幕设备看的话用 .epub
最好,一般能有不错的排版,如果是在 Kindle 看的话,用 .mobi
格式则更好, .pdf
则方便在大屏幕设备如 iPad 和 PC 上使用。)
示例
转换成功就可以发送到相应的设备上查看了(这里贴出我制造的 .epub
格式在 iBook 上的显示效果)
评论