Aeroblast 发表于 2019-3-25 17:38

不起眼的EPUB轻小说平台兼容法 2019

本帖最后由 Aeroblast 于 2019-4-2 12:40 编辑

先发我没人看的lofter然后复制过来的,大概整理了下格式应该没什么问题虽然现在很流行EPUB版轻小说了,但是一些细节还是比较让强迫症难受的。LK(主要是工作组)貌似都不管平台兼容性,而tsdm流行的模板(kid大佬和那边的木子组)虽然在意,但是兼容性解决方案有些旧了。之前看有人写兼容各个平台的弹出注释,实践了一下发现也有些问题(略有参考,很感谢作者)。也为之后填坑考虑,做一个比较全面的考察,做一点实践,权当抛砖引玉。
阅读器的选择:对于轻小说epub,我主要考察阅读器的这几个点:  段首缩进  注音  弹出式注释  SVG  竖排随便来个测试图http://imglf6.nosdn.127.net/img/bHlLeVpPL0RHYld1eG9kQ0twd0o4dFNXVnB3TXppRTlDSmVXYnpFOEZvdnNlcGRzQThCVDFRPT0.png?=imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2制作epub之前,首先要选择一个支持这些特性的阅读器。比较主观。其他因素,字体一般靠内置我觉得够了。目录什么的不是说不重要,是太基本了(喂
那么首先是各个阅读器的测试。如果有因为我不会用搞错什么的请帮忙指出。不够全我也没办法,请各位为自己支持的平台宣传吧(喂

Apple Books (原来叫iBooks)作为iOS的官方阅读器,功能很全,而且据说是EPUB3支持最好的。实际上,这也是我上课摸鱼的首选阅读器。测试平台为iOS 12。iPhone和iPad的区别大体上只有弹出注释在手机上全屏,而在平板上是出来个小框。主要考察点:  段首缩进:OK;  竖排和方向:不知道为啥EPUB3 和EPUB2同样的写法,EPUB2可以,EPUB3不行。所以最后测试档还是EPUB2.0。要是有我不知道的还请赐教……;  注音:OK;  弹出式注释:OK,有不足,具体看图(内联样式可,CSS样式不行)。http://imglf4.nosdn.127.net/img/bHlLeVpPL0RHYld1eG9kQ0twd0o4bnRtVTllcm5kYmNHZTk4czBMY2t4TWYrb2N2cXoyVmhnPT0.png?=imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2  SVG:OK。还支持滤镜(测试档的灰色文字应该有个高斯模糊),其他阅读器大部分不行。加分点:  真flow式阅读。对于小说这种东西,能够适应平台变化排版是最合适的,滚动模式就是这个概念的最佳体现。  背景色调细节:Edge等等浏览器也可以把背景变成纸黄色,但是Apple Books会把图片的白色也处理,这个功能让轻小说插图也能和背景一个颜色,沉浸感up。减分点:  疑似bug,滚动阅读加载新页面会卡一下然后位置错开……其他使用细节:  双击图片即可放大。Microsoft Edge我也忘了哪个版本开始支持的epub了。测试版本1803,感觉差别不大。电脑上基本上首选了。Edge之前说要换引擎,虽然有预览版我也懒得测了,感觉这个阅读支持还是纯js实现的,改变不会太大。主要考察点:  段首缩进:OK;  竖排和方向:OK;  注音:OK;  弹出式注释:OK。  SVG:OK。加分点:  方便,虽然有强行让你用的嫌疑,但是方便。减分点:  性能可能有点问题,偶尔会假死,多等一会就好。Kindlegen(转换成mobi)Amazon kindlegen(Windows) V2.9,测试平台是Kindle Paperwhite……的一个很老的版本(至少四五年前了),回头再查。这个转换软件好像2014年开始就没动过了……不过没差,反正只是把epub重新打包,核心功能还是看设备。主要考察点:  段首缩进:OK;  竖排和方向:OK,竖排需要加-webkit-;  注音:OK;  弹出式注释:OK。需要设定双向链接才能显示。注释中样式无效。aside标签不会自动隐藏。  SVG:OK。加分点:……墨水屏算不?减分点:……好像也没啥缺点。
Readium(Chrome App)因为版头上有写就捏着鼻子用了一下结果……一打开就告诉我Chrome已经不想搞App了,他们不更新了。主要考察点:  段首缩进:OK;  竖排和方向:OK;  注音:OK;  弹出式注释:NO。  SVG:OK。虽然除了注释没支持,这玩意的UI给我一种很简陋的感觉……减分无所谓了吧反正不用了:  图片显示,包括SVG,是不管分页的。会给你拦腰切一刀放在下一页。  UI很烂,大概也是没维护的原因。  没后续更新了,放弃吧。
看着到这里,如果你是个非Android平台读者其实已经没啥疑问了,以下是噩梦的Android平台探索。我本身不用安卓,所以测试比较随便,测试机比较烂,大概不影响吧。软件都是随便搜的,可能不全。
多看目前十分流行。轻小说EPUB界的IE。测试版本5.8.5 .主要考察点:  段首缩进:OK。记得把排版调成无;  竖排和方向:呃,虽然方向对了,但是不让竖排的也竖排了,只看page-progression的?;  注音:OK;  弹出式注释:众所周知,需要私有属性,CSS样式OK;  SVG:NO。内部元素可以读取,但是没有正确显示。大概是直接忽略了不认识的标签。减分点:背标准而行。
FBReader随便查到的。测试版本3.0.0主要考察点:  段首缩进:OK。默认会缩进两个英文字符,CSS可覆盖;  竖排和方向:NO;  注音:NO;  弹出式注释:OK?用的是系统的提示,样式当然是不存在的,列表的序号还会给加上……;  SVG:NO。同多看。不减分了,别用。
Lithium貌似是个新秀。搜索关键词“锂Epub阅读”。测试版本v0.20.1 解锁汉化版。主要考察点:  段首缩进:OK;  竖排和方向:NO;  注音:OK;  弹出式注释:OK,CSS样式部分OK(颜色貌似改不了,但是list-style:none起了作用);  SVG:OK。加分点:  也有个滚动模式,不过章与章之间没有接起来(是为了避开Apple Books那种bug?)  背景可调。  无广告。减分:  如果用官方版,背景那个貌似需要升级Pro解锁……如果不啃生肉,还是可以一用的。比较推荐。感觉有希望干翻IE。
AlReader毛子出的。支持格式贼多,不过我只测epub。……别用
Mantano Ebook Reader测试版本:V2.5.26 汉化版。官网很高大上,宣称支持EPUB 3.主要考察点:  段首缩进:NO;  竖排和方向:NO;  注音:OK;  弹出式注释:NO;  SVG:OK。……哦才发现后面版本换了名字:
Bookari by Mantano测试版本:4.2.3,打过解锁补丁。主要考察点: 同上,然后中文显示不正常了,就算显示正常也没有实现功能。你升了俩大版本号都干啥了?(╯‵□′)╯︵┻━┻
静读天下测试版本:4.5.2。貌似是30天免费试用.主要考察点:  段首缩进:NO,强制两个中文字;  竖排和方向:NO。有个选项强制可以切换,但是会导致弹出注释方向不一致,看你锻炼脖子还是锻炼手腕了;  注音:OK;  弹出式注释:OK,但是没有样式支持;  SVG:NO。微妙……=======================================先测试这么多,如果有更多测试样本或者推荐,欢迎提供测试结果。
综上,比较合格的还是Apple Books,Edge,Kindlegen。这三个都是比较符合标准的,如果支持它们,Lithuim也应该没有问题。多看因为历史原因也最好支持一下。实践:属性什么的其实没什么好说的,该怎样怎样。唯一麻烦的是弹出注释。先上代码,这里提供一个我比较满意的实现:例子:<a class="duokan-footnote" epub:type="noteref" href="#note1" id="note_ref1"><sup><img alt="note" class="footnote" src="../Images/note.png"/></sup></a>
<aside epub:type="footnote" id="note1"><a href="#note_ref1"></a><ol class="duokan-footnote-content"style="list-style:none"><li class="duokan-footnote-item" id="note1" value="1">注:这是注释</li></ol></aside>
记得在html加上xmlns:epub信息。注释链接没什么好说的,这里拿的是一个图片做链接。注释本体,首先是aside标签。对于Apple Books、Microsoft Edge、多看来说,aside应该是直接隐藏的。kindle不会隐藏,但是可以通过CSS hack代码@media amzn-kf8 {aside {display: none;}} 隐藏。紧接着的链回note_ref的链接是为了让Kindle能弹出注释,如果没有双向链接是不会弹出的,但是多一个链接十分不美观(而且也没有必要),所以没有写链接文字。接下来是兼容多看的列表。本身没什么好说的,但是需要注意列表默认会显示数字,十分不美观……而Apple Book的注释样式必须内联,所以把去除数字直接写在style属性里。测试效果图:http://imglf5.nosdn.127.net/img/bHlLeVpPL0RHYld1eG9kQ0twd0o4bjI2QS9lOUpSVTBMVE5UckxOeVRsQVpUYXlFZXlEZzd3PT0.png?=imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2
http://imglf4.nosdn.127.net/img/bHlLeVpPL0RHYld1eG9kQ0twd0o4dFpJOG11Q0k5b2ZhUis5enB2Y0I4NTg2T2Fjb3F1MStBPT0.png?=imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2
http://imglf6.nosdn.127.net/img/bHlLeVpPL0RHYld1eG9kQ0twd0o4aXhtU1c3V2F4NUpFcUpNZW0xd1JFZzUrdXNsclB5TVVnPT0.png?=imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2http://imglf6.nosdn.127.net/img/bHlLeVpPL0RHYld1eG9kQ0twd0o4dmxRa2RSejBWNGwrem5LcWNkVDB2b3lQNWVJTnNNenRBPT0.png?=imageView&thumbnail=500x0&quality=96&stripmeta=0&type=jpg%7Cwatermark&type=2
至此,我们支持了Apple Books,Microsoft Edge,Kindlegen,多看。Lithium有点问题,它可以弹出注释,但是显示aside,而如果把aside设为display:none注释也没了。这种情况把所有注释放到末尾就好。如果一定要放在文中,我想用一些hack的方法(比如推到屏幕外)应该也可以实现,但是不如直接去和作者提(我就不去了,我也不是安卓用户……)如果嫌直接写太眼花,试试这个生成随便写的,比较简陋。最后放个测试用档,其实已经改得面目全非了……MEGA盘
补个修正kindle显示的CSS
@media amzn-kf8
{
aside {display: none;}
.duokan-footnote-item{page-break-after: always;}
}

Aeroblast 发表于 2019-3-25 17:49

吐血,图片这么大……算了凑合看吧

鬼畜神攻 发表于 2019-3-25 19:34

屏幕太惨烈了233

Aeroblast 发表于 2019-3-25 19:38

鬼畜神攻 发表于 2019-3-25 19:34
屏幕太惨烈了233

家人的手机,变成这样不用了我就捡来了w

橘貓 发表于 2019-3-25 19:47

推送到kindle的话怎么搞好一点

Aeroblast 发表于 2019-3-25 19:55

橘貓 发表于 2019-3-25 19:47
推送到kindle的话怎么搞好一点

推送不是只有用邮箱发吗……轻小说不会大于50m吧。
kindlegen生成的mobi会携带原始的epub文档,邮箱推送会帮你去掉,得到一个azw3文件(没有本质差别)比直接usb拷小一些

直接usb拷想文件小一点,可以用一个叫kindlestrip的脚本把原始文档去掉

我平常就直接usb拷,挺快的…


(另外早期win10插kindle就蓝屏,我还给赶上了orz

taroxd 发表于 2019-3-25 21:12

https://github.com/taroxd/n8440fe/tree/master/epub

正好前几天写了个给自己坑生成 epub 的东西来着……拿的 lk epub 组的一部分模板,貌似是针对多看阅读特化的注释?

对 epub 完全不懂的我只会 xjb 抄了……

Aeroblast 发表于 2019-3-25 21:33

taroxd 发表于 2019-3-25 21:12
https://github.com/taroxd/n8440fe/tree/master/epub

正好前几天写了个给自己坑生成 epub 的东西来着…… ...

是的,lk只符合多看的格式。
我没用过这个语言……如果想兼容标准:
我看epub命名空间已经ok了
make_footnote_icon大概需要给链接加一个id用于兼容kindle,它要求脚注有双向链接,然后是epub属性
make_footnote加上kindle要求的链接,就是上面新加的那个id,然后外面包一层带epub属性的aside
其实细节抄上面给出的代码就好了嘛,或者可以看一眼那个js代码(

taroxd 发表于 2019-3-25 21:37

本帖最后由 taroxd 于 2019-3-25 21:41 编辑

Aeroblast 发表于 2019-3-25 21:33
是的,lk只符合多看的格式。
我没用过这个语言……如果想兼容标准:
我看epub命名空间已经ok了

请问一下 li 的属性 value="1" 有什么深意吗?另外,示例代码里有两个元素 id 都为 note1,是什么意思呢?

Aeroblast 发表于 2019-3-25 21:42

本帖最后由 Aeroblast 于 2019-3-25 21:45 编辑

taroxd 发表于 2019-3-25 21:37
请问一下 li 的属性 value="1" 有什么深意吗?
其实并没有。
如果只对上面提到的几个支持,删掉应该也可以,因为后面在想办法不显示这个值。只是即使不写,缺省值也会存在(缺省值是1)。
我的想法是,假设有效果差的阅读器没法消掉,那还是让这个数字一直排下去,至少别是一串1
重复id是,因为符合epub标准脚注是声明epub:footnote的aside,多看的是列表里那一项,有点无奈。好在实际不会有什么问题。

taroxd 发表于 2019-3-25 22:05

本帖最后由 taroxd 于 2019-3-25 22:11 编辑

Aeroblast 发表于 2019-3-25 21:42
其实并没有。
如果只对上面提到的几个支持,删掉应该也可以,因为后面在想办法不显示这个值。只是即使不写 ...
算了我按标准写不管多看了吧= =   我自己也是 Edge 和 Apple Book 为主的。感谢指点。

commit:https://github.com/taroxd/n8440fe/commit/fb2c2580dbaacdee317ee6fd395d8a94e80d9529

夜明孤星 发表于 2019-3-26 09:10

QQ阅读啊,开卷有益我为了避免广告用的老版。目前基本上QQ阅读能满足(安卓)

诗緔ジ☆E哥 发表于 2019-3-26 12:49

涨涨姿势了

つゆなが 发表于 2019-3-26 13:30

android还有个gitden reader整体上挺好的,不过一些epub3无法导入,然后竖排也是只看page-progression。好像设置里可以调日文竖排,不过感觉没什么用。

我不喜欢多看的私有样式和那些蜜汁标准啊啊啊!
我自己弄书就只在意edge和ibooks的效果

anenasa 发表于 2019-3-26 18:37

目錄太基本?很多閱讀器不支援epub3的nav...另外,測試閱讀器怎麼能少了calibre呢?Edge支援的作業系統太少,我用的是Linux系統,都用calibre

Aeroblast 发表于 2019-3-26 20:27

本帖最后由 Aeroblast 于 2019-3-26 20:36 编辑

anenasa 发表于 2019-3-26 18:37
目錄太基本?很多閱讀器不支援epub3的nav...另外,測試閱讀器怎麼能少了calibre呢?Edge支援的作業系統太少 ...
Calibre
测试版本:3.40.1。一定要有人提的话我就测一下。
主要考察点:
  段首缩进:OK
  竖排和方向:OK?貌似只看page-progression。实际没法用,因为字都是倒着的。大概是开发者根本不认识亚洲文字,看不出来。反正几年前就这德性了;
  注音:OK;
  弹出式注释:OK,不隐藏aside;
  SVG:OK,滤镜OK。
减分点:   操作稀烂
会强制生成library,生成乱七八糟的文件名,逼死强迫症
可能会把你的kindle书转换成稀烂的epub,也会把你的epub转换成稀烂的kindle书
建议如果有别的选择就不要用
痛恨这东西所以评价可能不客观

Cotton 发表于 2019-3-26 21:16

大佬你好棒!!

现在就希望有那种TXT直接转换epub版的app之类的

果然轻小说现在更希望能在手机上用epub看呢

雾迹 发表于 2019-3-26 21:19

本帖最后由 雾迹 于 2019-3-26 21:22 编辑

轻小说主要很多都是靠插画的,所以epub对于轻小说来说就很重要了,国产网文还行喜欢txt。谢谢老司机的推荐了。

einb 发表于 2019-3-26 21:26

虽然看不懂,但是大佬好评~

Aeroblast 发表于 2019-3-26 21:33

Cotton 发表于 2019-3-26 21:16
大佬你好棒!!

现在就希望有那种TXT直接转换epub版的app之类的


呃,转换是可以,但txt怎么描述插图啊……
所以还是等正经的制作epub吧
请期待epub组的肝?
tsdm那边其实比较多,很多勤奋的人,比如kid大佬……
页: [1] 2 3
查看完整版本: 不起眼的EPUB轻小说平台兼容法 2019