背景
平时喜欢写点东西,有编程的有观察和反思的,相信有输出才有提高,可是每次都是东一榔头西一棒槌的比较分散,看似写了很多能拿出手来的没有几篇,随着管控收缩很多东西都慢慢变得敏感,反正东西就是写给自己看的也没有什么校对的,但分散了不好管理,还有就是平时收藏的一些网页经常404,就研究了一下epub格式的电子书。有个说法是所有的电子书或文档终归是word的天下,还记得上大学时教计算机基础的老师就开始使用word写自己的回忆录了。
epub介绍
ePub(Electronic Publication的缩写,意为:电子出版),是一个自由的开放标准,属于一种可以“自动重新编排”的内容;也就是文字内容可以根据阅读设备的特性,以最适于阅读的方式显示。EPub档案内部使用了XHTML或DTBook (一种由DAISY Consortium提出的XML标准)来展现文字、并以zip压缩格式来包裹档案内容。EPub格式中包含了数位版权管理(DRM)相关功能可供选用。
使用方法
对于我这个小白来说创建一个epub文档实在是太难了,网上的一些制作epub的工具过于复杂(那些工具都是给专人使用的,其实还是我懒得研究,一个vscode走天下),这里我采用的就是修改替换内容的方式,对一个由dotepub生成的文件进行解压修改再打包的方式生成属于自己的epub电子书,dotepub是一款浏览器插件可以将单个网页生成epub电子书,但效果一般因为html的网页转换为xhtml时可能存在语法上的错误,不得不佩服浏览器功能强大健壮性还好。
资源文件链接见文末
话入正题,通过链接下载一个压缩包,解压可以得到一个python脚本和epub电子书模板,使用cd切换到解压后的目录中运行py脚本解压epub电子书为一个文件夹,修改text文件里的xhtml文件,xhtml就是一个语法比较严格的html文件,有基本的的html只是就可以拿下,text文件夹下有一个readme.xhtml的使用说明文档,这里摘选一部。
第一步: 进入 dot\OEBPS\text\目录 复制粘贴 copy.xhtml 文件并重命名为 chapter0.xhtml,两个文件要再同一目录下
第二步: 修改 chapter0.xhtml 文件的标题或内容以区别 copy 文件,修改完成后使用浏览器打开 chapter0.xhtml 文件避免修改过程中造成了语法错误
第三步: 在 content.opf 内的manifest和spine结点内新增 chapter0 结点,注意修改对应id、href和idhref的值
第四步: 修改或新增 toc.ncx 内的结点,注意修改一下playOrder的值,可以理解为章节阅读的顺序,续可自己测试确定
第五步: 将dot同级目录下的 22-epub.py 中的 zip_flag 变量值改为 1 ,重新压缩打包已修改的文件,可以先把存在的dot1.epub 文件删掉,以免操作错误重复解压epub文件覆盖了已经修改后的文件夹内的文件内容
第六步: 将新生成的epub文件使用epub阅读器打开,也可以使用在线epub阅读器测试,由于epub是公开的电子书格式,曾经有个几次协议的升级,不同的阅读器软件对同一个epub文件的读取和解析有一些小的差异,这些都是正常
测试成功后可以尝试修改css文件,解锁更多玩法
阿里云盘限制压缩文件分享太狗了,那就用百度云盘吧,小文件传输还不错。
链接: https://pan.baidu.com/s/1mZ3d4DDnKTy4w5jFV2WHBg?pwd=uqde
后期计划
并没有优化的打算,如果有需求那就后续发帖吧。
有时候感觉创造力比编程能力更重要,所有还是要不断输出提高自己。