【问题标题】:Advanced ePub reader高级 ePub 阅读器
【发布时间】:2013-05-15 11:27:41
【问题描述】:

我正在尝试使用 jQuery 和 PHP/Zend Framework1.12(用于 epub3.0 格式)构建高级 ePub 阅读器。阅读器应具备以下特点:

  • 图书应按页显示(一次 2 页)
  • 用户应该能够使用滑块在页面和章节之间导航
  • 用户可以创建亮点和书签页面
  • 阅读器必须是跨浏览器(我不太关心旧版本的 IE,但它必须适用于 Safari、Mozilla、Chrome)

我的想法是制作某种 PHP 解析器来处理 epub 内容并以更“友好”的格式将其传递给 Javascript 代码,但我之前没有使用过 epub,我不确定从哪儿开始。

以下是我一直在努力解决的几个问题:

  1. 我遇到的第一个问题是如何从 .ePub 存档中提取内容并以允许分页视图的方式呈现它。你会推荐什么 PHP 库来解析 epub?我已经测试了一些库,比如BookGluttonEpub(似乎很老)和EPUBParser(因为没有示例和文档,所以很难理解)。还有其他我错过了吗?

  2. 在将 html 代码传递给阅读器之前,我是否应该清理它(例如删除无效标签)?

  3. 您认为显示页面的最佳方式是什么?我应该使用 CSS 和“列”属性吗?或者我应该制作一个更高级的脚本,将章节的 html 内容拆分为页面?

谢谢

【问题讨论】:

    标签: php jquery epub


    【解决方案1】:

    首先解压 .epub 文件,它和你的 zip 文件一样,这样你就可以使用 PHP 解压缩库而不需要解析 HTML 或 CSS。您可以使用 HTML5 画布和 CSS 3 属性创建阅读器。

    如果您不考虑 IE 兼容性,我认为更好的选择是使用 HTML5 和 CSS3。

    【讨论】:

    • 我同意使用 HTML5 和 CSS3 似乎是更好的解决方案。不确定我是否同意第一部分,这意味着我只能使用 Javascript 代码进行渲染。在这种情况下,我必须加载所有 epub 文件并计算每章的长度(用于导航滑块),这对于大型 epub 可能会很慢。
    • 我构建了以下解决方案: 1. 使用 HTML5 & CSS3 进行渲染(阅读器不适用于 IE8 & 9); 2.使用每章的文件大小计算进度条百分比(这是一个近似值,因为它没有考虑图像占用多少空间); 3. 使用 jQuery 创建高亮/书签。浏览它们时,使用进度条百分比(apx。它们在书中的位置)和选定的文本在每个章节文件中搜索亮点。书签的创建方式类似,通过模拟页面上的点击来创建。
    猜你喜欢
    • 1970-01-01
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 2010-11-26
    • 1970-01-01
    相关资源
    最近更新 更多