“三十年河东,三十年河西”是一句民间谚语,它的来源是:从前黄河河道不固定,经常会改道(历史上无数次发生)。某个地方原来在河的东面,若干年后,因黄河水流改道,这个地方会变为在河的西面。这句话比喻人事的盛衰兴替,变化无常,有时候会向反面转变,难以预料。又道是“世事无常,瞬息万变”,也有人说“在这个世上,最不缺少的就是变化”。对于正在经历这种不断变化的或者处于变化旋涡中的人,也许变化过后是雨后彩虹,也许迎接的是更大的暴风雨,前途未知,但我们应该相信这句话,“一般特别勤奋的人,运气都不会太差的”。让我们保持平常心,拥抱变化,“车到山前必有路”,“塞翁失马,焉知非福”,一切变化都会有其解决方案,也许看似很糟糕的事情在多年之后回头看时,却可能是一件好事也说不定。

最近对FBReader的阅读引擎支持的功能进行了总结,便于进行修改或扩展,对刚从事阅读引擎工作相关工作的同学可能会有一些学习和借鉴作用,这里分享出来给大家。

FBReader阅读引擎支持的功能很多,总结如下所示。

1、支持并测试过的格式有txt,epub,doc,html,pdf(需要下载插件支持);

代码看到的应该有css,doc,fb2,html,xhtml, oeb,pdb ,rtf ,txt,需要装插件的格式有CBR和CBZ,DjVu,PDF等这些。

2、夜间模式和白天模式的切换;

3、书签功能

(1)、添加书签;

(2)、打开书签;

(3)、编辑书签:能够单独编辑某个标签的文字内容,选中的样式,进行删除。

(4)、可能同时查看所有图书的书签;

(5)、对所有图书的书签进行关键字搜索;

4、支持脚注。

脚注内容显示有当前读书的进度,格式以”当前页/总页“这样的方式显示;当前时间;剩余点亮百分比。

5、全文内容查找。

针对输入的关键字进行全文内容查找。

6、侧边亮度调节功能。

可以上下滑动当前页的最左侧来调节屏幕的亮度。

7、书籍分享

通过系统安装的应用可以分享书籍

8、屏幕方向

可以按系统,感知设备方向,竖直,水平,竖直反置,水平反置等6种方式来设置阅读界面的屏幕方向。

9、书籍信息

(1)、可以查看书名,书籍对应的语言,书籍所在路径或位置。

(2)、还可以对书籍的信息进行编辑,包括书名,作者,标签,语言(书籍对应的语言)

,编码(可以设置不同的编码,手动修改后会导致文件乱码)。

(3)、重新加载功能,可以恢复书籍的默认信息,将编辑保存的信息恢复成默认值。

10、快速翻看

可以通过操作滚动条快速切换到某一页,显示格式为“当前页/总页”。

11、插件安装功能

支持符合FBReader要求的插件进行集成和安装,包括有书架,语音朗读,PDF格式,DjVu格式,CBR和CBZ格式

12、设置语言

设置当前界面的语言。

13、文件夹设定。

包括设置在哪搜索book,在哪存储下载的book,上哪找字体,在哪存储临时文件等都可以设置和选择目录。

14、同步。

主要是和后台同步一些信息。包括帮助文档,是否允许同步,如果允许,可以设置是否上传文件到服务器,同步当前book的位置到后台,改变当前阅读的book,同步bookmark到后台。

15、呈现方式

(1)、界面语言。可以设置界面菜单多国语言。

(2)、屏幕方向。可以按系统,感知设备方向,竖直,水平,竖直反置,水平反置等6种方式来设置 。

(3)、双列视图。水平方向手持设备时使用双列显示文字 ,还是始终将文字一列显示 。

(4)、屏幕亮度调整。是否允许通过在屏幕左侧上下滑动手指来调整屏幕亮度,或者禁用屏幕亮度调整。

(5)、禁止屏幕睡眠。四个选项可以选择其一:总是,当电量大于百分之25 ,当电量大于百分之50 ,从不。

(6)、显示状态栏 。阅读模式下显示状态栏,或者阅读模式下隐藏状态栏。

(7)、阅读时禁用系统按键发亮 。禁用设备系统按键发亮 (对某些设备无效) ,或者不要尝试禁用系统按键发亮。

16、文字

(1)、字体属性。可以设置是否允许抗锯齿 ,是否允许间距微调 ,是否允许色彩抖动 ,是否允许字体微调等4个选项。

(2)、字体。可以设置字体,包括预置的和拷贝到/mnt/sdcard/Fonts目录下的。

(3)、字体大小。可以设置字体大小,是个区间值。

(4)、字型。包括是正常 ,还是加粗 ,倾斜 ,还是加粗并倾斜 。

(5)、行间距。区间值0.5-3.0,这个我们可以重置感兴趣的值。

(6)、对齐。对齐方式包括左 ,右 ,居中 ,对齐 四种。

