如何实现HTML书籍式的分页?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (240)

如何将HTML文件的内容以屏幕大小的块分割为WebKit浏览器中的“分页”?

每个“页面”应显示完整的文本量。这意味着在屏幕的顶部或底部边框中不得将一行文本切成两半。

我的意图最初是构建Android ePub阅读器。然而,似乎该解决方案只能通过JavaScript和CSS实现,因此我扩大了问题的范围,使其与平台无关。

提问于
用户回答回答于

(这个JS在iOS Webkit上工作,不保证为Android)

var desiredHeight;
var desiredWidth;
var bodyID = document.getElementsByTagName('body')[0];
totalHeight = bodyID.offsetHeight;
pageCount = Math.floor(totalHeight/desiredHeight) + 1;
bodyID.style.padding = 10; //(optional) prevents clipped letters around the edges
bodyID.style.width = desiredWidth * pageCount;
bodyID.style.height = desiredHeight;
bodyID.style.WebkitColumnCount = pageCount;
用户回答回答于

从经验谈起,预计会花费很多时间,甚至对于准系统的观众来说也是如此。ePub读者实际上是我开始学习C#时首先承担的大型项目,但ePub标准肯定非常复杂。

你可以找到最新版的ePub规范 ,其中包括OPS(Open Publication Structure),OPF(Open Packaging Format)和OCF(OEBPS Container Format) 。

扫码关注云+社区

领取腾讯云代金券