This guide is designed for larger screens with color and contains links to relevant websites so we highly recommend reading this on a computer or a tablet (instead of your e-ink device). You can use the search function of your browser to find a specific topic. If you have a suggestion or question related to this user guide, you can write to this discussion thread: https://github.com/koreader/koreader/issues/11147
Parts of the text in this guide are color coded according to their categories:
BLUE ⇒ USER INTERFACE ELEMENTS OF KOREADER GREEN ⇒ MENU PATHS PURPLE ⇒ EXTERNAL APPS AND SERVICES TEAL ⇒ LINKS
We also have different boxes throughout the guide to inform or warn you:
WARNING I am a warning box. I explain things when you need to be extra careful.
INFO I am an info box. I give contextual information or extra explanations.
TIP I am a tip box. I contain tips that makes your life easier when using KOReader.
!!! ADVANCED I am an ADVANCED tag. If you see me on a topic, it means that you need to have a certain degree of technical knowledge like working with a file system, CSS knowledge, installation of external files etc. depending on the procedure.
KOReader is developed and supported by volunteers all around the world. You can be a part of this project too by:
Fixing bugs and implementing new features
Translating the program into your language or improving an existing translation
Despite its minimalistic looks, KOReader is a very powerful and customizable application. Check the list below to see what can you do with KOReader. All these features are explained in this guide.
Transferring your files
USB mass storage mode for supporting devices
Cloud storage (Dropbox/FTP/Webdav) with suitable accounts
KOReader can act as an SSH server, so you can use an SFTP application or your file manager to directly transfer files
With the Calibre plugin you can send books from your Calibre Library directly to your KOReader devices over wifi
With the News downloader plugin you can download RSS and Atom news entries to your device as HTML files
With the Wallabag plugin you can retrieve articles from your Wallabag account (a server based read-it-later service like Pocket)
Text adjustments
Change to landscape orientation manually or (if your device supports) automatically
Change fonts (including your own), font size, contrast, boldness, kerning, word spacing, word expansion
Change text alignment, line spacing, column layout and margins
Apply or ignore publisher styles and fonts
While reading
Highlight text with different styles, place bookmarks
Add notes using a customizable keyboard including diacritic modifiers
Invert screen colors
Take screenshots
Turn pages automatically
Track your reading statistics including reading progress, time range and calendar views
Navigating through your collection
Powerful File Browser where you can copy, move, rename, create, delete files and folders
Many options to see your books with detailed and mosaic views
Add your books to Favorites for quick access
History that shows last accessed books
Navigating through your book
Skim widget to quickly jump between pages, chapters, bookmarks
Unique Book map to see a bird’s eye view of your book including all your notes and highlights
Page browser to move through pages like a film reel
Bookmarks browser to navigate between your highlights easily
Create a table of contents automatically or manually
Hide and exclude certain parts of your book like Appendix, Index, References etc.
Search, Lookup and Translation
Search the document by selecting or entering text (including regular expressions)
Search in your bookmarks, highlights and notes
Lookup text in Wikipedia or in installed dictionaries and translate it by a long-tap
Translate whole page at once between more than 130 languages
Device settings
KOReader can self update
Powerful gesture system which you can customize and expand
Create a menu with your favorite actions with Quick Menu
Dim or turn off your screen light after a set interval
Adjust frontlight/backlight level and warmth manually or automatically
Set your own screensaver from many options like random images, book cover, reading, progress etc.
Set battery charge limit alarms to prevent deep discharge/over charge
Set a memory usage alert (useful for devices for smaller memory) and optionally restart KOReader upon reaching this limit
PDF documents
Crop margins automatically or manually
Reflow documents to extract text and read easier on a small screen
Apply OCR
Different zoom types and page flow directions to read multi-column documents easily
Auto straighten tilted documents
Special Panel zoom feature for reading mangas
Advanced features
Create a QR code from your clipboard
Add your own CSS style tweaks for books
View HTML source of a selection in an EPUB document
Powerful Profiles feature to automate actions
Create and edit text files on your device
Open a terminal emulator and run commands on your device
See your CPU, memory and battery usage stats
Exporting your notes and highlights
Export your notes and highlights to your device as text, markdown, HTML, JSON or Kindle clippings format
Synchronize to online services like Joplin, Readwise, Memos, Flomo and XMNote
USER INTERFACE
KOReader has a simple, mainly black and white user interface because gradients and different shades of gray can cause flashing and ghosting on e-ink screens which can degrade reading experience.
KOReader has 2 main interfaces: READING SCREEN and FILE BROWSER.
Reading Screen
READING SCREEN has two toolbars. TOP MENU includes menu items related to the general usage of KOReader. You will access your books, KOReader preferences, plugins etc. here. BOTTOM MENU is focused on options for document formatting like font weight/size, line spacing etc. While adjusting your text appearance, you will mostly interact with the BOTTOM MENU.
On the right you can see the default tap zones of KOReader. To show the TOP MENU or BOTTOM MENU you can tap the indicated zones. You can also swipe down the upper zone to show the TOP MENU. On non-touch devices like Kindle 4 you can open the BOTTOM MENU by pressing the button that corresponds to the ENTER/OK action.
You can set TOP MENU zone to open both the TOP and BOTTOM MENU at the same time via this menu:
⇑ TOP MENU → → Taps and Gestures → Activate Menu
CORNER TAP ZONES can be used for many different type of gestures including TAP, DOUBLE TAP, TWO FINGER TAP and TAP and HOLD.
PREVIOUS PAGE and NEXT PAGE zones can also be used for DOUBLE TAP gestures at the same time.
STATUS BAR zone can be tapped to cycle between STATUS BAR items if only one item is visible. If all items are visible, tapping will show and hide the STATUS BAR. Check “How can I configure the status bar ?” heading for more info.
File Browser
You will see FILE BROWSER when you run KOReader for the first time. You can access it from the reading screen by:
⇑ TOP MENU →
By default, FILE BROWSER shows your HOME which is your main library folder which you can change by tapping and holding on any folder. You can change its many options like how books are displayed or sorted via the TOP MENU by swiping down from the top part of the screen.
Circled items in the image are explained below:
RESET: This option allows you to reset some properties of your document like reading progress, bookmarks, custom cover image etc. which you can choose in a following dialog.
WARNING Be very careful when using this dialog and double check which items are marked, otherwise you can reset everything accidentally.
OPEN WITH: KOReader has different engines for rendering different file types. In some cases you can open a file in a different engine to get some other features. See Viewing archive files and Viewing image files sections just below.
IGNORE COVER: If for some reason you want to disable the cover for this book (it may have wrong cover or cover is not very readable on the e-ink screen) you can select this.
IGNORE METADATA: If your book metadata is not correct, name field may show useless information. Select this option to show the file name instead of metadata.
REFRESH CACHED BOOK INFORMATION: KOReader caches a book's metadata and book cover when you add it to your library. If you make some changes to the book after copying to your device, this information might need to be updated. If you see wrong cover or metadata, you can refresh the book information with this menu item.
Viewing archive files
You can open ZIP, CBZ and EPUB (as they are ZIP archives too) files with the archive viewer to have a look at the contained files:
In File Browser long-press the file name
Tap Open with…
Tap Archive viewer
Viewing image files
You can open image files with the image viewer instead of opening as a book. Files opened like this don’t show up in your history and have better scaling and rotation support.
In File Browser long-press the file name
Tap Open with…
Tap Image viewer
Setting file associations
You can also set file associations for file types which KOReader doesn’t automatically recognize. To associate a file with one of the KOReader providers, first long tap on your file in the File Browser then choose a provider engine to handle this file. You can check:
Always use this engine for this file to associate this provider with this particular file only
Or check Always use this engine for file type to associate this provider with all the files that has same extension as this one
From the same dialog, you can see the associations you made by tapping on View defaults for file types.
Accessing your books
Following methods are available for accessing your books and articles:
File Browser - As explained above
Favorites - A list which you can add your books by long pressing on them in the File Browser
History - List of books you opened
You can change how these screens look from:
⇑ TOP MENU (in File Browser) → → Display mode
If you want to change how many items are visible on these screens, look here:
⇑ TOP MENU (in File Browser) → → Settings → Mosaic and detailed list settings
You can assign gestures for each of these dialogs. For example while reading a book, you can access your History or Favorites with a gesture and open another book without going through the File Browser.
You can search a book in the History screen by filename or book metadata from the upper left hamburger menu button.
You can also set KOReader to start with Favorites or History screen instead of File Browser via:
⇑ TOP MENU (in File Browser) → → Start with
Folder shortcuts
KOReader allows you to add your favorite folders to a quickly accessible Folder shortcuts menu. For example if you have an Archive folder in your library that is under Home>Articles>Scientific>Archived, you can assign a folder shortcut to this Archived folder and access it quickly even while reading a book.
Adding a folder shortcut
There are two ways of adding a folder to your Folder shortcuts list:
When you are in the File Browser, tap right corner + (plus) menu button then tap Add to folder shortcuts item and enter a descriptive name for this shortcut. This will add the folder you are currently in.
When you are in the File Browser, long-press on a folder name to open the context menu. Tap Add to folder shortcuts item and enter a descriptive name for this shortcut. This will add the folder you pressed on.
Folders which are in your Folder shortcuts list will have a star (★) in the File Browser.
You can remove a folder from the shortcuts in the same way, by long-pressing on it and selecting Remove from folder shortcuts.
Viewing your folder shortcuts
You can open your Folder shortcuts from the File Browser or Reading screen while reading a book.
From the File browser: Top right corner + (plus) menu then choosing Folder shortcuts or assigning a gesture.
From the reading screen: By assigning a gesture to it.
It is under the File browser section of the Gesture manager. You can learn how to set gestures in the relevant section of this guide.
User Interface Tips
INFO KOReader’s user interface and options can change depending on the file type you open. There are two categories: Fixed layout documents (PDF, DJVU, image files...) and Reflowable documents (EPUB, HTML, DOCX, RTF, TXT…).
You can change the interface language via:
⇑ TOP MENU → → Language
If you tap and hold an option or menu item (font weight, line spacing etc.), you can set its value as DEFAULT. The new value will only be applied to books opened from now on. Previously opened books will keep their settings. You can identify default values as a star (★) in the menu or as a black border around the indicators as seen below:
On the BOTTOM MENU if you tap and hold an option’s name, you can see its explanation.
You can CLOSE full screen dialogs (History, Table of Contents, Bookmarks, Reading Statistics etc.) by swiping down.
You can take a screenshot by making a long diagonal swipe with your finger. Also touching opposing diagonal corners will take a screenshot. You can use this second shortcut for example when viewing an image.
In dialogs containing adjustment arrow buttons like the one above, you can tap and hold on arrow buttons to change the value in bigger increments.
You can CLOSE this type of dialog (non-full screen) by tapping outside of its window.
You can MOVE this type of dialog by holding its window title and dragging.
You can make this type of dialog SEMI-TRANSPARENT by tapping and holding the window title (when you want to see the text under it while adjusting a value).
KOReader supports dictionary lookup in EPUB and scanned PDF/DJVU documents. To see the dictionary definition or translation, just tap and hold a word.
Pressing and holding a word brings up a dialog where you can also search the selection in the document for more occurrences or look it up on Wikipedia.
If you want to change the size of user interface, there is a DPI setting for that:
⇑ TOP MENU → → Screen → Screen DPI
You can choose a value from the menu or select CUSTOM DPI to enter a value for fine tuning: Higher DPI = Bigger Interface
Note that there is also a Zoom (dpi) setting in the bottom bar. That one is related to the documents only. You can find the explanation in the next section.
You can disable black flashing (automatic partial refresh to clear ghosting) of user interface if it disturbs you:
⇑ TOP MENU → → Screen → E-ink Settings
If you want to check the current date you can tap on the clock in the TOP MENU.
Menu search
KOReader has lots of features so its menu system reflects this complexity. We have a Menu Search feature for finding menu items quickly. You can access it from:
⇑ TOP MENU → → Help → Menu search
Also you can assign this feature to a gesture or add it to your Quick Menu for faster access.
Scrolling types
KOReader has three types of touch scrolling. You can access this from:
⇑ TOP MENU → → Taps and Gestures → Scrolling
INFO You have to enable Continuous mode from the Bottom menu to be able to use scrolling.
Classic scrolling: This mode works exactly like your phone/tablet scrolling.
Turbo scrolling: This mode allows you to scroll faster than classic scrolling. Also you can scroll several pages without lifting your finger. Scrolling amount is proportional to the distance you move your finger after you initiated scrolling.
On-release scrolling: This scrolling type is more suitable for e-ink screens. Because unlike other scrolling types, this mode doesn’t refresh your page continuously while scrolling. It works like classic scrolling but intermediate steps are not shown. So you scroll with your finger and when you release, page jumps to that position. This is especially useful to reposition and adjust the view if your book contains pictures or tables and you want to see all of it.
Go back to previous location
This useful feature works like the Back button in your browser. When you jump to some other part of the book using Skim widget, Bookmarks list, Book map etc. KOReader remembers your previous location. This is useful for example if you follow an internal link or reference. With one tap you can go back to where you come from. You can access this feature from:
⇑ TOP MENU → → Go back to previous location
Also you can go forward too, from the same menu. This feature is assigned to ← → multiswipe gesture. You can assign this to another gesture if you want (like tapping a corner) or add it to your Quick Menu.
Prevent flashing on pages with images
KOReader normally perform a full refresh on pages containing images (which you can observe as a black flash). The reason is to get rid of the residue and ghosting from the previous page. But this might not be necessary depending on your device and personal preferences. You can disable this auto-refresh behavior here:
⇑ TOP MENU → → Screen → E-ink Settings → Full refresh rate → Always flash on pages with images
Partial rendering support
With the version 2023.03, KOReader gained partial rendering capability while reading EPUB documents. Before this version, when you made an adjustment like changing font size, the whole book had to be rendered again to be able to preview the new setting. Depending on the device and book size, this can take a while to calculate.
With this new feature, when reading EPUB documents, text appearance adjustments can be done much quicker by only rendering the current chapter.
INFO This is only possible if your EPUB is composed of multiple fragments. EPUB files are basically .zip archives that contain .html files. Some books can be a single .html file while others may be composed of multiple .html files like each chapter of the book is a separate .html file. If your book is only a single .html file, partial rendering can not work, because for each change KOReader still has to calculate the whole book.
Also rotating your screen orientation is now much faster thanks to this feature. This feature is ENABLED by default. If necessary, it can be disabled per book (with a tap), or globally (with a long-tap) on:
⇑ TOP MENU → → Document → Enable partial renderings
After these partial renderings, KOReader and the book enter a degraded state: You can turn pages but some info and features may be broken or disabled (i.e. footer info, ToC, statistics…). To get back to a normal working state, KOReader has to render the rest of the book too. While this is happening, an icon at the top left corner of the screen indicates the status:
Document is partially rendered. Page count, footer info and many things are innacurate. You can see how the new settings look and adjust further. You can also turn pages, jump links in this state.
A full rendering is happening in the background. You can still turn pages, jump links, change settings.
Full rendering is done, but not yet applied because KOReader is waiting for you to be idle to reload the rest of the book (idle=not interacting with the device). You can still turn pages, jump links, change settings.
You've been idle for a while so KOReader is now reloading the whole document.
At this step KOReader is blocked to prevent interaction.
When these icons are all gone, you are again in a fully working state. Generally this whole process is quick and as a user you don’t need to do anything extra. You can just adjust your settings and continue reading your book, KOReader will do the rest.
Bottom Menu Items Explained
TIP You can see an explanation of these items when you long tap on their names in the bottom menu.
VIEW MODE: If you change to CONTINUOUS mode you can scroll the document like a web page. This mode is more suitable for non e-ink screen types (LCD, OLED). In continuous mode you lose TOP and BOTTOM MARGINS so text may be cut on first and last line of screen. To solve this problem you can enable PAGE OVERLAP:
⇑ TOP MENU → → Page Overlap
RENDER MODE: This option determines how your document is rendered by KOReader. Default is WEB and generally you don’t need to change this setting. When a book (or saved web page) is very complicated (specified widths or margins, negative margins, floats etc.) and layout looks bad or overflow the screen, you can try other rendering modes.
ZOOM (dpi): This setting can be thought of as a general zoom factor for the document (except font size). At 96 dpi (which is the default setting), images in the document are rendered at their original dimensions. Basically you will use this setting if you want to make images bigger without making the text bigger.
WORD SPACING and WORD EXPANSION: These two settings are related and they determine how your text will look when it is justified. When you justify text, space is added between words so that both edges of each line are aligned with both margins. Since word counts of lines are not equal all the time, in justified alignment, text has to be compressed or expanded to fill the line.
WORD SPACING: How much the SPACE characters in a line of text can be compressed to fit more words. This setting doesn’t affect words, it only changes the space between them.
WORD EXPANSION: If you have too much white space in a line, how much of that can be distributed into the words by expanding them. This setting affects the appearance of words. If you don’t want your words to expand, set this to NONE.
You can experiment with different settings until the text looks pleasing to you, then set them as defaults via their respective dialogs.
CONTRAST and FONT WEIGHT are two options that you can use to make your text bolder (or lighter). You can achieve the same appearance with either of these options but they use different methods to achieve it. Of course you can use them both at the same time.
The differences between them can be summarized as:
CONTRAST
+ Doesn’t change font width, book length stays the same
+ Doesn’t need to re-render document, faster
- Might look bad on LCD or low DPI screens
FONT WEIGHT
+ Will use proper weighted fonts if you have them installed
+ Looks better on LCD or low DPI screens
- Has to re-render fonts, slower
FONT HINTING adjusts your text for maximum readability according to your screen’s pixel grid. NATIVE uses font’s internal hinting instructions, AUTO uses FreeType’s hinting algorithm. AUTO is a safer choice because font files that you installed may have problematic hinting instructions. Also AUTO handles CJK text better. You can try different settings to see which one looks better on your device.
FONT KERNING adjusts the spacing between letters to achieve a visually pleasing result. Default is BEST, which might be slower when opening files (depending on your device) but has better support for ligatures (see picture below for an example), joined Arabic glyphs and some other scripts. If your device is slow, you can try GOOD which is faster and may still look correct with western latin-script text.
ALT STATUS BAR enables an alternative status bar which is available only in reflowable documents (EPUB, HTML, DOCX, RTF, TXT…). After enabling it here, you can configure ALT STATUS BAR via:
⇑ TOP MENU → → Status Bar → Alt status bar
EMBEDDED STYLE and EMBEDDED FONTS determine if publisher’s styles and fonts embedded in the document will be used (or ignored) to render the document. These are general on/off switches. You can achieve more fine tuned tweaks for your document via:
⇑ TOP MENU → → Style Tweaks
IMAGE SCALING determines how images in your document are rendered. BEST looks more pleasing but it is slower.
Saving your text appearance settings for later use
This powerful feature allows you to save all the BOTTOM MENU settings + font type as a profile. This means you can have different group of settings for different conditions or book types which you can apply at once instead of changing the settings manually every time.
For example you can create a:
Double column profile with two columns of small sized text, landscape orientation and minimum margins
Night reading profile with bigger sans serif font and higher contrast for more visible text under low light
Disabled styles profile with embedded style and embedded fonts disabled for badly structured books
After adjusting your settings to your liking, you can create a profile from them via:
⇑ TOP MENU → → Profiles → New with current document settings
After creating a profile with your settings, you have many options for applying it to another book:
INFO *Font selection and style tweaks are available only on reflowable documents (EPUB, HTML, DOCX, RTF, TXT…). Fixed-layout documents like PDF/DJVU are not supported.
You can also change other formatting options from the BOTTOM MENU to fine tune the appearance of your text.
You can see your reading statistics via:
⇑ TOP MENU → → Reading Statistics
How can I control the backlight / frontlight of my screen ?
You can control your screen light via this menu. If you have warm lighting (normal white LEDs+orange ones) you can control them separately from this dialog. You can also define a gesture for this dialog:
⇑ TOP MENU → → Frontlight
How can I configure the status bar ?
You can configure bottom status bar from this menu. Feel free to explore the SETTINGS sub-menu to customize your status bar as you like.
⇑ TOP MENU → → Status Bar
There are many items you can show on the status bar. But by default, only one is shown at a time and you have to tap on the status bar to cycle between them. If you want to show all items at once, enable this menu item:
⇑ TOP MENU → → Status Bar → Settings → Show all at once
You can sort the items via:
⇑ TOP MENU → → Status Bar → Settings → Sort items
You can toggle the visibility of the status bar with a gesture or via Quick Menu:
Gesture selection menu → Reader → Toggle status bar
There is also an ALT STATUS BAR which is available in reflowable documents (epub, html, docx, rtf, txt…). If you prefer to use this, you can enable via:
⇓ BOTTOM MENU → → Alt Status Bar
Using "Custom Text" item for status bar alignment
There is a special status bar item named Custom text. This item can show your chosen text in the status bar. You can use this feature to create a separator between the status bar items.
First enable this option with a short press on it from this menu
⇑ TOP MENU → → Status Bar → Custom text: ‘KOReader’
Then long-press on it again to open its settings. Enter a "space" character in the first box and enter the number of repetitions in the second box, which will determine how wide your separator will be.
You can choose another character as a separator. You can also move this item like other status bar items to change its order.
How can I change the screen displayed while sleeping ?
You can choose a book cover or a custom image as screensaver via this menu:
⇑ TOP MENU → → Screen → Screensaver
You can use JPG/PNG files as screensaver (properly dithered grayscale images look best). Transfer the files from your computer into any folder on your device. And choose this folder as your screensaver folder via this menu:
Tap outside the input field to close the keyboard, tap the input field to show the keyboard again
Swipe up keys to enter uppercase version of that letter (or lowercase if you are already in shift mode)
You can change the appearance of the keyboard:
⇑ TOP MENU → → Device → Keyboard → Keyboard settings
You can select more than one layout:
⇑ TOP MENU → → Device → Keyboard → Keyboard layout
You can change between your selected layouts by tapping the icon on the keyboard
Entering extra characters
Koreader keyboard allows entering extra characters when you tap and hold a key. Most frequently used extra characters are shown below. You can tap and hold the key in the gray box to get the surrounding characters:
In addition to the long-press popup, you can also enter these extra characters by swiping on a key. In the example below, you can swipe up on the a key to enter an uppercase A or swipe other directions to enter the characters shown. Note that the example shown includes the full popup for demonstration. You don’t need to open this popup, you can directly swipe on the keys. Once you get used to the locations of the extra characters, you can enter them much quicker this way.
If this feature interferes with your usage, you can disable it by unchecking:
⇑ TOP MENU → → Device → Keyboard → Swipe to input additional characters
Additionally there are some shortcuts for easier text manipulation. You can tap and hold these keys for the actions:
Backspace - Deletes all characters from the cursor to the beginning of the line
Left Arrow - Moves the cursor to the beginning of the line
Right Arrow - Moves the cursor to the end of the line
For more information you can check the related wiki page:
KOReader also integrates the Chinese stroke keyboard for inputting simplified and traditional Chinese characters. You can find more info about it in our wiki:
This plugin allows you to adjust frontlight warmth in devices with natural (yellow/orange) light and set Night Mode (inverted screen colors – white text on black background) automatically according to a schedule. It can control them both or you can choose only warmth control or only Night Mode control mode, so you can adjust the other one manually.
This plugin comes enabled as default. If it is not in the menu, you can enable it via:
⇑ TOP MENU → → More tools → Auto Warmth and Night Mode
INFO If you have a PocketBook device and frontlight or warmth slider is not working in KOReader, please be sure that in the PocketBook reader (which comes with your device) SmartLight-Auto option is set to Disabled.
You can adjust the warmth of your screen frontlight automatically in two different ways:
FIXED SCHEDULE: In this mode your frontlight warmth changes according to the daily schedule you entered. This mode is STATIC, it doesn’t account for daylight length. The schedule stays the same all around the year.
SUN’S POSITION: This option calculates Sun’s position in your location according to COORDINATES and ALTITUDE information you entered. Frontlight warmth is adjusted gradually according to this calculated Sun position data. This mode is DYNAMIC. As the length of daylight changes around the year, plugin adjusts the schedule accordingly.
First have a look at this image to familiarize yourself with the terms used in the plugin:
Fixed Schedule Mode
Go to the plugin menu:
⇑ TOP MENU → → Screen → Auto Warmth and Night Mode
Tap Activate menu item and then ACCORDING TO THE FIXED SCHEDULE
Go back to previous menu and tap FIXED SCHEDULE SETTINGS menu item
Set your warmth transition schedule by setting times for various items here. Refer to the image above for an explanation of items.
Sun’s Position Mode
Go to the plugin menu:
⇑ TOP MENU → → Screen → Auto Warmth and Night Mode
Tap ACTIVATE menu item and then ACCORDING TO THE SUN’S POSITION
Go back to previous menu and tap LOCATION SETTINGS menu item. Set your coordinates (necessary) and altitude (optional) correctly and give a name to your location.
Go back to previous menu and tap WARMTH AND NIGHT MODE SETTINGS menu item
Set your warmth transition schedule by setting times for various items here. Refer to the image above for an explanation of items.
You can see your current schedule via CURRENTLY ACTIVE PARAMETERS menu option.
Night Mode
While setting the warm light percentages for different intervals, you can also set that interval to Night Mode, which inverts the screen colors when that interval starts. If your minimum frontlight is still too bright or if you prefer a dark page background, you can activate this feature. To enable this, in the dialog below, tap the Night mode checkbox and tap Set.
When you do this, a moon icon will appear in the menu next to this interval. To disable night mode, just disable the Night mode checkbox in that interval.
Frontlight auto on/off
This feature turns your frontlight on at sunset and turns it off at sunrise according to your Currently active parameters in this plugin. You can override this change by manually turning your frontlight on/off. On the next sunrise/sunset, AutoWarmth will toggle it again if it is necessary. You can activate it by selecting Frontlight off during the day menu item in this plugin.
Faster warmth change tip
If you want your frontlight warmth to change quickly instead of a more gradual change:
Set the mode to Fixed schedule following the instructions above
And adjust the settings similar to the image below:
As you can see in these settings above, there is only a one minute difference between day-night transition. So the screen warmth goes from 0 to 100 (or reverse) in only one minute. You can increase this time separation to make the transition duration longer.
Fonts
How can I add my own fonts ?
KOReader supports fonts in most widely used TrueType (.ttf) and OpenType formats (.otf). Font files with these extensions can be directly copied to /koreader/fonts/ folder on your device. Check the wiki for more info:
When starting up, KOReader compiles the available fonts from the font metadata/info and classifies them according to family and weights. This means you can add different weights and variants of a font and KOReader will try to use the most suitable one. Since it takes font family information from metadata, font names are not important when copying to your device. Installed fonts will be available after restarting KOReader.
Here are some example fonts that look good on an e-ink screen. You can find more of them on the Google Fonts website:
If you are planning to use your own monospace font, probably you already have a favorite one, so we are not offering any examples here. But you can find and compare many monospace fonts at this page: https://www.programmingfonts.org/
Previewing the fonts on your device
KOReader can generate a document with sample text rendered with all the fonts installed on your device. This allows you to quickly compare the look and features of the fonts like ligatures and character sets in non-Latin scripts like Greek, Hebrew or Chinese. You can access this feature via:
⇑ TOP MENU → → Font → Font settings → Generate font test document
Monospace font scale
If your book includes parts with Monospace fonts (like in programming books), Monospace font might look disproportional even if they are technically at the same size. This is caused by differing font metrics.
If you want to fix this difference, KOReader has an option that allows you to adjust the relative Monospace font size.
⇑ TOP MENU → → Font → Font settings → Monospace fonts scaling
Here you can increase or decrease the size of your Monospace font by adjusting its scaling as a percentage of the default size.
Using different fonts in one document
In HTML/CSS based documents like EPUBs, books can specify to use fonts by family instead of a specific font name. These families can be Serif, Sans-Serif, Monospace, Cursive, Fantasy, Emoji, Fang Song and Math. For example in a book, normal text can be shown in Sans-serif while dialogues are shown in Serif font. KOReader normally uses your default font for all these families except Monospace and Math (which is determined by the style of the text nodes, for example 'font-family: serif'). If you want these families to look distinct, you can assign specific fonts for them here:
⇑ TOP MENU → → Font → Font-family fonts
To change a family font for the current book just tap on the desired font name. If you want to set this for all your books, long-tap to set it as a Default (★). If a book abuses this font family feature to the point where your default font is hardly used, you can disable that family font for this book by unchecking the association.
Changing font quickly
If you are switching between fonts frequently (i.e. monospace for programming books and serif for novels) there is a workaround which makes this easier than going into the menu each time. You can create profiles for your fonts and all font related settings like line spacing, contrast, bold etc. and add these profiles to a Quick Menu. So with a single gesture you can open your font selection menu and change the font like shown in the image below:
There are many different ways of moving through your document in KOReader.
You can use the SKIM WIDGET, BOOK MAP or PAGE BROWSER features.
Skim Widget
You can also open this widget with a long-tap on the Status Bar in addition to:
⇑ TOP MENU → → Skim document
Chapter Marks
KOReader can show chapter boundaries from your documents on the SKIM WIDGET and PROGRESS BAR.
If your document has too many heading levels, your chapter marks can look crowded like the example above. You can change the depth of visible ToC mark levels via:
⇑ TOP MENU → → Settings → Progress Bars
You can also use this reduced ToC for:
chapter titles (if it is shown on Status Bar)
chapter navigation
reading time left estimates
These options are in the same menu.
If your document doesn’t have a Table of Contents, you can enable ALTERNATIVE TABLE OF CONTENTS. When this setting is enabled, KOReader will build a ToC from document headings (if available) or from individual HTML files in the EPUB. Long press on this menu item for extra info:
⇑ TOP MENU → → Settings → Alternative table of contents
You can find more info about the table of contents tools available in KOReader in this relevant section of the guide: TABLE OF CONTENTS TOOLS
Book Map
Book map is a powerful and unique feature of KOReader which can be very useful for getting an overview of a book. For example if you are reading a book non-linearly by skipping some parts to read them later, it would be hard to track your progress. Book Map can show you which parts of the book you have already read, at a glance.
Additionally you can:
See how much time you have spent on each page (if Reading Statistics plugin is enabled)
Check which pages have bookmark, highlights and notes
Navigate directly to any part of the book like the SKIM WIDGET
You can access Book Map via menu and you can also assign a gesture for quicker access:
⇑ TOP MENU → → Book map
User Interface And Controls
When you open the Book Map first time while reading a book, it will be in Grid View mode, fitting all chapters on a single screen to give the best initial overview of the book’s content. To get a detailed information about usage, tap the info icon at the upper left corner. You can close the Book Map by tapping X on the upper right corner or with any multiswipe gesture (UP-DOWN, LEFT-RIGHT etc.).
You can customize Book Map by changing these options:
- First try swiping LEFT and RIGHT along the bottom edge of the screen to change width of columns indicating pages and observe how it changes the scale of map
- Then try swiping UP and DOWN along the left edge of the screen to change chapter title depth and switch to the Flat View. See examples below.
In addition to default Grid View above, here you can see the Flat View on the left and Grid View without chapter titles on the right. Note the changing left vertical scrollbar between views. If you want to switch back to the default view, you can long-press the info icon at the upper left corner.
Book map options
When you tap the menu icon on the Book map screen you are presented with the menu above. Menu options are explained below:
About book map: Short explanation of Book map usage and icon descriptions.
Available gestures: Gestures you can use to change the settings of Book map instead of using this menu.
Page browser on tap: If this is checked, when you tap on a page in Book map, Page browser opens. This shows you an overview of the area you selected. If you disable this option, a tap in Book map directly takes you to that page. But remember, depending on factors like your screen size, touch screen sensitivity, tap accuracy etc. you might end up in adjacent pages.
Switch current/initial views: If you customized your Book map view, tapping this switches between the default view and your customized view.
Switch grid/flat views: Switch between separate chapters or continuous chapters views.
Chapter levels: Change the depth of chapter/sub chapter levels.
Page slot width: Make each page slot wider or narrower.
10-page markers: As you increase this value, first it will add markers to every 10th page, then it will make them bigger and eventually it will add markers to every 5th page.
Page Browser
Page Browser can be used to navigate between pages like in a photo album by showing thumbnails of the pages as a grid. You can open Page Browser by tapping on the Book Map or from the menu. You can also assign a gesture for quick access.
⇑ TOP MENU → → Page browser
You can change the number of pages shown by swiping along the TOP and LEFT sides of screen. Icons on the bottom are the same as Book Map. Actually the bottom part is a linear version of the Book Map.
Alternative theme for Book map and Page Browser
Book map and page browser has an Alternative theme with a different shading scheme which you can activate from their hamburger menus. This theme uses alternating colors for the chapter headings so chapter boundaries is more visible in the Book map and Page browser. But the usage of gray color in this theme requires flashing to black so it might be distracting for some users. You can try both and use the one you like.
Table of Contents Tools
Some of the digital books you come across might not have a proper table of contents (ToC). Depending on the preparation of the book, you can experience these ToC problems:
No ToC in the book, so you can’t jump between the chapters or see the remaining reading times
There is a ToC but it is not very useful because it has wrong or missing chapter titles
KOReader has some features that you can use when reading books with a problematic table of contents section.
Note that Alternative table of contents is not available on fixed layout documents like PDF, DJVU etc. because it requires HTML tags to create a ToC. Custom table of contents and Custom hidden flows features are available on all file types.
Automatically creating a table of contents: ALTERNATIVE TABLE OF CONTENTS
First feature is the Alternative table of contents which you can find in:
⇑ TOP MENU → → Settings → Alternative table of contents
INFO An EPUB document is basically a ZIP file containing one or more HTML files. Your book might be one big HTML file for the whole book or it might contain separate chapters as individual HTML files (which is a better structure).
Alternative table of contents tries to create a ToC from the headings in your book (H1 to H6 tags in the HTML files in your EPUB). If your book doesn’t contain any headings, it will try to build a ToC from the document fragments (individual HTML files in your EPUB book) which will point to the beginning of each file.
You can choose which heading levels to include (or ignore) in your ToC from this menu:
⇑ TOP MENU → → Style tweaks → Miscellaneous → Alternative ToC hints
Manually creating a table of contents: CUSTOM TABLE OF CONTENTS
Custom table of contents feature allows you to create your own ToC from the selected parts of your book. This ToC can contain only one level so you can’t have sub-chapters while using this feature. To create your own ToC, first enable:
⇑ TOP MENU → → Settings → Custom table of contents
Once you enable this feature, new menu items will be added to the user interface which allows you to select your chapters. You can add a chapter to your ToC from two places:
From a highlight: While reading a book, select a text like you are highlighting it or long press on a word. In the popup menu you will see the Start TOC chapter item. When you press on it, you will see a dialog asking you to enter your chapter title. The text you selected will be already entered in the dialog. Edit your title if necessary and press create.
From the Page browser: Open the Page browser via
⇑ TOP MENU → → Page browser
Long press on the page thumbnail that you want to be the beginning of your chapter and select Start TOC chapter item from the popup menu. You will see a dialog asking you to enter your chapter title.
When you are done creating your ToC and don’t want to see these extra buttons, you can disable them by unchecking:
⇑ TOP MENU → → Settings → Custom layout features → Edit mode
Creating this ToC will not alter your original ToC which comes with your book. You can clear your Custom table of contents from this same menu (in case you want to create a new one). And you can disable this feature completely in the same way you enabled it, if you want to return to the original ToC. Note that if you disable this feature after creating a custom ToC to return to the original one, your custom ToC will not be deleted. You can still switch between the original and your custom ToC.
Excluding sections of your book: CUSTOM HIDDEN FLOWS
Some books or documents might contain long footnotes or bibliography sections. Like a scientific book which is 250 pages long but last 50 pages are Appendices, Index and References. Normally these pages are included in the progress bar and reading time calculations since they are part of the book. But generally these sections exist as a reference and they are not read completely so you might want to exclude them to make your remaining page count and time estimates more accurate. Or maybe you have an anthology book which contain some stories you have already read. Custom hidden flows feature of KOReader allows you to exclude these kind of parts of your book.
Have a look at the image for an overview of the process. Steps will be explained after the image:
How to exclude a section by creating a hidden flow
Go to the first page of the section you want to exclude
Open the Page browser via:
⇑ TOP MENU → → Page browser
Long press on the page thumbnail that you want to be the beginning of your excluded section and select Start hidden flow here item from the popup menu.
You will see that the pages starting from your selection now have a gray hatched background.
Now go to the last page of your excluded section. You can navigate there from the Page browser or using other ways like Book map, Skim widget etc.
Once you are at the last page of your excluded section, open the Page browser again (if you are not already in it).
Find the last page of your hidden section and long press on the next page. Choose Restart regular flow here from the popup menu. You will see that the background of the remaining pages will return to normal color, indicating the end of hidden flow and the beginning of regular flow.
Working with the hidden sections
When you create a hidden flow section as described above, KOReader’s behavior will be similar to the situation as if you removed a section of a paper book by cutting it out:
These hidden flow sections will be skipped when turning pages. For example assume that you created a hidden flow for Chapter 10. Now you are on the last page of Chapter 9. When you turn the page, you will see Chapter 11.
Page numbering will continue as if these hidden flow sections do not exist.
These hidden sections will not be shown in your Progress bar (but read the explanation below) and will not be considered in time to read calculations. But they will still be visible in the Skim widget.
Following direct links to the pages included in these hidden flow sections will still work. Also you can still reach these sections from the Table of contents, Book map, Page browser, Skim widget.
As we said above, your hidden flows will be excluded from your Progress bar. But if you jump to one of your hidden sections using any of the methods mentioned above, your Progress bar temporarily becomes this hidden section’s progress bar. You can imagine this as the progress bar is zooming into that hidden flow section. If you exit out of this hidden section by turning the page at the end of it, or using other navigation tools, your Progress bar will go back to showing the whole book again (with your custom hidden flows again not visible).
Removing and cleaning up hidden sections
You can remove individual hidden flow sections from the Page browser in the same way you created them. You can also clear all of them at once with the menu item:
⇑ TOP MENU → → Settings → Custom layout features → Clear all marked pages
As you work on creating hidden flows by tagging pages as Start hidden flow or Restart regular flow, some of the previously made ones may stop having an effect. For example in the case that you make Start hidden flow a few pages before an existing Start hidden flow, that existing one is no longer involved. This overlapping or obsolete tags are remembered for practical purposes. Again in the previous example, if you end that second hidden flow before the existing-but-no-longer-involved Start hidden flow, this deactive one will be involved again. You can clear all these inactive markers if they interfere with your custom flows, or once you finish making your hidden flows and happy with the results:
⇑ TOP MENU → → Settings → Custom layout features → Clear inactive marked pages
Hidden sections and progress bar
As we said above, your hidden flows will be excluded from your Progress bar. But if you jump to one of your hidden sections using any of the methods mentioned above, your Progress bar temporarily becomes this hidden section’s progress bar. You can imagine this like the progress bar is zooming into that hidden flow section. If you exit out of this hidden section by turning the page at the end of it, or using other navigation tools, your Progress bar will go back to showing the whole book again (with your custom hidden flows again not visible).
BOOKMARKS, HIGHLIGHTING AND NOTES
KOReader gives you options to interact with your book like you can do with a real book:
Bookmarks: You can add (and remove) a bookmark by pressing the upper right corner. This is the equivalent of folding the corner of a page on a real book and shows a similar icon when you enable it.
Highlights: You can highlight text in 4 different styles. In the image below, you can see a normal paragraph followed by different styles of highlights. Lighten (with gray background), Underline, Strikeout and Invert.
You can use all these styles at the same time, like they are different colored highlight markers. Or you can decide your favorite style and set it as default from this menu by long pressing:
⇑ TOP MENU → → Highlight style
Notes: You can also add notes to your highlights. Just tap on a highlight and choose Add note from the popup menu. You can also choose a Note marker that shows which highlights contain a note. There are three styles: Underline, Side line and Side mark (which is the pencil icon shown on the right side of the picture below):
To enable this feature and choose a Note marker style, go to:
⇑ TOP MENU → → Highlight style → Note marker
How to highlight
KOReader has two highlighting modes for different use cases:
Normal mode is similar to selecting a text with your finger on a phone/tablet and more suitable if your highlights are shorter than one page.
Select and highlight mode is more suitable for highlighting longer passages which cross page boundaries. It might also work better if you have touch screen sensitivity problems or motor control issues with your hands. Because in this highlight mode you don’t need to drag your finger along the screen.
Normal mode
This mode is similar to selecting a text with your finger on a phone/tablet.
Long-press on the starting word
Move your finger to the end of the passage
Release finger
When you reach page boundaries, KOReader will turn the page for you to continue highlighting (only in EPUB/HTML documents). You can disable this feature from:
⇑ TOP MENU → → Taps and gestures → Long-press on text → Auto-scroll when selection reaches a corner
Select and highlight mode
INFO If you have dictionary lookup enabled when long pressing a word, you have to drag your finger to initiate this mode.
⇑ TOP MENU → → Taps and gestures → Long-press on text → Dictionary on single word selection
Long-press (or drag if dictionary lookup is enabled as described above) on the starting word, popup menu will show up.
Tap on Select, now you are in highlighting mode. When you are in this mode, you will see an indicator at the upper left corner of the screen (which you can tap on it to get more information). You can cancel highlighting by tapping on the beginning of highlight again. You can turn pages with taps/swipes and freely navigate the document (TOC, skim etc) in this mode.
Long-press (or drag if dictionary lookup is enabled as described above) on the ending word for your highlight, menu will show up again.
Tap Highlight this time to finish highlighting the passage.
This dialog normally opens at the center of the screen. If you want this dialog to open closer to your highlight location, you can change the center option here to gesture position (located on the second page of this menu):
⇑ TOP MENU → → Taps and Gestures → Long-press on text → Highlight dialog position
TIP There is a faster method for this mode if you don’t need long-press menu items shown above. You can disable the popup menu completely so when you long-press on a word you will immediately enter the Select and highlight mode. This method is much faster and you can highlight any length of text with just two taps. To use this method enable this option:
⇑ TOP MENU → → Taps and gestures → Long-press on text → Select and highlight
TIP KOReader can highlight a passage in different styles. If you use Lighten option, text background will be gray. Due to e-ink limitations, screens can’t change from white to gray directly, so highlighted part first has to turn black and then gray. If you want to avoid this flashing, you can choose Inverted as your highlight style. In this mode text background will be black so it can be set without flashing. You can adjust these highlighting options via:
⇑ TOP MENU → → Highlight style
TIP You can add multiple highlights and notes to the same section of text. If they are overlapping, when you tap on a highlight you will be presented with a menu to choose which highlight you want to edit.
Selecting punctuation
When you are highlighting, KOReader tries to include the related punctuation marks around your selection. For example if you highlight from the first word to the last word of a sentence, KOReader will automatically include the punctuation marks at the both ends of the sentence to your highlight.
But if you start highlighting from the middle of a sentence, period at the end will not be included because KOReader assumes that you want to make a partial highlight. So if you want the punctuation marks to be added to your highlight, be sure that you select the whole sentence. Also you can add these marks later by long pressing the Highlight edit buttons.
Editing a highlight
When you tap on an already highlighted text (without a note), you will see this popup menu. Delete and Add note items are clear. Bottom row menu items are used to extend or shrink the highlight.
INFO This adjustment works only on reflowable documents like EPUBs. If you want to extend or shrink a highlight on PDFs, you have to delete it and highlight again due to the limitations of the PDF format.
When you tap on an already highlighted text with a note added, you will see this popup menu. Tap on Edit highlight to open the menu above where you can edit both the highlight and the contained note:
On your Bookmarks page you can filter the view to see only one type of bookmark by pressing the menu icon ( ) You can also filter by highlight style:
Exporting your highlights
After finishing a book, you can move it to a specific folder for archiving or processing purposes. Enable Move to archive plugin and set your target directory in the plugin’s settings (Set archive folder). After this, you can move a book to your archive folder using:
Move to archive plugin menu
With a gesture or
With a Quick Menu entry
KOReader provides different ways of exporting your highlights and notes from your reader device:
1. Export Highlights plugin
This versatile plugin can export your highlights to local files or online services.
Local export: You can export your highlights to your device in these file formats:
Text (.txt)
HTML (.html)
Markdown (.md)
Kindle Clippings (.txt)
JSON (.json)
You can choose your preferred export formats from:
⇑ TOP MENU → → Export Highlights → Choose formats and services
You can see the export location (and also change it if you want):
⇑ TOP MENU → → Export Highlights → Choose export folder
Online services: You can also export to these services over the network:
After selecting your formats, you can export the notes for the current book or all the books in your library from the same plugin menu.
If you want to export only some of the books in your library, you can do this from the File Browser:
Select multiple books in the File Browser
Tap on the menu button (shown as a check mark) at the top right corner
Select Export highlights from the menu shown
2. Using KoHighlights
KoHighlights is an external program that you can install on your computer. It can access your book notes and highlights when you plug your reader to your computer. Check the project page for download and instructions:
Calibre is an external program that you can install on your computer. You can import highlights into your Calibre database with its KOReader Sync plugin. You can install the mentioned plugin within the Calibre application. Check the project page for download and instructions:
INFO When you open a document in KOReader, it creates a directory alongside the document with same name as the document. This directory contains a .LUA file which includes all the highlights, notes and user options (formatting properties etc.) related to that document. You can manually backup/restore these directories.
READING PDFS
Reading large PDFs on a small screen
KOReader provides you many ways to read a PDF/DJVU document which is optimized for bigger (generally it is A4 or Letter) page sizes on your smaller screen device:
1. You can enable REFLOW
⇓ BOTTOM MENU → → Reflow
Reflow tries to extract the text portion from your document (if it is available) and format it as a single column. Results are generally satisfactory. You can also set this as DEFAULT by tapping and holding on it.
2. You can enable ZOOM TO CONTENT
⇓ BOTTOM MENU → →
With this option KOReader tries to crop margins from your document so text may look bigger on your screen. You can set FIT to WIDTH in the same menu which will try to fit only page width instead of whole page, so your text will look bigger.
3. You can try to use your device in LANDSCAPE orientation
This will make your screen wider so your document may look big enough to read comfortably.
⇓ BOTTOM MENU →
4. You can see your document at full size and scroll the screen to read different parts
This is especially helpful with comic books. First enable COLUMN MODE from this menu item:
⇓ BOTTOM MENU → →
Then select an appropriate flow direction for your document from the same menu:
For example if you are reading an article which has two columns, you will scroll down until the end of page reading left column then go to right upper side to continue reading right column:
Or if you are reading a comic book, you will want to go “right → down left → right” in a zigzag pattern:
For a Japanese comic book (right-to-left panel order) this might be the reverse:
In this mode you can also adjust Horizontal/Vertical Overlap and Number of Columns from the same menu to fit the text on your screen better. Feel free to experiment with these settings.
Explanations Of Pdf Specific Bottom Menu Items
CONTRAST This setting adjusts black levels in your document. Be aware that same contrast value applies to both text and images in your document. If you set it very high, your images may become too dark to be readable.
DEWATERMARK Removes watermarks from the rendered document. It can also be used to remove gray backgrounds. This feature can convert a grayscale or color document to black & white to produce more contrast for easier reading.
RENDER QUALITY(REFLOW MODE) Sets the quality of text and image extraction processing and output. HIGH is more pleasing but it can be much slower (several seconds for page turn) than DEFAULT depending on your document. If your PDF/DJVU files are slow, this is the first setting you should check.
DOCUMENT LANGUAGE Sets the language to be used by the OCR engine.
FORCED OCR Force the use of OCR even if the document has a text layer
WRITING DIRECTION(REFLOW MODE) Text direction of original document. Set to RTL for languages like Arabic and Hebrew.
DOCUMENT COLUMNS(REFLOW MODE) Number of text columns in the original document.
AUTO STRAIGHTEN feature can straighten the pages of a problematic document, for example pages of a PDF which are scanned with an angle. It is available in PDF, DJVU, CBZ/CBT documents and image files. To enable, choose the maximum tilt angle which KOReader will try to correct. If it doesn’t correct you might have to choose a bigger angle. Note that this feature might slow down your reader depending on several factors.
OCR (Optical Character Recognition)
OCR (Optical Character Recognition) is the process of extracting text from images into machine readable format. In KOReader context, it is generally used for extracting text from scanned book pages in PDF files. KOReader relies on Tesseract Open Source OCR Engine for this task (https://github.com/tesseract-ocr/tessdoc).
In order to use this feature you need to:
Install Tesseract language data to your KOReader
Add newly installed languages to koreader/defaults.lua configuration file
(necessary only if your language is other than English or Chinese)
This feature makes reading comic books easier on smaller screens. You can enable it while you are reading a PDF, DJVU, CBZ or CBT document via:
⇑ TOP MENU → → Panel Zoom (manga/comic)
When this option is enabled, KOReader tries to find the boundaries of rectangular panels on the screen. If you long-tap on a panel, KOReader zooms in to that panel. As you can guess, this feature works best with comics that has clean panel boundaries. Procedure can be seen below:
If you want to use this feature with other file types like EPUB, FB2, HTML or image files, you should open the file with a different engine: In the File Browser long-tap on the file name, tap Open with… and select MuPDF.
PREPARING AND TRANSFERRING YOUR DOCUMENTS
Transferring books to your reader
KOReader supports PDF, EPUB, DJVU, MOBI, CBZ, CBT, DOCX, RTF, HTML, TXT, XPS, FB2, PDB, CHM and ZIP files.
KOReader can reflow PDF documents (this option can be found in the bottom menu while reading a fixed-layout document like PDF) to make them suitable for the small screens of e-readers. But for best results, you may want to convert your documents into more flexible EPUB format. You can use Calibre (https://calibre-ebook.com/) for all kinds of conversion between formats.
There are many ways to transfer your documents to your device. Note that you may need to restart KOReader to index the transferred documents (or refresh directory if you have Pocketbook/Android).
In addition to transferring files the same way you would with the built-in reader application, other options are available depending on your device:
USB mass storage mode within KOReader: This mode is available for KOBO and some CERVANTES devices.
Cloud storage (Dropbox/FTP/Webdav): To use this function you have to add accounts for a cloud storage server via menu shown below. Process is explained via INFO buttons while adding accounts:
⇑ TOP MENU (in File Browser) → → Cloud storage
SSH/SFTP access: KOReader can act like an SSH server, which you can access from a computer to transfer files (available on Kobo, Kindle, Cervantes). You can use an SFTP application (like Filezilla) or access via your file manager if your operating system supports. Check wiki for how-to: https://github.com/koreader/koreader/wiki/SSH
Some books don’t come with proper book covers. Or they may have their cover on the second page so it doesn’t show up properly. Or maybe the cover is not suitable for e-ink (too light or dark). Or you prefer to set some image from the book as cover.
In situations like this you can quickly take a screenshot and set it as the current book’s cover. Screenshot gesture is a long diagonal swipe by default. Also touching opposing diagonal corners will take a screenshot. You can use this second shortcut when viewing an image. After taking your screenshot you can select Set as book cover from the dialog.
You can remove this custom book cover here:
⇑ TOP MENU → → Book information
On the book information page, long-press on the Cover image item and then select Reset custom.
You can also reset the book cover with the Reset dialog, which you can access by long-pressing the filename in the File Browser.
WARNING Be very careful when using this Reset dialog and be sure that only Custom cover image item is checked otherwise you can reset everything related to your book accidentally.
Optimizing EPUB/PDF documents for your mobile reader device
Most widely used applications for converting or optimizing your document for your mobile reading device are Calibre (EPUB, Kindle focused) and K2pdfopt (PDF focused).
Calibre can convert your documents between many formats. It also has a built-in editor that allows you to edit e-books (and fix problems) in the most popular e-book formats, EPUB and Kindle. https://calibre-ebook.com/
K2pdfopt optimizes PDF/DJVU files for mobile e-readers and smartphones. It works well on multi-column PDF/DJVU files and can re-flow text even on scanned PDF files. It can also be used as a general PDF copying/cropping/re-sizing/OCR-ing manipulation tool. https://www.willus.com/k2pdfopt/
OCRmyPDF is a command line application which can add an OCR text layer to scanned PDF files (containing only images without text), allowing them to be searched or copy-pasted. It can especially be useful for reading old scanned books. It can also optimize the images for a smaller file size. https://github.com/ocrmypdf/OCRmyPDF
SingleFile is a browser extension for Mozilla Firefox, Google Chrome and Microsoft Edge. This extension allows saving a web page as a single .html file with all resources (images, stylesheets, scripts) embedded. https://github.com/gildas-lormeau/SingleFile#install
ZIP file support
KOReader can read files stored/compressed in ZIP files. A ZIP file can contain many types of documents like html, txt or images. KOReader can open your ZIP file properly if you give it a hint for the type of file in the ZIP archive. If you give your file only a .zip extension, KOReader will assume that this archive contains images and try to open it like a CBZ file.
DEFAULT CASE: yourfilename.zip - Assumed to be a zip file of images (and opened by MuPDF engine)
If your zip file contains one of these types (instead of just images), please name it accordingly:
FictionBook - yourfilename.fb2.zip
HTML - yourfilename.htm.zip / yourfilename.html.zip
Text log files - yourfilename.log.zip
Markdown - yourfilename.md.zip
Rich Text Format - yourfilename.rtf.zip
Plain text - yourfilename.txt.zip
If the documents are not named like this, the wrong reader/format engine is likely to be used and you will see the No reader engine for this file or invalid file message. You can rename this file as explained above or long-press the filename and then choose Open with... to select the correct engine.
Optimizing manga for your mobile reader device
If you like reading manga books on your e-ink device there are some tips that can make your experience better. Preparing your own manga files is the best solution if you're not satisfied with how comics look on your device.
File type
File types like MOBI and EPUB are not suitable for handling primarily image content (e.g., manga/comics). MOBI support in KOReader is minimal to nonexistent, and EPUB’s text rendering priorities can cause problems when showing full-page images. For further technical details:
Your best option is building a CBZ file which works better in KOReader. A file with .cbz extension is a zip file (with no compression) that is a collection of images. It saves multiple images, commonly .png or .jpeg files, organized into pages of the comic. KOReader can also open CBT files, which are similar to CBZ files but use TAR archive format.
Easiest way to convert a manga to CBZ is to get the manga as images from various websites, then convert them using Kindle Comic Converter (https://github.com/ciromattia/kcc). There are some useful settings like auto-rotating two-page splits to landscape and applying dithering so that eink-rendered gradients are smoothly dithered without jagged layers.
Resolution
The best results can be achieved by resizing your images to exactly your e-reader screen size. A screen-specific CBZ which targets the exact screen size of the device, prevents rescaling during reading. KOReader downscales your images to your screen size while reading but this is not recommended because KOReader adds a dithering pass before scaling and this causes loss of quality.
But if you want to use your hand made CBZ on more than one device or you want to preserve high resolution for future proofing, your best option might be to make the CBZ for your highest resolution device. Or pick an arbitrary "high" resolution, possibly one that matches the source. 300 PPI or better (up to 450 or even 600), unless the source is lower of course. If we assume a screen size of 8", 1500×2000 is a good target resolution. For bigger images, you should try it on your device and see whether it can deal with it. Especially old Kindles with low memory can struggle with sizes like 3000×4000 for example. If you're automating the process, it might be worth considering creating both a lower and higher quality version (e.g., at 200/400 or 300/600 DPI).
INFO KOReader doesn't parse spine page-progression-direction="rtl" attribute of the books. So it doesn’t change page turning direction even though the file was created with right-to-left reading. Users can switch this via:
⇑ TOP MENU → → Taps and gestures → Page turns → Invert page turn tap and swipes / buttons
Advanced preparation of manga
The following is an example procedure to process one manga file:
Download your manga from the source of your choosing (i.e. HakuNeko)
Unpack the manga file. Now you should have a directory that contains only images (or subdirectories with images, no archives)
Process this directory with KCC. Each directory will produce a single CBZ file, so if you want to make several volumes at once, select multiple directories at once
Some useful settings of KCC:
Spread splitter: This feature detects double pages and allows you to rotate or cut them in two.
Upscaling: Enlarge images that is smaller than your target resolution.
Immersive mode in KOReader
If you would like to enjoy your manga in a more immersive way, make sure that you selected the exact same resolution as your device’s screen resolution in KCC when creating your CBZ file. Also you can hide the bottom progress bar while reading your manga in KOReader. So you will have an immersive full screen view of your manga without obstructions.
Extra step for smooth gradients !!! ADVANCED
After using KCC to create a CBZ file, you can apply additional dithering to the images. This way, eink-rendered gradients will be smoothly dithered without jagged layers. This step will produce fine-tuned manga volumes which look better in KOReader.
You can use ImageMagick to process your images. ImageMagick, is a powerful open-source software suite for displaying, creating, converting, modifying, and editing raster images. You can download ImageMagick and use it from the command line to process many images at once.
Unpack the prepared CBZ file that you created with KCC,
Extract these three files next to your images that will be processed
Edit the _magick_manga_ditherN_resize.bat and change the resolution to your device resolution (in both places in the BAT file).
WARNING Next step will replace all the images in the directory with the processed ones. So make sure that you have a copy of them in some other directory if you want to keep the originals.
Run _magick_manga_ditherN_resize.bat to resize and dither the images.
Assuming you have 7-Zip installed, run _batch_archive.bat to pack all the processed images into a CBZ archive.
Reversing the page turn direction for authentic Japanese manga !!! ADVANCED
You can make KOReader turn pages from Left to Right, so that swipes and tap zones are swapped. To enable this, add the following lines to this file → /koreader/settings/directory_defaults.lua
where /storage/emulated/0/Books/manga is the absolute path to the directory containing your mangas. After this change, when you open a file from the mentioned directory, your swipes and tap zones will be swapped.
Tip when reading serialized books like manga
When you reach the last page of a book, KOReader shows you a dialog. In this dialog there is an Open next file action which will open the next file in the same directory as the current book. So you can put your series in separate directories and read them one after another without going back to the File Browser.
When opening this next file, KOReader skips the files that you have marked as finished. This feature is useful for example when you have a folder of manga files and you have already read some of them. You can mark a file as finished from the end of book dialog shown above. Also you can mark it from the File Browser by long-pressing on the file. After copying them to your device, you can:
Open the File Browser in KOReader
Long press on the ones you already finished and tap Mark as finished
Now you can read all the files by just tapping Open next file at the end of the book. KOReader will skip the ones you have already read.
GESTURES AND KEYBOARD SHORTCUTS
There are many types of gestures you can use to control KOReader. Some gestures have limitations regarding where on the screen they can be used and which directions are supported. These limitations are indicated below.
INFO Some devices support only single touch. So multi-finger gestures are not available on them.
TAP / DOUBLE TAP
Single or double tap with ONE finger
WORKS: Anywhere on the screen
TAP AND HOLD
Single tap and hold with ONE finger
WORKS: Only on four corners
TWO FINGER TAP
Single tap with TWO fingers at the same time
WORKS: Only on four corners
SPREAD AND PINCH
Same gesture as zooming in and out on a mobile phone, tablet etc.
WORKS: Anywhere on the screen
INFO This gesture may work less reliably depending on your device. If that’s the case please choose another gesture type.
ONE FINGER SWIPE
Swiping motion with ONE finger
WORKS: Screen edges (HORIZONTAL and VERTICAL) Anywhere except edges (DIAGONAL)
TWO FINGER SWIPE
Swiping motion with TWO fingers at the same time
WORKS: Anywhere on the screen
MULTISWIPE
More than one swipe done after each other without lifting your finger.
For example like drawing the letter U (DOWN-RIGHT-UP)
This table shows the gestures available when you install KOReader for the first time. You can change these gestures according to your preferences via:
⇑ TOP MENU → → Gesture Manager
TAP CORNER
Top Left Corner > Toggle page flipping
Top Right Corner > Toggle bookmark
Opposing diagonal corners at the same time > Take screenshot
DOUBLE TAP
Left Side > Go -10 pages
Right Side > Go +10 pages
ONE FINGER SWIPE
Short diagonal swipe > Full screen refresh
Long diagonal swipe > Take screenshot
MULTISWIPE
← → - Back to previous location
→ ← - Go to latest bookmark
↓ ↑ - Skim document
↑ ← - Bookmarks
↑ → - Table of contents
↓ ← - Show frontlight dialog
↓ → - Toggle reflow
→ ↑ - History
← ↑ - Book status
→ ↓ - Go to page
← ↓ - Back
↑ ↓ ↑ - Previous chapter
↓ ↑ ↓ - Next chapter
← → ← - Open previous document
→ ← → - Favorites
Gesture Categories
This is a list of every action that you can assign to a gesture using the Gesture Manager menu. You can use the search function of your browser (generally Ctrl+F) to search for an action here. These actions can also be used in your own Quick Menu. Please check the relevant section in the guide for more info.
General
Reading progress
Open previous document
History
History search
Favorites
File browser
Dictionary lookup
Wikipedia lookup
Show menu
Menu search
Screenshot
Toggle SSH server
Show ephemeris
Statistics calendar view
Statistics today’s timeline
Synchronize book statistics
Device
Exit screensaver
Start USB storage
Suspend
Restart KOReader
Reboot the device
Power off
Exit KOReader
Toggle hold corners
Enable touch input
Disable touch input
Toggle touch input
Invert page turn buttons
Toggle key repeat
Toggle accelerometer
Rotation
Toggle orientation
Invert rotation
Rotate by 90 CW
Rotate by 90 CCW
Turn on Wi-Fi
Turn off Wi-Fi
Toggle Wi-Fi
Show network info
Battery statistics
System statistics
Screen and lights
Show frontlight dialog
Toggle frontlight
Set frontlight brightness
Increase frontlight brightness
Decrease frontlight brightness
Set frontlight warmth
Increase frontlight warmth
Decrease frontlight warmth
Toggle night mode
Set night mode
Full screen refresh
Full refresh rate (always)
Full refresh rate (not in night mode)
Full refresh rate (in night mode)
Always flash on chapter boundaries
Toggle flashing on chapter boundaries
Never flash on chapter's 2nd page
Toggle flashing on chapter's 2nd page
Always flash on pages with images
Toggle flashing on pages with images
Auto warmth off
Auto warmth cycle through modes
Reflowable documents
Set font
Increase font size
Decrease font size
Set font size
Word spacing
Word expansion
Contrast
Font weight
Font hinting
Font kerning
Two columns
L/R margins
Sync T/B margins
Top margin
Bottom margin
View mode (page-continuous)
Render mode
Zoom
Line spacing
Alt status bar
Embedded style
Embedded fonts
Image scaling
Invert images
File browser
Folder up
Show plus menu
Toggle select mode
Refresh content
Folder shortcuts
File search
Go to page
Back
Reader
Open next document in folder
Show bottom menu
Toggle status bar
Previous chapter
Next chapter
First page
Last page
Turn pages
Go to page
Skim document
Previous bookmark
Next bookmark
First bookmark
Last bookmark
Latest bookmark
Back
Back to previous location
Forward to next location
Follow nearest link
Follow nearest internal link
Add current location to history
Clear location history
Fulltext search
Table of contents
Book map
Book map (overview)
Page browser
Bookmarks
Bookmark search
Toggle bookmark
Book status
Book information
Book description
Book cover
Translate current page
Toggle page turn direction
Toggle custom TOC
Toggle custom hidden flows
Set highlight action
Cycle highlight action
Cycle highlight style
Save book metadata
Move current book to archive
Book statistics
Fixed layout documents
Toggle page flipping
Toggle bookmark flipping
Toggle reflow
Zoom mode
Change zoom factor
Toggle panel zoom
Page crop
Margin
Horizontal overlap
Vertical overlap
Fit
Zoom factor
Zoom to
Direction
View mode
Page gap
Progress bar
Line spacing
Alignment
Font size (set)
Font size (inc/dec)
Word gap
Reflow
Contrast
Dewatermark
Dithering on-off
Render quality
Document language
Forced OCR
Writing direction
Auto straighten
Document columns
Keyboard Shortcuts
If you are using the desktop Linux version of KOReader, you can use keyboard shortcuts for navigating the user interface. These can also be used with non-touch devices which has a keyboard, like Kindle 3, Kindle DX, Android and Android TV.
File browser mode
Open top menu - F1
Navigate to home - Home
Navigate file list - Up/Down
Open selected book - Enter
Show selected book’s context menu - Right
Exit application - Esc
Reading mode
Open selected page link / Open bottom menu - Enter
Next/previous page/view - Left-Right / Up-Down / Page Up-Page Down
Go to the beginning of book - 1
Go to 11% of book - 2
Go to 22% of book - 3
Go to 33% of book - 4
Go to 44% of book - 5
Go to 55% of book - 6
Go to 66% of book - 7
Go to 77% of book - 8
Go to 88% of book - 9
Go to the end of book - 0
In Skim Document dialog
Go to the beginning of book - Q
Go to 11% of book - W
Go to 22% of book - E
Go to 33% of book - R
Go to 44% of book - T
Go to 55% of book - Y
Go to 66% of book - U
Go to 77% of book - I
Go to 88% of book - O
Go to the end of book - P
Page zooming
(Only available for PDF, DJVU and images.)
Zoom in - Shift + PgUp
Zoom out - Shift + PgDown
Zoom to fit page - A
Zoom to fit page width - S
Zoom to fit page height - D
Zoom to fit content - Shift+A
Zoom to fit content width - Shift+S
Zoom to fit content height - Shift+D
Manual zoom mode - Shift+M
QUICK MENU AND PROFILES
Quick Menu
Quick Menu is a recent feature of KOReader which allows you to have a quickly accessible personalized menu. You can assign this menu to a gesture and access it with a single swipe. You can see an example menu on the right. You can even have a menu longer than your screen, it is scrollable.
Basically, any action you can assign a gesture can be added to the Quick Menu. Its advantages are:
You don’t need to memorize lots of gestures for every action.
Some infrequent actions may not worth a gesture but it can be too much hassle to find it in the menu system. You can add this kind of rarely used actions to this menu instead.
If you are installing KOReader for a relative or friend, you can add their favorite actions to this menu so they don’t even need to go into the menu system while using KOReader.
An example Quick Menu:
There are two methods for creating a Quick Menu. Easy and Advanced. If you need only one menu, Easy method should be enough for you. If you want show different menus with different gestures you need to use Advanced method. Another advantage of Advanced method is that, if you want to use another gesture for your menu you can easily move it to another gesture. If you want to use another gesture while using the Easy method, you have to re-create your menu under the new gesture.
Easy method
Go to Gesture Manager menu via:
⇑ TOP MENU → → Taps and Gestures → Gesture Manager
Decide a gesture for opening your menu and tap on it.
Choose the actions you want to see in your menu from the gesture configuration menu. You can select many actions at once of course.
After selecting all your actions, you will tell KOReader to treat this gesture as a menu. You achieve this by enabling Show as Quick Menu item on the second page as you can see in the picture below.
You can sort your menu items with the Sort option just below it.
Now you can launch your menu with the gesture you selected. If you want to change the menu items, you can open the gesture page and add/remove items.
Advanced method
INFO As we said above, if you are not planning to add more than one Quick Menu you don’t need this section.
Quick Menu is actually a Profile which appears on your screen as a menu. So first you have to learn about Profiles. If you already know how to use Profiles, you can continue reading, otherwise jump to the Profiles heading (next section), create a Profile with some items and come back here.
We assume that you already created a Profile as instructed in the previous paragraph. Now we will turn our Profile into a Quick Menu.
1. Go to your newly created Profile and enable Show in action list (shown in the image below). This will make your Profile visible in the Gesture Manager. Also enable Show as Quick Menu (also in the image below) so your profile will be shown as a menu instead of being silently executed.
2. Now we need a way to access our menu. Go to the Gesture Manager and choose a gesture from the list to assign to our menu. Let’s say we want to tap the corner of the screen to show menu. Now tap on Tap corner then choose Bottom left. Now tap on General and go to the second page. You will find your profile as Profile x where x is the name you gave to this Profile. Tap on its checkbox to assign your profile to this gesture.
After all the steps, now you should see your menu when you tap on the bottom left corner. You can edit your menu by going to its Profile page where you can add or remove items. Also there is a Sort item there so you can change the order of your menu items.
As we said, a Quick Menu is actually a Profile. Which means you can have more than one menu. You can create another Profile and follow the same steps to create another menu if you want.
Quick menu tips
Keeping the menu open after use
Normally after selecting an item in your Quick Menu, menu disappears from the screen. Sometimes you might want to keep the menu open after selecting an item. This allows you to adjust settings like these examples:
Incremental changes, like brightness increase/decrease, bigger/smaller font size, previous/next pages or chapters, etc.
Group of options that you activate in succession (but not simultaneously), like turning on wifi and after that starting the SSH server
You can enable this option from the following menu if you have a Gesture Manager based (Easy method) Quick Menu:
⇑ TOP MENU → → Taps and Gestures → Gesture Manager → “Your Quick Menu gesture” → Keep Quick Menu open
Or from this menu, if you have a Profiles based – (Advanced method) Quick Menu:
⇑ TOP MENU → → Profiles → “Your Quick Menu profile” → Edit actions → Keep Quick Menu open
Opening Quick Menu at the gesture position
Normally Quick Menu opens centered at the middle of the screen. If you are using your e-reader with one hand you can activate a setting which will open your menu at the gesture position. This way, menu will be closer to your finger and easier to access. To use this feature enable this option:
⇑ TOP MENU → → Taps and Gestures → Gesture Manager → “Your Quick Menu gesture” → Anchor Quick Menu to gesture position
INFO This is available only in a Quick Menu which is created via Gesture Manager (Easy method above).
Profiles
A profile is basically a collection of actions that can be triggered with a single tap (like a macro).
As an example, imagine that when reading some type of books, you always:
Rotate the screen to landscape orientation
Increase the font size and contrast and
Turn the screen light on
With the profiles plugin, you can do all these at once with a single action.
INFO When you activate another profile, changes made in the first profile will not be reversed. For example, you activate a profile which sets your font size from 20 to 24. Then you activate another profile that adjusts your frontlight. Your font size stays at 24 after activating the second profile. Because profiles in KOReader doesn’t have an exit or reverse action.
To create a profile first be sure that Profiles plugin is activated. If you don’t see it under:
⇑ TOP MENU → → Profiles
then you have to turn it on from:
⇑ TOP MENU → → More tools → Plugin management
Creating a profile
In Profiles menu tap New and give a descriptive name for your profile. Now you should see your new profile in the menu. Tap on it and you will see the screen on the left side. You can also Delete, Rename or Duplicate a profile from this menu.
When you tap on Edit actions menu item you will see the menu on the right. This is the same menu as the gesture selection menu and there are actions in many categories. Which means you can perform any Gesture action using a Profile.
You can now select several items from all these categories. The actions you selected here will be performed when you activate this profile.
Activating a profile
There are many ways to activate a profile:
You can activate a profile with a long press on its name from this same Profiles menu
You can activate a profile using a gesture. For this, you have to enable Show in action list from the profile’s menu. Now you can select it via:
⇑ TOP MENU → → Taps and gestures → Gesture manager → “ANY GESTURE” → General → Profile “Your profile name”
You can also activate a profile automatically when KOReader starts if you enable Autostart in the Profile’s menu. Note that this is only possible when KOReader is starting with the File browser or Last file.
Technical details of Profiles and Quick Menu!!! ADVANCED
In KOReader we have a set of actions/settings and this set can be created in two ways:
As a profile (which is explained as the Advanced Method and stored in settings/profiles.lua)
As a list of actions assigned to a gesture (which is explained as the Easy Method and stored in settings/gestures.lua)
This set can also be executed in two different ways:
Applying each action in the (sorted) order when triggered (as a Profile)
Showing it as a Quick Menu
Adding/removing actions of a set and enabling/sorting Quick Menu are done via the same actions menu. The only difference is that the actions menu in the Gesture manager has two more items (Pass through), that is why Show as Quick Menu and Sort items are on the second page.
PLUGINS AND USER PATCHES
Plugin types
Plugins are small programs that expand the capabilities of KOReader. You can think of them like browser add-ons. KOReader has 3 categories of plugins:
Internal
Internal plugins are part of the core program.
They are directly accessible from the KOReader plugins menu.
They don’t need installation. You can enable them from the menu.
They are checked by our developers so they are considered safe.
They are automatically updated when you update KOReader.
You can enable/disable them via:
⇑ TOP MENU → → More tools → Plugin management
Contrib !!! ADVANCED
This group contains non-official plugins which are not part of the core logic of KOReader.
They have to be installed manually and then activated from the plugins menu.
They should be updated manually.
They are checked by our developers at the time they were added to our repository so they are considered safe.
You can access them from this page:
https://github.com/koreader/contrib
They can be installed by downloading the plugin’s directory from the page above and copying it under koreader/plugins folder on your device. But still check the plugin’s page for other possible instructions.
External !!! ADVANCED
These are plugins that are developed independently from the KOReader team.
They have to be installed manually and then activated from the plugins menu.
They should be updated manually.
They are NOT checked by our developers so be aware that there might be risks using them.
Some notable examples of these external plugins:
AskGPT: You can ask questions to ChatGPT about parts of your book. You can also use this plugin to simplify, explain, discuss or translate text to other languages. https://github.com/drewbaumann/AskGPT
Anki plugin for KOReader: KOReader plugin enabling Anki (an open-source flashcard software) card generations for words looked up in the internal dictionary. https://github.com/Ajatt-Tools/anki.koplugin
Zotero for KOReader: This addon allows you to browse your Zotero (an open-source reference management software) collections from KOReader. https://github.com/stelzch/zotero.koplugin
Auto frontlight - Automatically toggles the frontlight according to ambient light level (Only available on Kindle Voyage and Oasis)
Auto warmth and night mode - Allows you to adjust frontlight warmth in devices with natural (yellow/orange) light and set Night Mode automatically according to a schedule
Auto power save - Puts the device into standby, suspend or power off after specified periods of inactivity
Autosuspend - Suspend device after chosen period of inactivity (available on all e-ink devices except android os)
Autoturn - Automatically turns the page after a set period of time
Background runner - Service to other plugins: Allows tasks to run regularly in the background.
Battery statistics - Collects and displays battery usage statistics of your device
Book shortcuts - Allows adding a book shortcut to a gesture
QR from clipboard - Generates a QR code from clipboard content
Read timer - A countdown timer to display a message after a user defined time
Reading statistics - Calculates reading sessions statistics and reading speed for use in chapter/book remaining time estimations
SSH - Allows access to your device over SSH protocol. You can access via FTP applications or even your file manager if it supports. Check the wiki page for how-to: https://github.com/koreader/koreader/wiki/SSH
System statistics - You can see your CPU/RAM/BATTERY info via this plugin under:
⇑ TOP MENU → → Help → System statistics
Terminal emulator - Starts a shell (command prompt) on your device that can run full terminal apps
Text editor - A basic text editor to create and edit plain text files
Time sync - Synchronizes the device time with NTP servers
Tweak document settings - Allows tweaking settings of a document before it is loaded based on external factors
User patches are small files written in Lua language. They can change the functionality of KOReader without modifying your installation permanently. They can be written by developers, other users or you can write one yourself (if you have the necessary extensive knowledge about the KOReader internals).
You can find a current list of User patches in the related GitHub wiki page:
Basic usage – Adding an already written patch to your KOReader:
Create a directory named patches under koreader directory on your device (On Android this folder is located on the SD-card)
Download and put the patch file with .lua extension in this patches directory
Restart KOReader
Patch manager
When you create a patches directory as instructed, a new plugin named Patch Management becomes available in the plugins menu after restarting KOReader. With this plugin you can see the list and status of your user patches and enable/disable them. You can tap About patch manager menu item to see more info.
Naming the patch
Execution order of a patch is determined by the first digit of the number in the patch name. For example: 2-TOC-title-patch.lua If there are several patches starting with the same digit, the execution order is the natural order (1<10<11<12<13<…<109<…<10010). If you are just downloading an already made patch you don’t need to change the file name.
Names starting with:
0 - Executed very early and only once after an update
1 - Excuted very early on every start of KOReader (but after 0 if applicable)
2 - Executed after UIManager is ready on every start of KOReader
3-7 - Reserved
8 - Executed before exit and before settings get saved
9 - Executed right before exit
If you have a problem with a user patch, you can revert to your previous configuration by removing the patch file.
TIPS
Updating KOReader
KOReader can update itself over Wi-Fi. You can trigger the check via this menu item:
⇑ TOP MENU → → Update → Check for update
Automatic dimmer
KOReader can dim your frontlight to preserve battery if your device is idle for a while. You can turn on and adjust this feature via:
⇑ TOP MENU → → Screen → Automatic dimmer
Line/word count of a page
If you want to know how many lines or words are being shown on the current page you can see it at:
⇑ TOP MENU → → Book information
How can I add a password lock to KOReader?
We don't have a direct option for this in KOReader. But there is a workaround to achieve this kind of lock screen functionality. You can set up KOReader to keep the screensaver on the screen until you enter a chosen gesture. To achieve this:
Choose any gesture (including the complex ones with custom multiswipes) and make it your "unlock" gesture by going to:
⇑ TOP MENU → → Taps and gestures → Gesture manager → "your selected gesture" → Device → Exit screensaver
And then enable this option:
⇑ TOP MENU → → Screen → Screensaver → Settings → Keep the screensaver on screen after wakeup → Until 'Exit screensaver' gesture
Switching between documents quickly
If you need to switch between two documents (when comparing them for example), there is a quicker way than going through the File Browser. KOReader can open the last document with a gesture (←→← multiswipe). If you define a gesture’s action as Open previous document, you can switch between two documents quickly similar to Alt+Tab feature on the desktop computers. You can find this feature under:
⇑ TOP MENU → → Taps and gestures → Gesture manager → “ANY GESTURE” → General → Open Previous Document
Also you can use the History dialog to switch between documents quickly. The history screen can be opened with the →↑ multiswipe gesture. You can also define any other gesture for this of course.
Applying current defaults to an already opened book
When you adjust your document defaults like default line spacing or default contrast, this new value will only be used for the new documents you open after the change. Your already opened books will look the same. For example, if you change your default FONT, you will probably adjust FONT WEIGHT and LINE SPACING to more suitable values for this new font. Then probably you will want to apply these changes to all your opened books. With this feature you don’t need to change these values manually in all your opened books.
You can easily apply these changes to your already opened books by choosing:
⇑ TOP MENU → → Reset document settings to default
When you tap this option, your current book will reset to latest defaults you set. Don’t worry, this will only change the appearance of the book. Your reading position, highlights, notes and bookmarks will be preserved.
Saving current book settings as defaults
When you adjust a book to your liking, for example by changing line spacing, font contrast etc. you can save all the changes at once as defaults. Then you can apply these settings to other books with the Reset document settings to default option as explained above.
You can save your changes as defaults by choosing:
⇑ TOP MENU → → Save document settings as default
Avoiding opening links accidentally
If your document has links and you are accidentally tapping them while turning the page or using other gestures, you can turn off Following links by tapping via this menu item:
⇑ TOP MENU → → Taps and Gestures → Links → Tap to follow links
After disabling this setting, to follow a link you have to long-tap on it and select Follow link from the popup menu. If you have the opposite problem and you want to make tapping links easier, you can enable Allow larger tap area around links from the same menu.
Optimizing your battery life
Li-ion batteries experience more degradation at the extreme ends of their charge levels. To minimize this degradation and extend your battery life, you can limit your minimum discharge level to 20% and maximum charge level to 80% (as in electric vehicles and some newer phones). Which means you start charging your device when the battery goes down to 20% and unplug when it reaches 80% (or 25%-75% if you are extra cautious).
KOReader can warn you by showing an alert when charge level reaches your defined limits:
⇑ TOP MENU → → Device Status Alerts → Battery Level
Keeping an eye on your memory usage
In older Kindle devices some of our users reported crashes due to limited memory. KOReader memory usage can go up if you open many files in one session. Especially PDF’s increase this amount. You can add a memory indicator to your STATUS BAR and restart KOReader if this value gets high, to avoid crashes or reboots.
⇑ TOP MENU → → Status Bar → KOReader memory usage
Also you can configure KOReader to restart automatically if memory usage reaches a threshold via:
⇑ TOP MENU → → Device → Device Status Alerts
Checking your battery consumption details
You can see your detailed battery usage statistics via this menu item:
⇑ TOP MENU → → More Tools → Battery Statistics
Checking detailed device statistics
You can see your system information like CPU/DISK SPACE/RAM usage via this menu item:
⇑ TOP MENU → → Help → System statistics
Changing your book cover
You can change your book cover from this menu:
⇑ TOP MENU → → Book information → → Set cover image
Reading statistics after midnight
In reading statistics you can change the start of day used for calculations. This is useful if you are reading after midnight for example and want your reading session counted as today instead of the next day. This applies only to the Day timeline view and optionally to the Calendar view; it does not apply to any of the other statistics reports. You can set this time at:
⇑ TOP MENU → → Reading statistics → Settings → Daily timeline starts at...
TROUBLESHOOTING
If your book is slow
KOReader is optimized to work fast even on the limited hardware of e-book readers. Generally thousand page books can be opened in seconds and page turning is immediate. Here we will talk about the reasons if your book feels very slow when opening, page turning or adjusting its appearance.
If the problematic book is a PDF:
PDF file itself might be too big for your device memory.
PDF file might contain very large image files. Even in documents with a normal text layer (which you can select and highlight) there might be another image layer embedded (generally a scan of the page). This slows down the opening and page turning because these large images has to be rescaled to fit on your screen and this process can be CPU intensive.
PDF file might have lots of individual elements that needs precise positioning, like a magazine page with lots of images and text boxes. In this case KOReader has to calculate and draw all these elements which can take time.
Auto straighten feature (which allows you to adjust the tilt of the page) might also slow down your reader.
If you set your RENDER QUALITY to HIGH while REFLOW is ON, text will be more pleasing but it can be much slower (up to several seconds per page turn) than DEFAULT depending on your document.
⇓ BOTTOM MENU → → Render Quality
If the problematic book is an EPUB:
EPUB files are basically composed of text and images with some rules to determine how these items are formatted on the screen. In ideal conditions, this is a fairly simple process so EPUB files are generally fast in KOReader. But some EPUB books add a great number of formatting rules that KOReader has to do many calculations just to show even a single sentence. This will slow down opening the book, turning the pages and changing the appearance properties like font weight or line spacing.
INFO KOReader doesn't support fixed layout EPUBs. They will open, but will render as reflowable EPUBs and probably won't look nice or readable.
EPUB files are ZIP archives that contain HTML files. Some books can be a single HTML file while others may be composed of multiple HTML files like each chapter of the book is a separate HTML file. If your book is only a single HTML file, partial rendering can not work. So appearance changes will be slower than the divided chapter books, because for each change, KOReader still has to calculate the whole book instead of only the current chapter.
Another rare case of slowness is when the content is wrapped in a HTML table tag. KOReader has to render/draw each cell on each page turn, so if a cell (containing many paragraphs) spans 50 pages, this will make page turning quite slow. See below for the solution.
If everything is slow:
Reasons mentioned above is generally valid if only some of your books are slow. If all of your books are slow, your problem might be device related:
Very slow CPU or low RAM.
Your flash memory (where your books reside) might be degrading, which is generally due to the old age of the device.
You are running out of storage space.
If you are using an Android based device, your Android OS might be interfering with the operation of KOReader or some background processes might be using your system resources.
SOLUTIONS:
Unfortunately, for bad PDF files there are not many solutions. Generally best solution with problematic PDFs and EPUBs is trying to find a better version of it. Or if another file type is available for download, like EPUB instead of PDF (or reverse) you can try that format.
Following solutions are for EPUB files and they might require advanced knowledge:
You can set Embedded Styles to OFF in the bottom menu to see if ignoring all the document stylesheets makes it faster (of course, you'll probably lose any nice formatting, but you'll know what is the culprit).
If you have HTML and CSS knowledge, you can inspect the HTML and the CSS files directly from KOReader and judge their quality or unnecessary complexity by yourself. To do this, you can long-press on some text and choose View HTML in the popup menu.
If you have the “content wrapped in a table” problem as mentioned above in the problems section, you can add this table, tr, td { display:block; } book-specific style tweak to:
⇑ TOP MENU → → Style tweaks → Book-specific tweak
Calibre’s e-book editor can check EPUB files for problems and has tools to fix some of the problems.
EPUBCheck application can check the validity of the EPUB files and detect many types of errors. You can read an example issue, where the problem is detected with EPUBCheckhttps://github.com/koreader/koreader/issues/11268
If you are opening an issue about this problem, it is important for us to inspect the problematic file. You can share the file directly by dragging and dropping it on your GitHub message after compressing it as a ZIP file. If your book is an EPUB and you don’t want to share the file due to copyright or privacy issues, there is a plugin for Calibre named ScrambleEbook which you can access the download and instructions from this page:
This plugin will read an un-DRM'd ebook file (EPUB/KEPUB/AZW3) and create a copy of the book with its text replaced with random characters. You can share this scrambled version with us in your issue thread. Text of the book will not be readable and there won’t be any copyright violation but we can still use this file for diagnostic purposes.
Here you can see this procedure in a real issue involving a very problematic EPUB file as an example:
Probably you tapped on the STATUS BAR touch zone at the bottom of the screen. You can bring it back by tapping the same zone.
Sometimes my taps are registered as a long tap or double taps
This can happen in cases like shaking hands or device touch screen problems. If you have this problem, you can try to increase the Tap interval. By increasing this interval, you tell KOReader to ignore quick taps at the same location.
⇑ TOP MENU → → Taps and Gestures → Gesture intervals → Tap interval
If your two consecutive taps are separated by a distance, this would not apply. So you can still quickly browse pages by tapping quickly alternatively with two fingers.
KOReader can't write to the SD card
In Android devices KOReader can’t write to the external storage due to Android system restrictions. If you want to change your screenshot saving location, be careful to choose your device’s internal storage.
Ghosting and residue when turning pages
Even if KOReader is set to full refresh after every page, you may still see some ghosting/residue after turning pages. This is a limitation of e-ink screen technology and can be observed on the latest generation devices, especially while reading mixed content (text+images) documents. As a workaround, you can refresh one more time manually after turning the page to get rid of these artifacts if they bother you (short diagonal swipe gesture by default).
Sleep cover problems
Sleep covers generally use a magnet embedded in the cover which enables wake up and sleep events via triggering a sensor in your device. In some cases like misaligned magnets, weak magnets etc. this triggering can be problematic. If you are having problems with waking up your device with your cover, you can disable this feature via this menu:
⇑ TOP MENU → → Device → Ignore all sleep cover events
Text indentation problems
If you get miscentered titles, headings or separators, or unexpected text indentation, try switching the style for your document. epub.css to html5.css. This kind of problems happen because some publishers assume their books will only be read on web browser engine based readers, so they don't bother "resetting" the styles.
⇑ TOP MENU → → Style
Default HTML/EPUB (epub.css) is our book-oriented stylesheet, with text-align: justify, text-indent on P. It is better for unstyled books, and might make styled books more readable.
You can try switching to HTML5 (html5.css) if your book has indentation problems as mentioned above. This style provides a base stylesheet like web browsers do when rendering: text-align: left, no text-indent on P, spacing between P. But it doesn’t look pretty when publishers hasn’t done any styling.
Cleaning your book cover cache database
KOReader keeps a cache of your book covers to be able to show them quicker. In normal conditions this cache doesn’t get too big. If you remove lots of books or rename directories, you may want to clean up your book cover cache database to reclaim some space. You can do it from this menu:
⇑ TOP MENU (in File Browser) → → Settings → Mosaic and detailed list settings → Book info cache management
Clearing file cache
When you are reading a PDF/DJVU document, KOReader keeps a cache of the last page you have read. So when you reopen the book, it will be faster. But this cache can grow big if you are using KOReader for a long time and reading many PDF/DJVU documents. These cache files are kept under your KOReader installation directory under the cache folder. To clear this cache and reclaim the space you can go to:
⇑ TOP MENU (in file browser) → → More tools → Developer options → Clear caches
WARNING Clear this cache only if you really need this space. If you have enough space, clearing the cache will not provide any benefit. Instead, it will degrade the performance because your reader will have to render those pages again.
Backing up your KOReader settings
In rare cases that you want to backup and restore your KOReader with all your settings, you can backup these folders and files under the KOReader installation directory. Then you can overwrite them after a clean installation to restore your settings:
Folders:
settings
styletweaks
Files:
data/cr3.ini
defaults.persistent.lua
history.lua
settings.reader.lua
Files under data/dict/ and /data/tessdata/ directories (if they exist)
INFO Your individual book settings and highlights are kept in the same directory as your books in a folder with the same name as your book. You can backup these folders separately if you wish.
HOW TO REACH US ABOUT PROBLEMS OR SUGGESTIONS
KOReader uses GitHub as its project base. You can report problems or suggestions on our GitHub page. You just need a GitHub account which is free. Click this link to open our Issues page:
https://github.com/koreader/koreader/issues
On the Issues page click the New Issue button. But before doing that, we suggest using the search bar to see if there is already an existing issue about the same topic. You can also check other opened issues to have an idea about the process.
When you click the New Issue button you will be presented with two options:
Click the appropriate one and follow the instructions on the page to report your problem or suggestion.
If you are reporting a bug, verbose debug logs are very helpful to determine the problem. You can enable them via:
⇑ TOP MENU → → Help → Report a bug → Enable verbose logging
You can also find the version number of your KOReader and your device type from the same dialog for reporting.