(7)、自动断字。是否允许自动断字 。

(8)、更多样式。

**************以下这个是重点*********

可以对多种样式进行设置,这些样式包括34种,具体如下,

(1)、连续段落

(2)、EPub Paragraph

(3)、书名

(4)、章节标题

(5)、副标题

(6)、标题 1

(7)、标题 2

(8)、标题 3

(9)、标题 4

(10)、标题 5

(11)、标题 6

(12)、摘要

(13)、题词

(14)、作者

(15)、诗标题

(16)、节

(17)、韵文

(18)、举例

(19)、内部超链接

(20)、外部链接

(21)、脚注

(22)、倾斜

(23)、重点

(24)、加粗

(25)、固定

(26)、定义

(27)、定义描述

(28)、预置格式文本

(29)、编码

(30)、删除线

(31)、上标

(32)、下标

(33)、图像

(34)、日期

可以分别对以上34种样式进行14种设置值的修改,这14种设置值包括,

(1)、字体

(2)、字体大小

(3)、加粗

(4)、倾斜

(5)、Text decoration

(6)、允许断字

(7)、对齐

(8)、行间距

(9)、段前距

(10)、段后距

(11)、左缩进

(12)、右缩进

(13)、首行缩进

(14)、Vertical alignment.

其中段前距 ,段后距 ,左缩进,右缩进,首行缩进,Vertical alignment 支持的格式有类似,20px, 10pt, 0.8em, 1ex, 120%,5种格式。

17、Pop-ups

设置弹出框的属性,包括文字大小,多长时间间隔等。

18、CSS

设置包括

Font family字体。Use font family defined in CSS 或者忽略。

字体大小。使用CSS中定义的字体大小 或者忽略。

文字排列 。使用CSS中定义的文字排列 或者忽略。

Margins边距 。Apply margins defined in CSS 或者忽略。

19、颜色&墙纸

可以设置背景的颜色或者预置图片文件,或者自定义的图片。

还可以设置,普通文字 ,链接文字 ,已访问过的链接文字 ,Search results ,搜索结果背景 ,Footer (old style) ,Footer background ,Footer text ,Footer line ,选择背景色 ,选择的文本 等的背景颜色。

20、边距

可以设置左边距 ,右边距 ,顶边距 ,底边距 ,列间距 。

21、滚动条

(1)、滚动条设置 。包括隐藏 ,垂直滚动 ,垂直进度方式 ,水平页脚方式 ,Horizontal footer (old style) 等方式。

(2)、页脚高度 。

(3)、Footer (old style) colour。页脚样式

(4)、Footer background colour。 页脚背景色。

(5)、Footer text colour。页脚文本色

(6)、Footer line colour。 页脚间隔行颜色

(7)、显示内容目录标志 。在页脚栏显示内容目录标志 或者不在页脚栏显示内容目录标志 。

(8)、Maximum number of TOC marks to display。

(9)、Show reading progress 。

(10)、显示时间 。页脚处显示时间 或者不在页脚处显示时间

(11)、显示电量百分比 。在页脚显示电量百分比 或者不在。

(12)、字体。设置页脚字体。

22、翻阅操作

(1)、触滑屏幕翻阅 。包括,手指拍触屏幕翻页 ,手指触滑翻页 和触滑或者拍触以翻页 可以选择。

(2)、连续拍触动作设定。连续拍触屏幕两次显示对话框/菜单 或者忽略连续拍触动作

(3)、音量键滚动 。

(4)、用音量键来翻动 。

(5)、动画效果 。包括,无动画效果的滚屏 ,翻卷动画 ,滑动动画 ,Slide animation (old style) ,移动动画 等5种,

(6)、动画速度

(7)、横屏翻阅 。

23、Dictionary & translator字典和翻译

(1)、Look up single word in

(2)、Translate phrases via

(3)、导航键访问词句设定

(4)、长按动作设定

24、图像设定

(1)、长按动作设定。包括,长按不做任何事 ,长按选择图像 和长按打开图像 。

(2)、图像适合屏幕。包括无 ,只有封面 和所有 。

(3)、图像显示时的背景颜色

(4)、Match background intensity 。Adjust image colour to background 或者Do not adjust image colour 。

以上是FBReader引擎支持的所有功能,还有一些感觉不属于引擎功能范围的,如取消菜单设置,每日小提示设置,关于等相关的功能没有做整理。

