koreader下载_fullkoreader

KOReader

KOReader is a document viewer application, originally created for Kindle

e-ink readers. It currently runs on Kindle 5 (Touch), Kindle Paperwhite,

Kobo, PocketBook and Android (2.3+) devices. Developers can also run Koreader emulator

for development purpose on desktop PC with Linux or Windows operating system.

Main features for users

supports multi-format documents including:

paged fixed-layout formats: PDF, DjVu and CBZ

reflowable e-book formats: ePub, fb2, mobi, doc, chm and plain text

scanned PDF/DjVu documents can also be reflowed with built-in K2pdfopt

use StarDict dictionaries / Wikipedia to lookup words

highlights can be exported to Evernote cloud account

highly customizable reader view and typeset

setting arbitrary page margins / line space

choosing external fonts and styles

built-in multi-lingual hyphenation dictionaries

supports adding custom online OPDS catalogs

calibre integration

search calibre metadata on your koreader device

send ebooks from calibre library to your koreader device wirelessly

browser calibre library and download ebooks via calibre OPDS server

can share ebooks with other koreader devices wirelessly

various optimizations for e-ink devices

paginated menus without animation

adjustable text contrast

multi-lingual user interface

online Over-The-Air software update

Highlights for developers

frontend written in Lua scripting language

running on multi-platform with only one code-base maintained

developing koreader in any editor without compilation

high runtime efficiency by LuaJIT acceleration

light-weight widget toolkit for small memory footprint

extensible with plugin system

interfaced backends for documents parsing and rendering

high quality document backend libraries like MuPDF, DjvuLibre and CREngine

interacting with frontend via LuaJIT FFI for best performence

in active development

contributed by developers around the world

continuous integration with Travis CI

with unit tests and code coverage test

automatic release of nightly builds

free as in free speech

licensed under Affero GPL v3

all dependencies are free software

Check out the KOReader wiki to learn

more about this project.

Building Prerequisites

These instructions for how to get and compile the source are intended for a Linux

OS. Windows users are suggested to develop in a Linux VM or use Wubi.

To get and compile the source you must have patch, wget, unzip, git, autoconf,

subversion and cmake installed, as well as a version of autoconf greater than 2.64.

You also need nasm and of course a compiler like gcc or clang. If you want to

cross-compile for other architectures, you need a proper cross-compile toolchain.

Your GCC should be at least of version 4.7 for both native and cross compiling.

Users of Debian and Ubuntu can install the required packages using:

sudo apt-get install build-essential libtool gcc-multilib libffi-dev \

patch wget unzip git autoconf subversion cmake nasm libsdl1.2-dev

Cross compile toolchains are available for Ubuntu users through these commands:

# for Kindle

sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi

# for Kobo

sudo apt-get install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf

# for Win32

sudo apt-get install gcc-mingw-w64-i686 g++-mingw-w64-i686

A recent version of Android SDK/NDK and ant are needed in order to build

Koreader for Android devices.

sudo apt-get install ant

You might also need SDL library packages if you want to compile and run

koreader on Linux PC. Fedora users can install SDL and SDL-devel package.

Ubuntu users probably need to install libsdl1.2-dev package:

Getting the source

git clone https://github.com/koreader/koreader.git

cd koreader

make fetchthirdparty

Building & Running & Testing

For real eink devices

To build installable package for Kindle:

make TARGET=kindle clean kindleupdate

To build installable package for Kobo:

make TARGET=kobo clean koboupdate

To build installable package for PocketBook you need first to obtain the SDK

from PocketBook:

make pocketbook-toolchain

then similarly with Kindle and Kobo building run this command:

make TARGET=pocketbook clean pbupdate

To run, you must call the script reader.lua. Run it without arguments to see

usage notes. Note that the script and the luajit binary must be in the same

directory.

You may checkout our nightlybuild script to see how to build a

package from scratch.

For Android devices

Make sure the "android" and "ndk-build" tools are in your PATH variable

and the NDK variable points to the root directory of the Android NDK.

First, run this command to make a standalone android cross compiling toolchain

from NDK:

make android-toolchain

Then, build installable package for Android:

make TARGET=android clean androidupdate

For emulating KOReader on Linux and Windows

To build an emulator on current Linux machine just run:

make clean && make

If you want to compile the emulator for Windows you need to run:

make TARGET=win32 clean && make TARGET=win32