FBReader阅读引擎支持的功能的更多相关文章

  1. Atitti 存储引擎支持的国内点与特性attilax总结

    Atitti 存储引擎支持的国内点与特性attilax总结 存储引擎处理的事情: · 并发性:某些应用程序比其他应用程序具有很多的颗粒级锁定要求(如行级锁定). · 事务支持:并非所有的应用程序都需要 ...

  2. 手机支持USB功能、驱动文件对应关系

    手机支持USB功能: 1.UMS(USB MASS Stronge) : 连接PC作为存储盘使用 2.ADB : 用于调试 3.MTP :连接PC作为存储盘使用(win XP需要安装WMP10 以上 ...

  3. WCF系统内置绑定列表与系统绑定所支持的功能

      WCF系统内置绑定列表 绑定 配置元素 说明 传输协议 编码格式 BasicHttpBinding <basicHttpBnding> 一个绑定,适用于与符合 WS-Basic Pro ...

  4. 驰骋开源的asp.net工作流程引擎java工作流 2015 正文 驰骋工作流引擎ccflow6的功能列表

    关键词: 驰骋工作流引擎   ccflow的功能列表   工作流功能列表  表单引擎功能列表 我们工作流引擎ccflow6重构之后对功能做了一些调整,要想快速了解ccbpm的功能,可以以下面列表为准 ...

  5. 检测浏览器是否支持cookie功能

    <script> if(navigator.cookieEnabled) { document.write("你的浏览器支持cookie功能!"); } else{ d ...

  6. 如果您的浏览器不支持javascript功能

    如果您的浏览器不支持javascript功能或被禁止使用,那么在访问许多网站(包括此网站)时,某些功能将不可用.我们建议您打开javascript功能以获得最佳的浏览效果.以下是打开它的可能原因和方法 ...

  7. MyISAM、InnoDB、Memory这3个常用引擎支持的索引类型

    表格对比了MyISAM.InnoDB.Memory这3个常用引擎支持的索引类型: 索引 MyISAM引擎 InnoDB引擎 Memory引擎 B-Tree索引 支持 支持 支持 HASH索引 不支持 ...

  8. Flutter 多引擎支持 PlatformView 以及线程合并解决方案

    作者:字节移动技术-李皓骅 摘要 本文介绍了 Flutter 多引擎下,使用 PlatformView 场景时不能绕开的一个线程合并问题,以及它最终的解决方案.最终 Pull Request 已经 m ...

  9. Chrome 已经原生支持截图功能,还可以给节点截图!

    昨天 Chrome62 稳定版释出,除了常规修复各种安全问题外,还增加很多功能上的支持,比如说今天要介绍的强大的截图功能. 直接截图 打开开发者工具页面,选择左上角的元素选择按钮(Inspect) W ...

随机推荐

  1. form表单转换为Json数据

    最近对前端js学习有点多,如今想自己动手写点插件,后来发现,我想到的,其他人都想到了.于是做了以下笔记. 使用插件: 插件 :https://github.com/marioizquierdo/jqu ...

  2. js网页返回顶部和楼层跳跃的实现原理

    这是简单的效果图. (实现楼层间的跳跃,主要依靠的是 window.scrollTo(x,y)方法 ,将浏览器的可见区域移动到指定的x,y坐标上.)   说楼层跳跃前,先温习下,一般网页在高度较大时, ...

  3. Java_web学习(一) jdk配置

    1.下载好jdk1.8.0版本或以上版本 2.配置JAVA_HOME,CLASSPATH,PATH 其中JAVA_HOME必须的 2.1   JAVA_HOME=E:\java\jdk1.8.0_77 ...

  4. Linux系统Java环境安装配置

    jdk安装配置 首先下载JDK和JRE,这里你的需要看看你的Linux系统是多少位的,比如我的是64位的: 下载JDK并指定到Download目录,JRE同样操作: 解压并且配置环境: tar -zx ...

  5. deeplearning.ai 人工智能行业大师访谈 Yoshua Bengio 听课笔记

    1. 如何走上人工智能的研究的?Bengio说他小时候读了很多科幻小说,1985年(64年出生,21岁)研究生阶段开始阅读神经网络方面的论文,对这个领域产生了热情. 2. 如何看深度学习这些年的发展? ...

  6. AtCoder Grand Contest 019

    最近比较懒,写了俩题就跑了 A - Ice Tea Store 简化背包 #include<cstdio> #include<algorithm> using namespac ...

  7. “玲珑杯”ACM比赛 Round #13 题解&源码

    A 题目链接:http://www.ifrog.cc/acm/problem/1111 分析:容易发现本题就是排序不等式, 将A数组与B数组分别排序之后, 答案即N∑i=1Ai×Bi 此题有坑,反正据 ...

  8. 【Java学习笔记之三】java中的变量和常量

    变量和常量 在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中值会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量. 在实际的程序中,可以根据 ...

  9. Gym 100952A&&2015 HIAST Collegiate Programming Contest A. Who is the winner?【字符串,暴力】

    A. Who is the winner? time limit per test:1 second memory limit per test:64 megabytes input:standard ...

  10. 在 .NET中,一种更方便操作配置项的方法

    在应用程序的开发过程中,我们往往会为软件提供一些配置项,以允许软件根据配置项灵活来做事情,比如配置日志文件路径等,此外,我们还可以用配置项来为用户存储其偏好设置等. .NET 为我们默认提供了配置机制 ...