To run koreader on your developing machine

(you may need to change $(MACHINE) to the arch of your machine such as 'x86_64'):

cd koreader-$(MACHINE)/koreader && ./reader.lua -d ../../test

To run unit tests in KOReader:

make test

To run Lua static-analysis for KOReader:

make statick-check

You may need to checkout the travis config file to setup up

a proper testing environment. Briefly, you need to install luarocks and

then install busted with luarocks. The "eng" language data file for

tesseract-ocr is also need to test OCR functionality. Finally, make sure

that luajit in your system is at least of version 2.0.2.

You can also specify size of emulator's screen via environment variables.

For more information, please refer to koreader-base's README.

To use your own koreader-base repo instead of the default one change KOR_BASE

environment variable:

make KOR_BASE=../koreader-base

This will be handy if you are developing koreader-base and want to test your

modifications with kroeader frontend. NOTE: only support relative path for now.

Translation

Please refer to l10n's README to grab the latest translations

from the Koreader project on Transifex with this command:

make po

If your language is not listed on the Transifex project, please don't hesitate

to send a language request here.

Variables in translation

Some strings contain variables that should remain unaltered in translation.

For example:

The title of the book is %1 and its author is %2.

This might be displayed as:

The title of the book is The Republic and its author is Plato.

To aid localization the variables may be freely positioned:

De auteur van het boek is %2 en de titel is %1.

That would result in:

De auteur van het boek is Plato en de titel is The Republic.

Use ccache

Ccache can speed up recompilation by caching previous compilations and detecting

when the same compilation is being done again. In other words, it will decrease

build time when the source have been built. Ccache support has been added to

KOReader's build system. Before using it, you need to install a ccache in your

system.

in Ubuntu use:sudo apt-get install ccache

in Fedora use:sudo yum install ccache

install from source:

unarchieve the source package in a directory

cd to that directory and use:./configure && make && sudo make install

to disable ccache, use export USE_NO_CCACHE=1 before make.

for more detail about ccache. visit:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
我们希望在我们的阅读设备上能够享受这些自由: 数字内容不被局限于特定厂商的专有系统的自由。用户可以获得阅读器软件运行细节,保障数字内容不被非法窥探的自由。用户修改阅读器软件外观和功能的自由。Koreader 正是让我们获得这些自由的一个尝试。Koreader 在 GPLv3 协议下发布,支持开放文档格式 PDF、DJVU、EPUB,个人文档转化为这些开放格式后不会因为特定厂商的消失而使文档失效;任何有兴趣了解 Koreader 运行细节的人都可以拿来研究并修改、添加自己想要的功能。Koreader 项目来源于 Kindlepdfviewer,并重写了 Kindlepdfviewer 界面层的大部分代码,使模块化程度更高。理论上 Koreader 能够运行在所有基于 Linux 的阅读设备上。如果你想要移植 Koreader 到其他阅读器上的话,请参考项目的 Wiki 页面:如何移植 Koreader 到其他系统。Feature List机型支持:Kindle Touch、Kindle PaperWhite (K3,DXG,K4 的支持还在完善中)格式支持:PDF, DJVU, EPUB, HTML, MOBI, TXT, ZIP, CBZ, FB2, RTF, XPS, CHM, DOC功能支持:见参考[4]。ArchitectureKoreader 底层的文档解析和渲染使用了优秀而且成熟的开源实现:PDF 文档的解析渲染使用小巧快速、低内存占用的 MuPDF。DJVU 文档的解析渲染使用了 DJVU 格式的开源实现 DjVuLibre。EPUB 和其他标记文档使用 CoolReader 的渲染引擎 CREngine。使用 K2pdfopt 来优化 PDF/DJVU 文档在小屏幕设备上的排版。效果见这里。其他开源库如 luafilesystem, popen_nonshell 以及 freetype 等等。Koreader 界面层和逻辑层使用嵌入式脚本语言 Lua 编写,运行时通过 LuaJIT 即时编译为机器码来提升运行效率。KOReader 自带一套超轻量级的GUI框架,可直接运行在支持桢缓存(FrameBuffer)设备的阅读器上,也可以通过 SDL 获得跨平台的运行支持。 Koreader 自带一个设备模拟器,方便开发者在桌面系统进行开发。有关开发的详情请参考项目 Wiki 和 README。介绍内容来自 LinuxToy 标签:Koreader
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值