You are currently reading the English (main) version of the KOReader User Guide. Also volunteers are translating this guide to other languages. We have many translations in progress, as you can see in the overall translation status below. But we only link to the languages which are translated above 50% for usability reasons.

More than 80% translated

50% to 80% translated


To see all the languages currently being translated and to contribute to the translation efforts of the user guide, please visit the Weblate translation page of our project.


Overall translation status of the user guide

Translation status
Guide for this user guide :)

This guide is primarily designed for color screens. If you are using it for the first time, we highly recommend reading this on a computer, tablet or mobile. Because seeing user interface elements highlighted in color will make your life easier while learning how to use KOReader. Of course you can read this on your e-ink device too, but the experience will not be optimal.

You can use the search function of your browser to find a specific topic or keyword (generally Ctrl + F). If you have a suggestion or question related to this user guide, you can write to this GitHub discussion thread.

Parts of the text in this guide are color coded according to their categories:

PARTS OF KOREADER (BLUE)

Status bar, Book map...

MENU PATHS (GREEN)

EXTERNAL APPS (PURPLE)

Calibre, Readwise, KoHighlights...

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:

Check Reach us section for the links.


Guide last update: 2025-03-25






TABLE OF CONTENTS
INFO Newly added or updated sections since the last guide release are marked with a


WHAT CAN YOU DO WITH KOREADER ?

Despite its minimalistic looks, KOReader is a very powerful and customizable application. This section is like a table of contents which is how-to oriented. So if you are a new user, this is the best place to start. Here you can read what KOReader can do and learn how to do it by following these links to go to the mentioned sections.

INFO Name of KOReader comes from the beginnings of the project: Kindle/Kobo Open Reader. Of course the reader grew so much over the years, now an accurate abbreviation would be something like KKPRCSALMOReader (Kindle Kobo Pocketbook Remarkable Cervantes Sony Android Linux MacOS Open reader) but this is not that nice to pronounce, so we choose to keep it simple :)
Transfer your reading materials in different ways
Adjust the appearance of text as you wish
Take notes and make highlights while reading
Export your notes and highlights flexibly
Arrange and browse your library easily
Fly through your book with powerful tools
Control KOReader like a virtuoso
Search, Lookup and Translation tools
KOReader can control your device
PDF documents are easier to read on e-ink with KOReader
Advanced features for power users
BASIC USAGE INFORMATION
Transferring books to your reader

KOReader supports PDF, EPUB, DJVU, MOBI, CBZ, CBT, DOCX, RTF, HTML, TXT, XPS, FB2, PDB, CHM and MD files. It can also open ZIP archives and show image files.

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:

  1. USB mass storage mode within KOReader: This mode is available for KOBO and some CERVANTES devices.
  2. 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 in the menu while adding accounts:
  3. 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 our wiki for how-to and also see the warning box below.
  4. Calibre transfer: With the Calibre plugin you can send documents from your Calibre Library directly to your KOReader devices via a wifi connection. Check our wiki for how-to.
  5. News downloader: With this plugin you can download RSS and Atom news entries as HTML files. Check wiki for how-to.
  6. Wallabag: With this plugin you can retrieve articles from Wallabag, a server based read-it-later service like Pocket. Check wiki page for more info.

WARNING Be careful if you decide to use the SSH feature without a password, because this allows open access to your device. But if you are using a local wifi and turn on your device wifi for a short time, this risk is negligible.

Accessing your books

Following methods are available for accessing your books:

You can change how these screens look from:

If you want to change how many items are visible on these screens, look here:

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:

Tap zones

In the image above, you can see the positions of 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.

TIP As indicated in the image above, top menu opening zone is divided into 3 areas. If you swipe down the first 1/3 of the top edge, top menu opens with the first menu tab. Second 1/3 area opens the most recently used menu tab. And last area opens the last menu tab.

If you want top open both menus at the same time, you can set top menu zone to open both the top and bottom menu at the same time via this 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 the status bar items if only one item is visible. If all items are visible, tapping will show and hide the status bar.

Changing text appearance

You can also change other formatting options from the BOTTOM MENU to fine tune the appearance of your text. These are just quick tips to get you started of course. We have a full section dedicated to CUSTOMIZING TEXT APPEARANCE

INFO *Font selection is available only on reflowable documents (EPUB, HTML, DOCX, RTF, TXT…). Fixed-layout documents like PDF/DJVU are not supported.
Controlling the backlight / frontlight

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:

Changing the screen displayed while sleeping

You can choose a book cover or a custom image as screensaver via this menu:

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:

Please refer to this Mobileread forum post for advanced information about preparing screensaver images.

Keyboard Usage And Tips

If you are looking for information about keyboard shortcuts, click here to go that section. This heading only explains the keyboard usage.

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:

Additionally there are some shortcuts for easier text manipulation. You can tap and hold these keys for extra actions:

Also backspace key behaves different when you make swipe gestures on it:

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.

Auto Warmth And Night Mode

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 when you install KOReader. If for some reason it is not in the menu, you can enable it here:

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
  1. Go to the plugin menu:
  2. Tap Activate menu item and then tap According to the fixed schedule
  3. Go back to previous menu and tap Fixed schedule settings menu item
  4. 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
  1. Go to the plugin menu:
  2. Tap Activate menu item and then tap According to the sun's position
  3. 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.
  4. Go back to previous menu and tap Warmth and night mode settings menu item
  5. 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 transitions

If you want your frontlight warmth to change quickly instead of a more gradual change:

  1. Set the mode to Fixed schedule following the instructions above
  2. 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.

LEARNING THE 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. We will explain reading screen here. File browser is explained under this section of the guide.

Reading Screen

READING SCREEN has two menus:

Image above shows the elements you can see on your reader screen when reading a book:

  1. Indicator icons: These icons inform you about certain ongoing processes and states. You will see them at the top left corner of your screen during certain operations. Normally they are smaller but here we show them bigger for clarity. Next heading explains these indicator icons in detail: Indicator icons
  2. Status bar:This is a highly configurable area where you can see various information about your book and KOReader. Click here to go to the section: Click here for details: Status bar
  3. Alternate Status bar: In addition to the default Status bar, we have an Alt status bar which appears at the top of the page if you enable it. Click here for details: Status bar
  4. Reference page numbers: If the publisher of your book included the page numbers from the paper printed version of the book, you will see them like this. Click here for more info: Page numbering and reference page numbers
  5. Highlight types: You can see the different highlight types here. Also you can make colored highlights if your device has a suitable screen. Click here to go to the section: Bookmarks, Highlighting and Notes
  6. Note marker: Note marker icon shows up when you add a note to a highlight. We have different types of note markers. Click here for more info: Bookmarks, Highlighting and Notes
Indicator icons

KOReader has some indicators to inform you about certain ongoing processes and states as you can see in the image above. You will see them at the top left corner of your screen during certain operations.

Partial rendering icons This group of icons belong to the partial rendering procedure and probably you will see these icons more frequently than the others. You see these icons when you change the settings on the bottom menu.

This feature, allows you to preview the text appearance adjustments much quicker by only rendering the current chapter instead of 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:

After confirming your changes whole book has to be re-rendered so this is a multi-step procedure. These icons shows the stage of rendering as explained below:

In this stage, 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.

INFO Partial rendering 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.

Highlighting icon This icon shows up when you are in the Select and highlight mode. KOReader has an additional highlight mode which allows you to start a highlight and turn pages to make long highlights which can span multiple pages. You can read about this in the BOOKMARKS, HIGHLIGHTING AND NOTES section of this guide. When you start a highlight in this mode, this icon is shown at the corner to remind you that you are still in the highlighting mode. It disappears when you finish your highlight by selecting the end of the passage or when you cancel the highlight (by tapping again on the beginning of your highlight or on this highlighting icon).

Pokemon ball icon This icon shows up when you press for a long time on a word (intentionally or accidentally). KOReader has a normal long press menu. And an additional very long press menu when you hold your finger longer than 3 seconds. This icon means that you activated this very long press menu.

Flip mode icon This icon shows up when you tap the top left corner if:

  • You are reading a PDF document
  • And you are in a zoomed in view other than 100% (column, row or manual) or in the reflow mode

This mode temporarily displays the full page without cropping, scaled to fit your screen. You can turn the pages in this mode. To exit this mode, tap on this icon.

Page numbering and reference page numbers

Document types like epub, mobi, html naturally don't have fixed page numbers because they are reflowable documents. Which means, these documents can be adjusted according to the screen size and orientation of the device (unlike pdfs or djvu files for example, which have a fixed page size).

If you increase the font size of a reflowable document, your page count will increase too, because now less text will fit on a single page. This sometimes causes a problem because a highlight which you made on page 38 might be on page 42 after the font adjustment.

KOReader supports Reference page numbers feature which allows publishers to embed page numbers from printed books directly to the e-book version. When you enable this feature, KOReader doesn't calculate the page numbers itself. Instead, it shows you the embedded page numbers from the publisher. This means, the page number you see in your Status bar matches the print version of the book.

Benefits of reference page numbers:

You can enable this feature from:

If you also check the Show reference page labels in margin option from the same menu, this page numbers will be shown next to the text in a small font.

Please note that this menu appears only if there are embedded Reference page numbers in your book.

Status bar

KOReader have two status bars, a Bottom status bar which is enabled by default. And we have an Alt status bar which appears at the top of the page if you enable it. This Alt status bar is available only in reflowable documents (epub, html, docx, rtf, txt…).

Bottom status bar is the newer one which is actively maintained. Alt status bar is a remnant from earlier versions of KOReader so we are not adding new features to it. But you can still enable this Alt status bar if you find it useful. You can enable it from:

You can configure the Alt status bar from this menu:

Instructions in the rest of this section are for the Bottom status bar.

Configuring the status bar

You can configure the bottom status bar from this menu. Feel free to explore the SETTINGS sub-menu to customize your status bar as you like.


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 it from here:


If you enabled the option above, you can't hide the status bar by tapping on it. If you want to hide it, you should assign a gesture here for toggling the status bar:

Sorting the status bar items:


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 also use this feature to create a separator between the status bar items as you can see in the example below:

You can choose another character as a separator. You can also move this item like other status bar items to change its order to adjust your groups.

Chapter progress bar

Progress bar in the status bar normally shows your progress for the whole book. But it can also show your progress for the current chapter instead. This can be useful for example, if a book has lots of short chapters. In this case it might be hard to see your progress in the current chapter so chapter status bar can be more informative here. You can enable the feature from this menu:

Also you can assign a gesture to switch between normal and chapter progress bars. You can find this action under:

Top Menu Items

Here we will only give an overview of the items in the top menu structure to make you familiar with the menu. Detailed information is available under the related sections of this guide.

Bottom Menu Items
TIP If you long tap on their names, you can see an explanation of these items

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 the first and last line of screen. To solve this problem you can enable 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 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 option, 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:

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:

Image scaling determines how images in your document are rendered. Best looks more pleasing but it is slower.

User Interface Tips

KOReader’s user interface and options can change depending on the file type you open. There are two main categories of documents:

  1. Fixed layout documents (pdf, djvu, image files...)
  2. Reflowable documents (epub, html, docx, rtf, txt…).

KOReader has lots of features so its menu system reflects this complexity. We have a Menu Search feature for finding menu items quickly. If you remember the name of a menu item but don't remember where it is, you can use this feature:

Also you can assign this feature to a gesture or add it to your Quick Menu for faster access.

On the bottom menu if you tap and hold an option’s name, you can see its explanation.

You can change the interface language via:

If you want to change the size of user interface, there is a DPI setting for that:

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.

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:

You can close full screen dialogs (History, Table of Contents, Reading Statistics etc.) by swiping down. (Except Bookmarks window. You can use any multi swipe gesture to close this one)

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 gesture for example when viewing an image. Also if your device has a keyboard, you can take a screenshot with the Alt + Shift + G shortcut.

If you want to open a random page of a book, we have a Jump to a random page action which you can assign to any gesture. It is in the Reader category of the Gesture Manager.

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).

Creating new folders - In situations when you need to choose a location (cloud storage, move to archive plugin, exporter plugin), KOReader presents you a screen that looks like our File Browser. If you want to create a new folder while choosing:

  1. First navigate to the folder from the Folder chooser screen
  2. Then long-press the Home icon shown at the upper-left corner of this screen

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 check the current date you can tap on the clock in the TOP MENU.

Scrolling types

KOReader has three types of touch scrolling. You can access this from:

INFO You have to enable Continuous mode from the Bottom menu to be able to use scrolling.
  1. Classic scrolling: This mode works exactly like your phone/tablet scrolling.
  2. 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.
  3. 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 when you scroll with your finger and then 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:

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 and in the menu

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:

Also you can disable black flashing of user interface from here if it disturbs you:

MOVING THROUGH YOUR BOOK

There are different ways of moving through your document in KOReader with their own strengths. You can use the:

Skim Widget

Skim Widget is a very functional navigation tool. You can use it to:

How to open the Skim Widget:

Using the Skim Widget

First let's have a quick look at the diagram below. You will see that we have two different Skim Widgets. They have the same functions, only their size is different:

  1. FULL-SIZE SKIM WIDGET: This is the default skim widget you will see when you install KOReader. It is bigger than the compact skim widget so buttons are more comfortable to press. This widget opens at the center of the screen.
  2. COMPACT SKIM WIDGET: This is the slimmer version of the default skim widget. It can be more useful if you are making highlights for example. Since this widget is smaller and opens at the top or bottom of the screen, it doesn't obstruct the page as much as the default widget.

If you want to use the compact skim widget, you can do this by choosing Top or Bottom from this menu:

TIP Both skim widgets are movable. You can move them by pressing on an empty area of the widget and dragging. Also you can make these dialogs semi-transparent by long-pressing on an empty area on the widget. But semi-transparency is triggered only in its initial position. Once moved, long-pressing moves it back to the initial position.

Now back to the diagram. You can see that on some buttons, there are two descriptions in different colors: blue and orange. It means that this button has two functions: a normal press action and a long-press action. If you press normally, it will perform the BLUE function. If you press longer, it will perform the ORANGE function.

Explanations of the numbered items (long-press action in bold):

  1. Jump to the beginning of the previous chapter / Jump to the first page of the book
  2. Jump to the previous bookmark / Jump to the first bookmark in the book
  3. Bookmark current page / Open bookmarks dialog
  4. Jump to the next bookmark / Jump to the last bookmark in the book
  5. Jump to the beginning of the next chapter / Jump to the last page of the book
  6. Jump backward (-) or forward (+) this many pages
  7. This number shows the current page number. If you tap on it, a dialog opens which allows you to enter a page number or percentage to jump directly. If you long-press, it takes you back to the page where you opened the skim widget. This is useful for example if you want to check some other part of the book quickly and return to your reading where you left.
  8. This is the progress bar. Thin lines are the chapter marks which shows the beginning of the chapters. You can tap on this progress bar to jump to that part of the book. Little arrows are session start arrows which marks the place where you started reading this book in the current session. This arrows reset when you switch between books.
  9. This button in the compact skim widget works same as the long-press function of the item number 7. It takes you back to the page where you opened the skim widget. This is useful for example if you want to check some other part of the book quickly and return to your reading where you left.

TIP If you want to open a random page of a book, we have a Jump to a random page action which you can assign to any gesture. It is in the Reader category of the Gesture Manager.

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:

You can also use this reduced ToC for:

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:

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:

You can access Book Map via menu and you can also assign a gesture for quicker access:

Book map 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.).

  1. Chapter boundaries
  2. Black bars indicate read pages. Higher bars means more time spent in page.
  3. Bookmark icon shows bookmarked pages as the name says.
  4. Striped square icon shows pages with highlights.
  5. Pencil icon shows pages with notes.
  6. Numbers in a circle shows your previous locations. When you choose Go back to previous location from the menu, you will jump back here in order.
  7. Triangle shows your current page.
  8. Vertical scrollbar shows your current view level.
  9. Vertical scrollbar shows your current page width level.

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 the 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:

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 easier access.

Usage of Page Browser is explained below. You can also tap on the top left corner hamburger menu button on this screen to see these explanations. A long-press on the same button adds/removes chapter titles from the bottom strip.

  1. Swipe left / right over this top edge to increase / decrease the number of the columns.
  2. Swipe up / down over this left edge to increase / decrease the number of the rows.
  3. Swipe the pages area to move the viewed pages. Up / down to scroll one row (2 pages in the example), left / right to scroll one screen (4 pages in the example).
  4. Tap any page to open that page in reading view.
  5. On the bottom area, tapping on a page focuses the thumbnail view on that page. Swiping left / right will jump one stripe width.
  6. Icons on the bottom area are same as the ones used in Book Map and explained under that section.
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:

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:

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:

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:

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:

  1. 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.
  2. From the Page browser: Open the Page browser via

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:

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: 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:

  1. Go to the first page of the section you want to exclude
  2. Open the Page browser via:
  3. 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.
  4. You will see that the pages starting from your selection now have a gray hatched background.
  5. 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.
  6. Once you are at the last page of your excluded section, open the Page browser again (if you are not already in it).
  7. 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:

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:

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:

CUSTOMIZING TEXT APPEARANCE
Default appearance settings

In some reader applications, when you change a setting let's say the font used for books, it changes globally. Which means, if you change the default font to Verdana, any books you open next including the ones you are already reading will be shown in this Verdana font.

KOReader's approach is different from this. We save appearance settings per book. This gives you the flexibility to change your settings for the current book without affecting others. For example if you have some fantasy books, you can change the font to a medieval looking one just for these books. Or you can set some books to open in landscape orientation or double column mode.

To change a setting globally, tap and hold an option or menu item (font weight, line spacing etc.), to set its value as default. This new value will only be applied to books opened from now on as we said above. 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:

Applying current defaults to an already opened book

So 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 not change.

But what if you want them to change too? 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. You are satisfied with how the text looks and now you want all your books to look like this. 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:

When you tap this option, your current book settings will change to the latest defaults you have 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:

Creating different groups of settings

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:

After adjusting your settings to your liking, you can create a profile from them via:

After creating a profile with your settings, you have many options for applying it to another book:

Click here to go to the QUICK MENU AND PROFILES section of the guide.

Using your 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 our 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 which look good on an e-ink screen. You can find more of them on the Google Fonts website:

Serif:

Sans Serif:

Monospace:

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 programmingfonts.org

TIP 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:
Monospace font scale

If your book includes parts with Monospace fonts (like in programming books), Monospace text might look disproportional even if it is technically at the same size as the rest of the book. This is caused by differing font metrics. KOReader has an option that allows you to adjust the relative Monospace font size to fix this difference:

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:

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:

Check the QUICK MENU AND PROFILES section of this guide to learn how to do this.

Style tweaks

!!! ADVANCED

Style tweaks feature of KOReader allows you to modify how your book is rendered by KOReader. We won't go through a full CSS course here. We just want to show you the basics so when you see a style tweak, you will at least have a rough idea what it does.

What is a style tweak?

We can describe an EPUB document as a HTML file + some CSS rules. These CSS rules determine how different parts of the book (headings, bold text, quotes etc.) will be shown on a reader app. With style tweaks, you can change how your book will be rendered by adding new rules and/or overriding the rules written by the publisher that is embedded in your book.

Let's see this on an example style tweak:

img { width: 10px !important; height: 10px !important }

In plain language this rule says: "Ignore their original size and make all the images in this book 10 pixels wide and 10 pixels high." So if you add this style tweak to KOReader, all the images in your book will be shown tiny.

Now lets explain this tweak item by item:

In summary, this CSS rule is designed to set a fixed width and height of 10 pixels for all img elements in your book, ignoring their original style.

Some useful examples of style tweaks

These are some useful style tweaks that you can use directly or modify according to your liking. Next heading explains how to use them in KOReader.

How to add style tweaks

Ok, now we have seen what style tweaks are. But how can we use them? There are three types of style tweaks in KOReader:

1. Built-in style tweaks

This heading is new, and the screenshot above and below. Anything to add?

These tweaks are included in KOReader. They are the easiest to use since you just enable them from the menu to use them. You don't need to write any CSS code:

They come in many categories. To apply a tweak to the current book only, tick the checkbox. If you want to get more information about this tweak or enable it for all the books, long-press on its name. A dialog will appear:

  1. This area shows the name and description of the tweak
  2. This box shows the CSS code of the tweak. You can tap on this area to copy the code to the clipboard. Then you can paste and modify this code in your Book-specific tweak as explained under the next heading.
  3. Show in action list button allows you to toggle this tweak with a gesture or add it to a Quick Menu. See the heading named "How to use tweaks efficiently" below for more info.
  4. Use on all books button activate this tweak for all your books. A star (★) will appear next to its name in the menu, indicating that this tweak will be applied to all books. You can disable this with the same steps.
2. Book-specific tweak

As you can guess from its name, this type of tweaks are only active for the book which you created them in. This feature is more useful for testing your tweaks or if you need to fix something on the current book and you know that you won't need it on other books. After creating this type of tweak, if you decide that you will need it on other books too (i.e. from the same publisher), you can convert it to a user style tweak, which we will explain next.

To create a book specific tweak, use the integrated editor which you can find here:

TIP In the editor we have a CSS menu on the bottom toolbar. This menu contains many useful CSS syntax and properties. When you open this menu please first read the Long-press for info help. Also you can long-press on CSS items in this menu to see a description.

3. User style tweaks

These group of tweaks are different from the previous ones in the way they are created. Also unlike the previous type, they are not limited to a single book. They can be applied globally to all of your books.

Procedure is roughly like this, which we will explain in detail:

  1. Create your user tweak file
  2. Transfer it to your device
  3. Enable your tweak from the menu

1. Creating the user tweak file:

A user style tweak is actually a normal text file with a .css extension. You can create this file:

You can copy / paste the examples we mentioned above to your file.


2. Transferring the file to your device:

After creating the file(s) which contain your CSS rules, save or transfer them to the styletweaks folder under your KOReader installation. Give the files descriptive names because filename will be the title of the tweak in the KOReader menu system. You can use underscores "_" in your filenames, they will be treated as spaces in the menu. You need to restart KOReader after transferring your files so it can load them.


2. Enabling the tweak:

After the restart, open a book and go to this menu:

Now you should see your tweak in the list with a checkbox next to it. To apply your tweak to the current book only, tick the checkbox. If you want this tweak to be enabled for all the books, long-press on its name. A dialog will appear. Tap the menu item Use on all books. A star (★) will appear next to its name in the menu, indicating that this tweak will be applied to all books. You can disable this with the same steps. See below for an example:

In the image above, I have 3 style tweak files in the styletweaks folder under my KOReader installation. First one is disabled because checkbox is empty. Second one is enabled for this book only since checkbox is marked but there is no star. Third one is enabled for all the books (★).

You might notice that there is also a right triangle icon next to the first tweak. This means that this tweak can be activated using gestures. This will explained in the next heading.

How to use tweaks efficiently

When creating your user style tweaks you can make multiple tweak files, each modifying some part of the book like in the example image above. You can have one file for the headings, others to modify paragraphs, links etc. This modular system allows you to enable tweaks depending on your document.

As we said above, you can toggle user style tweaks from this menu location:


Also we have easier ways to toggle your style tweaks than going to the menu every time.

1. You can assign a gesture to a tweak

To do this, first we have to add our user style tweak to the list of gesture actions:

You can see it in the example image above, next to the Adjust margins style tweak. Now this style tweak is added to the actions list. You can find it under Gesture Manager > Reflowable documents category. It will be at the end of the list.


2. You can add a tweak to your Quick Menu

To add a tweak to your Quick Menu, first it has to be added to the actions list as described in the heading above. Then you can follow the instructions under the Quick Menu section of this guide.

You can even combine both methods and create a special Quick Menu for your style tweaks and then assign it to a gesture. This way, with a simple gesture you can access all your style tweaks and activate them as needed.

Finding elements for modifying

Note that in some books, titles might not be in <H1> or <H2> elements, but in something like <p class="tit123">. You can find which selectors are used for a part of text by checking the source. To achieve this, select the text around the element which you are interested in, and choose View HTML from the dialog. In the example above, your style tweak would look like this:

P.tit123 { border-top: 2px solid black; }

instead of this:

H1 { border-top: 2px solid black; }

BOOKMARKS, HIGHLIGHTS AND NOTES

KOReader gives you options to interact with your book like you can do with a real book. Many settings of the bookmark window can be changed here:


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:


Also if you have a device with a color screen, you can create highlights in different colors:

Some tips for color highlights:

Setting the defaults for highlights

  1. In the highlights menu you can long-press on a highlight type to set it as default (★)
  2. After selecting a color, you can long-press on the color name in this menu to set that color as default (★)
  3. You can press the Apply current style and color to all highlights option to make all the highlights in the current book same. Be careful, there is no undo!

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:

Highlight modes of KOReader

KOReader has two highlighting modes for different use cases:

Normal mode

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.

  1. Long-press on the starting word
  2. Move your finger to the end of the passage
  3. 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:


Select and highlight mode

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.

INFO If you have dictionary lookup enabled, when you long-press a word, you have to drag your finger to initiate this mode.

How to highlight:

  1. Long-press (or drag if dictionary lookup is enabled as described above) on the starting word, popup menu will show up.
  2. 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.
  3. Long-press (or drag if dictionary lookup is enabled as described above) on the ending word for your highlight, menu will show up again.
  4. 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):

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:
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 from:
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 while highlighting

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 highlights

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:

Editing the text of a highlight

In addition to adding a note, KOReader also allows you to edit the highlighted text itself that is shown in your Bookmarks list. In some situations this might be more useful than adding a note to a highlight. For example imagine that you are reviewing a text. You want to highlight a sentence which contains many dates and one of the dates is wrong. When you want add a note to point to this mistake, you need to specify in your note, which one is wrong. But if you edit the text of a highlight, you can directly write "(this date needs to be checked)" next to the problematic date.

Note that this editing doesn't change the book content or the highlighted passage on the page. You will still see the same highlighted sentence in the reader. Your edit will be visible in the Bookmarks list. And when you export your highlights later, edited text will be the one that is exported.

To edit a highlight text, you can:

  1. Tap on the highlight
  2. Tap Details from the popup menu
  3. Tap Edit text from the details dialog

Also you can do it from the Bookmarks window:

  1. Go to the Bookmarks list via menu or gesture
  2. Long press on the highlight you want to edit
  3. Press Edit text in the menu
  4. Change the text in the dialog and press the Save button

If you want to revert an edited text to the original highlight, follow the steps above and at the step 3, instead of Edit text, press the Reset text button.

Changing how the added notes are shown in the Bookmarks List

Normally when you open the Bookmarks list, only the content of your highlights are shown. If you added a note to a highlight, you will only see a pencil icon in the Bookmarks list. You can long-press on an item in this list to show (and edit) the added note. If you want to see the note text too in your Bookmarks list you can set it from here:

You can choose to show:

TIP Normally number of items in the bookmarks window is static and divided equally. If you want a more flexible layout, you can change the Max lines per bookmark setting from here:
Exporting 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:

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:

You can choose your preferred export formats from:

You can see the export location (and also change it if you want):


Online services

You can also export to these services over the network:

You can find detailed setup instructions for these services on our related wiki page.


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:

  1. Select multiple books in the File Browser
  2. Tap on the menu button (shown as a check mark) at the top right corner
  3. Select Export highlights from the menu shown
TIP You can also export only some of these highlight styles: lighten, underline, strikeout, invert. Normally KOReader exports all of them. You can choose from:
TIP You can assign export actions to gestures for quicker access. You can find these under the Reader category of the Gesture Manager.

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 GitHub project page for download and instructions.


3. Using Calibre

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 page sizes (generally A4 or Letter) on your smaller screen device:


1. You can enable 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 a default by tapping and holding on it.


2. You can enable Zoom To Content

With this option KOReader tries to crop margins from your document so text can 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.


4. You can zoom to 100 percent size and instead scroll the screen to read different parts

This is especially helpful with comic books. First enable column mode from this menu item:

Then select an appropriate flow direction for your document from the same menu:

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.

TIP When reading a PDF document, if you are in a zoomed in view other than 100% (column, row or manual) or in the reflow mode, you can tap the top left corner of screen to enter flip mode. This mode temporarily displays the full page without cropping, scaled to fit your screen. You can turn the pages in this mode. To exit, tap on this icon.
PDF Specific Bottom Menu Items

Contrast 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.

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 (only active in 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 that will be used by the OCR engine.

Forced OCR as the name says, forces the use of OCR even if the document has a text layer.

Writing direction (only active in Reflow mode) sets the direction of original document. Set this to RTL for languages like Arabic and Hebrew.

Document columns (only active in Reflow mode) sets the 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.

Saving highlights into PDF

For saving your highlights, you can use the Export highlights feature of KOReader which is explained in a previous section.

If you are making your highlights on a PDF document, KOReader can also save them directly to the PDF file. This can be useful in certain situations because with this method, your highlights become a part of the PDF file. This means you can see them on other applications or platforms without installing KOReader. For example if you are sending a file with highlights to another user, they don't have to install KOReader to see your highlights. You can just send the PDF file with your highlights saved into it and they can open and see them with a compatible PDF reader.

WARNING If you are using the Progress Sync plugin, saving PDF highlights will change your file so your synchronization will fail. If you are planning to use both features, in the Progress Sync plugin's settings, change the Document matching method to Filename instead of the default Binary matching:


Which PDF readers can show these highlights?

PDF readers generally depend on some standard libraries to render PDF files. Two of the most known PDF libraries are MuPDF and Poppler libraries. KOReader uses the MuPDF library, so the highlights written to PDFs in KOReader are not currently visible on PDF readers which uses the Poppler library. You can find a compatibility list below. ✅ means you can see your KOReader highlights in this application, ❌ means you can't see them. And ⚠️ means the application needs some plugin to show them. List is ordered alphabetically within categories.

WARNING This list is not complete and might not be up to date. So we suggest you to test the compatibility yourself. Simply make a highlight in KOReader, write it into the PDF file and try opening the file on your intended reader to check if the highlight is visible.

Important information about saving PDF highlights feature

Since making highlights for later usage can involve significant effort, if you are planning to use this feature, you should understand how it works in order to avoid frustrating situations.

QUICK SUMMARY: If you want to be able to delete or export your PDF highlights later, you have to copy the .sdr folder associated with your book when you backup or copy your book to other devices. Without this folder, KOReader can still show the saved highlights but it can't know where they are in the file, so it can't modify them. Please continue reading for more information about this.


How normal highlights work in KOReader

When you make a highlight in KOReader, whether the document is an EPUB or PDF, this highlight is written into a settings file. For example if you are reading Alice in Wonderland.epub you will have a folder named Alice in Wonderland.sdr in the same folder as your book. Your highlights will be kept in a file under this .sdr folder. Which means, if you delete this .sdr folder which is associated with your book, you will lose your highlights.


How PDF highlights work in KOReader

PDF highlights feature works a bit different than the description above. As we mentioned before, when you save your PDF highlights, they will be directly written into the PDF file, which means they become a part of the file itself. That's why you can send this PDF to another user and they can see the highlights with a compatible PDF reader. They won't need your .sdr folder which contains a record of your highlights because now the highlights are embedded directly into the PDF file.

Let's explain the problem which can arise when you are using this feature, on an example. Imagine that you are reading a PDF book on your e-reader with KOReader:

  1. You are making highlights and Save highlights to PDF option is enabled, so as you make these highlights, KOReader saves them to your PDF file.
  2. You want to continue reading the book on your phone with KOReader, so you copy this PDF file from your e-reader to your phone (but you didn't copy the .sdr folder, only the PDF file).
  3. When you open the book on your phone with KOReader, you will see that your highlights are still there.

Now the situation on both of your devices looks identical. Both your e-reader and phone KOReader shows the PDF file with the same highlights. But it only looks identical, actually there is a big difference.

KOReader on your e-reader has the knowledge of which highlights in this PDF file are made by KOReader because it has the .sdr folder. But KOReader on your phone doesn't have this knowledge. It only has the PDF file.

Difference arises when you try to delete the pdf highlights or export them. Your e-reader can both delete these PDF highlights and export them. But your phone KOReader can't, because as we said, it doesn't have the .sdr folder of your book so the highlights in the book look like a part of the original book from its point of view.

So in short, if you want to be able to delete or export your PDF highlights later, you have to copy the .sdr folder associated with your book when you backup or copy your book to other devices.

OCR (Optical Character Recognition)

OCR (Optical Character Recognition) is the process of extracting text from images. 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.

To use this feature you need to:

  1. Install Tesseract language data to your KOReader
  2. Add newly installed languages to koreader/defaults.lua configuration file (necessary only if your language is other than English or Chinese)
INFO Buttons on OCR menu will not function until you install the necessary Tesseract files. Details of this process can be read in our related wiki page.
READING COMICS AND MANGA
Adjusting the page refresh interval

Comic books generally need more frequent page refreshes than the pure text content. For normal text, you can set your page refresh interval to high numbers without problem. But images can leave more residue and cause ghosting, especially depending on the panel of your e-reader.

KOReader allows you to assign any gesture to switch to different refresh rates. For example you can set swipe up left edge for every page refresh when reading comics and set swipe down left edge for every x page refresh for text only books. So when you open a comic, you can switch to more frequent refresh with a simple tap or swipe (or vice versa).

This action is under:

Panel zoom feature

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:

When this option is enabled, KOReader tries to find the boundaries of rectangular panels on the screen. If you long-press on a panel, KOReader zooms in and shows just that panel.

As you can guess, this feature works best with comics that has clean panel boundaries. Also there is no page turn in this mode to jump to the next panel due to this boundary problem. You have to close the zoomed in panel and long-press on the next one. To do this, just swipe down this zoomed in panel. Also you can use any multiswipe gesture (any combination of up, down, left, right) to exit this view.

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.

Jump to the next file

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:

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.

Optimizing manga for reader

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.

Which file type to use

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, please visit this GitHub issue.

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.

Which resolution to use

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:
Advanced preparation of manga

The following is an example procedure to process one manga file:

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.

Other manga tips
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.

  1. Unpack the prepared CBZ file that you created with KCC,
  2. Download the following file dither_pack.zip (located on Yandex Disk) which contains two batch files (.BAT) and a GIF color template.
  3. Extract these three files next to your images that will be processed
  4. 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.

  5. Run _magick_manga_ditherN_resize.bat to resize and dither the images.
  6. 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:

["/storage/emulated/0/Books/manga"] = {
["inverse_reading_order"] = true,
["kopt_zoom_direction"] = 0,
},

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.

MANAGING YOUR LIBRARY
File Browser Usage

You will see the file browser interface when you run KOReader for the first time. It is one of the two main interfaces of KOReader. You will do all your file and folder operations here. You can access it from the reading screen by:


By default, file browser shows your HOME folder, which is your main library folder. You can change this by long-pressing on any folder. You can change file browsers 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 the reset dialog and double check which items are marked, otherwise you can reset everything related to your book 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.

Working on multiple files

File browser allows you to perform some operations (like copying, moving, deleting, exporting highlights) on many files at the same time. For this procedure, first you have to select the files. Currently there are three different ways of selecting files for bulk operations in the file browser:

- In the first method, long press on a file name and choose Select from the popup dialog. This will activate the Selection mode. Now you can tap on other files to add them to the selection. When you finish selecting your files, tap on the checkmark icon at the top right corner of your screen. You can choose what to do with these files from the dialog. Or exit the selection mode from the same dialog.

- In the second method, press the + (plus) icon at the top right corner and choose Select files from the dialog. This will activate the Selection mode and rest is the same as the first method above.

- In the third method, you can choose your files based on a File search. This is useful if you need to perform an operation on many files distributed in different folders. For example you want to move all files in your collection authored by Tolkien, to a new folder. Steps for this action will be:

  1. From the Top menu press on the Search tab (with the magnifier icon) and choose File search.
  2. Check Include subfolders option if you want to search inside the folders too. You can check Also search in book metadata if you want KOReader to look in book's metadata. Otherwise KOReader will only look at the file names for the word you entered.
  3. You can start the search from your library Home folder or your Current folder by pressing on the respective button.
  4. After search is finished, you will see a file list (if your search term is found of course). Now you can tap on the Hamburger icon at the top left corner of the screen to enter the Selection mode.
  5. Tap on all the files you want to perform operations on and tap on the Checkmark icon at the top left corner of your screen. You will see a dialog which contains Select in file browser. Select this option.
  6. Now you will be back at the File browser and the files you selected in the Search dialog will also be selected here.
  7. Tap on the Checkmark icon at the top right corner of your screen. Now you can choose what to do with these files from the dialog.
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:

  1. 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.
  2. 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.

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.

Viewing other file types
Viewing text files

If you have books in .txt format (which is more common in Chinese and Cyrillic languages), you can try enabling the Auto-detect TXT files layout feature. In some cases it can improve the rendering and make the text more "book like". When enabled, the rendering engine will use heuristics (text wrapped under some max line length, single or double blank lines marking paragraphs, indentation or centered text considered heading...) to guess how to better render the text and will try to create a table of contents.

You can enable this feature here (which is visible only if you are reading a .txt file):

Note that this feature might mess up ASCII art drawings and space character based formatting. If your book has these kind of features, it might be better to use the default mode in which, the text file is rendered as is in a monospace font.

Viewing archive files

KOReader can read files stored/compressed in ZIP 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:

  1. In File Browser long-press the file name
  2. Tap Open with…
  3. Tap Archive viewer

A ZIP file can contain many types of documents like html, txt or images. KOReader can open your ZIP file properly only 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:

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.

Viewing images

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.

  1. In File Browser long-press the file name
  2. Tap Open with…
  3. Tap Image viewer
Viewing Markdown files

KOReader provides two options for reading Markdown documents.

  1. You can open the document directly like a book by tapping on it. This mode doesn't provide formatting. So your .md file will look like as it is opened in a text editor.
  2. You can convert your Markdown document to HTML. This action will render a HTML file from your Markdown document with the correct formatting and a Table of Contents created from the headings.

To convert a .md file, long press on it in the File Browser and tap Convert from the popup menu. A new file with the same name but HTML extension will be created in the same directory. Be aware that conversion might take a while depending on your Markdown file and device speed.

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:

Collections

KOReader's Collections feature can help you with arranging your library more efficiently. As a very simple definition, collections are user created lists of your books. For example you can create two collections named Fiction and Non-Fiction to arrange your books accordingly. Of course you can also use folders to do this but using collections gives you more flexibility.

Some advantages of collections compared to the folder based organization:

You can create collections to mirror any kind of categorization. Some example ideas:

Creating and modifying collections

You can create collections from the Collections dialog located here:

You can access this dialog from the reader view or from the File Browser. When you open this menu, it will show you a list of your collections. By default you will see Favorites there as a collection item which includes the books you have already added to your Favorites list.

Adding books to your collections

There are three different places in KOReader where you can add books to your collections:


1. From the File Browser and History screen

You can add a book to your collections from the File browser or History screen. From the History screen you can add books one at a time. Long press on the book and choose Collections.... Then you can choose which collection(s) you want to add this book to.

If you are adding several books, you can do this from the File browser. For multiple books this is the procedure:

  1. Long press on a book
  2. Choose Select from the popup menu
  3. Select other books
  4. Tap the checkmark (✔️) icon at the top-right corner
  5. Tap Collections

For adding a single book, just long-press on it in the File browser and choose Collections from the popup menu.


2. From the Collections menu

This method allows you to add single and multiple books to your Collections. Biggest difference from the File browser method is that you can add whole folders and their subfolders to your collections at once. This is very useful if your books are already arranged in folders. For example if all your science fiction books are in a single folder, you can create a collection named Science fiction and add this folder at once.

In the image above, Box 1 shows the book adding options. You can reach this menu from the collections screen's hamburger menu:

Removing books from your collections

You can remove a book from collections from the File browser, History screen or the Collections screen. In the File browser and History screens, long press on the book and choose Collections.... You will see a checkmark next to the collections that you added this book to. Uncheck the ones by tapping on it to remove the book from that collection. Also from the Collections screen, you can long press on a book and choose Remove from collection.

Arranging the books in your collections

Collections can be very crowded but KOReader allows you to find your books easily by providing many filtering options. If you look at the image above, you can see the filtering options in Box 2 and Box 3. Box 2 allows you to filter by book status (new, reading, finished, on hold) and Box 3 allows you to filter by book metadata (author, series, language, keywords). And also you can combine these two groups of filters like this example: "Show me the new books in this collection which are written by Isaac Asimov (Filter by authors -> Isaac Asimov) that I haven't started yet (Filter by status -> New)."

You can update the book metadata by long-pressing on the book in File browser and choosing Book information from the menu. In the popup window you can long-press on any field to change the metadata like author or keywords. You can also use Calibre for this task, a third-party application which makes managing your book metadata much easier.

INFO Be aware that Calibre changes the metadata within the book itself, so the changed metadata is visible outside of Calibre. But KOReader doesn't change the book file, it only adds custom metadata as a file in the book's .sdr folder, so this metadata is visible in KOReader only.
Searching in collections

There are two types of search you can perform in collections: You can search for a phrase in the book titles and metadata or you can also search inside the book texts. You can open the search dialog from:

If you want to perform a search in the book texts, please keep these points in mind:

Search function depends on where you are in the collections window. If you are at the root level where you can see all your collections, search will be performed on all collections. If you want to search only in a specific collection, you have to tap and enter the collection. This is especially important if you are also searching in the book texts because it is a slow operation.

When you perform a search, results will be automatically saved as a new collection.

Automatically synchronizing collections with folders

After creating your collections and adding books to them, you will probably want to keep them in sync with some folders. For example imagine that you created a Science Fiction collection. And you also have a SF folder in your library where you put your science fiction books. If you want to make the science fiction collection update itself when you add a new file to this folder, you can do it with connected folders feature of the collections.

With this feature you can connect one or more folders to your collection. After that, KOReader will (re)scan the folders to add or remove books from your collections in these conditions:

How to connect a folder to your collection:

  1. Go to the Collections screen that is seen in the image above.
  2. Long-press on the collection name which you want to connect folders (1).
  3. Select Connect folders from the pop-up menu (2).
  4. List of connected folders screen will open.
  5. Add a folder by pressing the PLUS icon at the top left corner of that screen, which will open the Folder chooser screen.
  6. Repeat the last item if you want to connect more folders.

Collections with connected folders will have a folder icon as you can see from the image above (3).

You might want to include subfolders of a folder too for synchronization. In the step 4 above, when you open the List of connected folders screen, you can long-press on a folder to include/exclude subfolders from the popup menu.


How to disconnect a folder from your collection:

  1. Go to the Collections screen that is seen in the image above.
  2. Long-press on the collection name which you want to connect folders (1).
  3. Select Connect folders from the pop-up menu (2).
  4. List of connected folders screen will open.
  5. Long-press on the folder which you want to disconnect and choose Disconnect folder from the popup menu.
Using Collections with Profiles

Your collections can be used with the profiles feature of KOReader. If you don't know about profiles yet, here is a description from our Profiles section:

A profile is basically a set of actions that can be triggered with a single gesture (like a macro).

As an example, imagine that when reading some type of books, you always:

With the profiles plugin, you can do all these at once with a single action.

You can run a profile manually but real power of profiles can be unleashed with its auto-execute feature. Using this feature, you can trigger a profile depending on some conditions. Here is the link to the relevant section of the guide: Profile auto-execution. For now we will just explain one trigger condition here: Collections.

Basically you can create some profiles and set them to auto-execute if an opened book is in some specific collection. Some useful examples:

Optimizing EPUB/PDF documents for your reader

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.

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.

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.

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.

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 the resources (images, stylesheets, scripts) embedded.

Book metadata storage options

!!! ADVANCED

KOReader stores settings and extra information related to your books in the same directory as your book file. We call this metadata and it includes:

In a recent change, we added new ways of storing this metadata to solve certain problems related to synchronization between devices. Currently there are three different methods to store the metadata and each method has its own benefits/negatives.

You can change this setting from this menu:

WARNING We strongly advise reading the section below to understand the differences and how each method works before making any changes. Otherwise there is a risk of losing your book settings, progress and annotations.

1. Individual metadata folders next to the book files - DEFAULT SETTING

This is the default method used on a new installation of KOReader. In this method, when you copy Alice in Wonderland.epub to your device and open it for the first time, a folder named Alice in Wonderland.sdr will be created in the same directory. This directory contains the files for your settings, annotations and book progress for this book.

Benefits

Negatives

2. Metadata directories under a single KOReader directory

This method is essentially same as the default one above. The difference is, in this method, all .sdr folders of your books will be under a single directory which is under the KOReader main directory structure, instead of your library directory, next to the book files.

Benefits

Negatives

3. Individual HASHED metadata directories under a single KOReader directory

This method is similar to the previous one as the .sdr folders will be under an internal directory. But this method is developed to address the shortcomings of the previous method. Because, normally if you rename a book outside KOReader (with the native file manager/reader of the device or from a connected computer), its .sdr folder name will no longer match and your metadata for that book will be lost. If you are only using the KOReader File Browser for file operations, this is automatically handled so there are no repercussions.

In this HASHED method, .sdr folders are not identified by the filepath/filename of the book. Instead, a partial MD5 hash will be used to link the books to their settings. This hash is used as a unique ID for the book and it is calculated based on the contents of the book file. Also same hash is used for naming its .sdr folder.

Benefits

Negatives

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.

Gesture Types
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 as zooming in and out on a phone or tablet.

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)

WORKS: Anywhere on the screen

Icons by Econceptive from the Noun Project

Predefined Gestures

This table shows the gestures that comes with KOReader. You can change these gestures according to your preferences via:


CORNER TAP

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


MULTISWIPES

 - 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.

INFO When chooosing an action for a gesture, you will see a special item in the list named pass through. This action is used to keep the default behavior of that gesture, like text selection when long pressing near the corners. If you want to disable a gesture to avoid accidental actions, choose nothing as the action. In other words pass through=another handler might act on it, nothing=swallow the action.
General
  1. File browser
  2. Open previous document
  3. History
  4. History search
  5. Favorites
  6. Collections
  7. Collections search
  8. Dictionary lookup
  9. Wikipedia lookup
  10. Show menu
  11. Menu search
  12. Open next file in last book folder
  13. Open previous file in last book folder
  14. Notebook file
  15. Screenshot
  16. Show ephemeris
  17. Calibre metadata search
  18. Browse all calibre tags
  19. Browse all calibre series
  20. Browse all calibre authors
  21. Browse all calibre titles
  22. Calibre wireless connect
  23. Calibre wireless disconnect
  24. Reading statistics: toggle
  25. Reading statistics: show progress
  26. Reading statistics: show time range
  27. Reading statistics: show calendar view
  28. Reading statistics: show today's timeline
  29. Reading statistics: synchronize
  30. Text editor: open last file
  31. Open vocabulary builder
  32. Wallabag retrieval
  33. Wallabag queue upload
  34. Wallabag statuses upload
  35. Reading progress
  36. Toggle SSH server
  37. Statistics calendar view
  38. Statistics today’s timeline
  39. Synchronize book statistics
Device
  1. Exit sleep screen
  2. Restart KOReader
  3. Exit KOReader
  4. Toggle long-press on corners
  5. Enable touch input
  6. Disable touch input
  7. Toggle touch input
  8. Invert page turn buttons
  9. Rotation
  10. Toggle orientation
  11. Invert rotation
  12. Rotate by 90 CW
  13. Rotate by 90 CCW
  14. Toggle Fullscreen
  15. Show network info
  16. Battery statistics
  17. System statistics
  18. Terminal emulator
  19. Start USB storage
  20. Suspend
  21. Reboot the device
  22. Power off
  23. Toggle key repeat
  24. Toggle accelerometer
  25. Turn on Wi-Fi
  26. Turn off Wi-Fi
  27. Toggle Wi-Fi
Screen and lights
  1. Show frontlight dialog
  2. Toggle frontlight
  3. Set frontlight brightness
  4. Increase frontlight brightness
  5. Decrease frontlight brightness
  6. Set frontlight warmth
  7. Increase frontlight warmth
  8. Decrease frontlight warmth
  9. Toggle night mode
  10. Set night mode
  11. Full screen refresh
  12. Full refresh rate (always)
  13. Full refresh rate (not in night mode)
  14. Full refresh rate (in night mode)
  15. Always flash on chapter boundaries
  16. Toggle flashing on chapter boundaries
  17. Never flash on chapter's 2nd page
  18. Toggle flashing on chapter's 2nd page
  19. Always flash on pages with images
  20. Toggle flashing on pages with images
  21. Auto warmth off
  22. Auto warmth use sun position
  23. Auto warmth use schedule
  24. Auto warmth use closer midnight
  25. Auto warmth use closer noon
  26. Auto warmth cycle through modes
Reflowable documents
  1. Font face
  2. Increase font size
  3. Decrease font size
  4. Font size
  5. Word spacing
  6. Word expansion
  7. Contrast
  8. Font weight
  9. Font hinting
  10. Font kerning
  11. Two columns
  12. L/R margins
  13. Sync T/B margins
  14. Top margin
  15. Bottom margin
  16. View mode (page-continuous)
  17. Render mode
  18. Zoom
  19. Line spacing
  20. Alt status bar
  21. Embedded style
  22. Embedded fonts
  23. Image scaling
  24. Invert images
File browser
  1. Set display mode
  2. Sort by
  3. Reverse sorting
  4. Folders and files mixed
  5. Show plus menu
  6. Toggle select mode
  7. Refresh content
  8. Folder shortcuts
  9. File search
  10. Last file search results
  11. Folder up
  12. Go to page
  13. Back
  14. Export all notes in all books in history
  15. OPDS catalog
Reader
  1. Show bottom menu
  2. Toggle status bar
  3. Toggle chapter progress bar
  4. Previous chapter
  5. Next chapter
  6. First page
  7. Last page
  8. Random page
  9. Turn pages
  10. Go to page
  11. Skim document
  12. Previous bookmark
  13. Next bookmark
  14. First bookmark
  15. Last bookmark
  16. Latest bookmark
  17. Back
  18. Back to previous location
  19. Forward to next location
  20. Follow nearest link
  21. Follow nearest internal link
  22. Add current location to history
  23. Clear location history
  24. Fulltext search
  25. Last fulltext search results
  26. Table of contents
  27. Book map
  28. Book map (overview)
  29. Page browser
  30. Bookmarks
  31. Bookmark search
  32. Toggle bookmark
  33. Book status
  34. Book information
  35. Book description
  36. Book cover
  37. Translate current page
  38. Invert page turn taps and swipes
  39. Toggle page turn direction
  40. Toggle custom TOC
  41. Toggle custom hidden flows
  42. Set highlight action
  43. Cycle highlight action
  44. Cycle highlight style
  45. Save book metadata
  46. Export annotations
  47. Export all notes in current book
  48. Export all notes in all books in history
  49. Move current book to archive
  50. Reading statistics: current book
  51. Push progress from this device
  52. Pull progress from other devices
Fixed layout documents
  1. Toggle page flipping
  2. Toggle bookmark flipping
  3. Toggle reflow
  4. Zoom mode
  5. Change zoom factor
  6. Toggle panel zoom
  7. Page crop
  8. Margin
  9. Horizontal overlap
  10. Vertical overlap
  11. Fit
  12. Zoom to
  13. Number of columns/rows to split page
  14. Zoom factor
  15. Direction
  16. View mode
  17. Page gap
  18. Line spacing
  19. Alignment
  20. Font size
  21. Change font size
  22. Word gap
  23. Reflow
  24. Contrast
  25. Dewatermark
  26. Render quality
  27. Document language
  28. Forced OCR
  29. Writing direction
  30. Document columns
  31. Auto straighten
Keyboard Shortcuts

If you have a device with a keyboard like Kindle 2 and Kindle 3, including Bluetooth keyboards and emulators, you can use the keyboard keys, device buttons and shortcuts to control KOReader. Kindle 4 is supported too, which lacks a full keyboard but still has enough buttons to make it functional in this context. On these devices, KOReader will enable an extra menu named Keyboard Shortcuts which you can access here:

This menu is very similar to the Gesture Manager interface. In this menu:

All of the actions in the Gesture Manager is also available for keyboard shortcut assignment. Which means you can control nearly all the functions of KOReader with these shortcuts.

In the table below, you can see the default key and shortcut assignments:

INFO Universal screenshot key is Alt + Shift + G. It is available on all screens, modes and platforms. On Kindle 4, it is Keyboard + Menu.

INFO If you have a Kindle 4, SHIFT key in the table below is mapped to your KEYBOARD button. So Shift + (UP/DOWN/LEFT/RIGHT) shortcuts are mapped to Keyboard button + (UP/DOWN/LEFT/RIGHT) on your Kindle 4.

File browser mode
Open top menu F1
Navigate to home Home
Move in file list Up / Down
Open selected book Enter
Exit application Esc
Reading mode
Open top menu F1
Open bottom menu Enter
Back/exit application Esc
Bookmarks Shift + Left
Toggle bookmark Shift + Right
Dictionary lookup Ctrl + D (Alt + D on Kindles)
Wikipedia lookup Ctrl + W
Fulltext search Ctrl + S
File search lookup Ctrl + F
Links
Select next page link Tab
Select previous page link Shift+Tab
Open selected page link Enter
Image viewer (long-press on image)
Zoom in Page Down
Zoom out Page Up
Highlighting
Enter highlighting mode H
Start/stop highlighting Enter
Move highlight indicator Left/Right
Up/Down
Move indicator faster Shift +
Left/Right/Up/Down
Exit highlighting mode Esc
Navigating the book
Page turn Left-Right / Up-Down
Page Up-Page Down
Table of contents Shift + Up
Book map Shift + Down
Go to the beginning 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 0
In Skim Document dialog
Go to the beginning 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 P
Page zooming

Only for PDF, DJVU and images

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
QUICK MENU AND PROFILES
Quick Menu

Quick Menu is a recent feature of KOReader which allows you to have a quickly accessible personalized menu as in the example image below. You can assign this menu to a gesture and access it with a single swipe. 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:

  1. You don’t need to memorize lots of gestures for every action.
  2. 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.
  3. 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 of creating a Quick Menu: Easy and Advanced. If you need only one menu, Easy method should be enough for you. If you want to show different menus with different gestures you need to use Advanced method. Another advantage of Advanced method is easier gesture reassignment. If you want to change the gesture for your menu, you can easily move it to another gesture with the Advanced method menu. 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
  1. Go to Gesture Manager menu via:
  2. Decide a gesture for opening your menu and tap on it.
  3. Choose the actions you want to see in your menu from the gesture configuration menu. You can select many actions at once of course.
  4. 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.
  5. 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.

This 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 them, you can continue reading, otherwise jump to the Profiles heading (next section), create a Profile with some items and come back here.

Before continuing, 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:

You can enable this option from the following menu if you have a Gesture Manager based (Easy method) Quick Menu:

Or from this menu, if you have a Profiles based – (Advanced method) Quick Menu:

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:

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 gesture (like a macro).

As an example, imagine that when reading some type of books, you always:

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:

then you have to turn it on from:

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:

  1. You can activate a profile with a long press on its name from this same Profiles menu
  2. 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:
  3. You can also activate a profile automatically depending on some conditions. See the next heading to learn how to use this powerful feature.
Profile auto-execution

You can run a profile manually as explained above but real power of profiles can be unleashed with its auto-execute feature. Using this feature, you can trigger a profile depending on some conditions and sub-conditions:

TriggerSub-conditions
On KOReader start

Run this profile every time KOReader starts. Note that this is only possible when KOReader is starting with the File browser or Last file.

-
On wake-up

Run this profile every time device wakes up

-
On rotation

Run this profile when screen rotates to the selected rotation(s).

Examples: Change to double column layout when device rotates to landscape. Activate night mode when device rotates upside down.

  • Left 90° (landscape)
  • (normal)
  • Right 90° (landscape)
  • 180° (upside down)
On showing folder

Run this profile when you enter this folder in file browser. You can use this trigger to change the display mode of file browser. For example when you enter a certain folder you can change the display mode from mosaic to detailed view.

  • If folder path contains a certain text
  • If folder path doesn't contain a certain text
On book opening

This trigger is executed when you open a book (optionally) combined with specific sub-conditions.

First 4 sub-conditions are OR matching, so any one of them is enough to trigger the profile execution.

  • Combined with device orientation
  • Combined with book metadata
  • Combined with book file path
  • Combined with collections book is included in
  • Combined with book is being opened for the first time
On book closing

This option is same as above but it triggers when you close a book. You can use this for example enabling/disabling reading statistics when you open certain documents to exclude them from your stats.

  • Combined with device orientation
  • Combined with book metadata
  • Combined with book file path
  • Combined with collections book is included in
  • Combined with book is being opened for the first time


Profile examples:

Here are some profile examples from our devs to give you ideas about using this powerful feature of KOReader. Examples also include auto-execute conditions and collections features:

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:

  1. As a profile (which is explained as the Advanced Method and stored in settings/profiles.lua)
  2. 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:

  1. Applying each action in the (sorted) order when triggered (as a Profile)
  2. 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.

INFO You can backup and transfer your profiles to another device. Please see Backup your KOReader settings section.

PLUGINS AND USER PATCHES
Plugin types

Plugins are small KOReader programs that are similar to browser add-ons which extends the capabilities of the base program. KOReader has 3 categories of plugins:

Internal

Internal plugins are part of the core program.

You can enable/disable them via:

Contrib

!!! ADVANCED

This group contains non-official plugins which are not part of the core logic of KOReader.

You can access them from this page. Generally they are installed by downloading the plugin’s directory from the page above and copying it under koreader/plugins folder on your device. But please check the plugin’s page for other possible instructions.

External

!!! ADVANCED

These are plugins that are developed independently from the KOReader team.

Some notable examples of these external plugins with links to their GitHub pages:

Also you can click this link to open a search page on Github to discover more KOReader plugin projects.

List of internal plugins

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

Calibre - You can send documents from your Calibre library directly to your KOReader devices via WiFi connection. Check our wiki page for how-to.

Cover browser - Allows cover display modes for file browser and history

Cover image - Saves the cover image of the current book as a file (available on Android/PocketBook/reMarkable devices)

Export highlights - Export highlights and notes to local files or to Joplin (a note taking application)

Flashcard trainer - Show flashcards using spaced repetition (SM2) of highlight from your library

Gestures - Provide gesture support for KOReader

HTTP Inspector - Allows you to control your device from another device over wifi - See below for more info

Japanese support - Japanese language support for KOReader that extends built-in dictionary and selection system

Keep alive - Keeps the device awake to prevent automatic WiFi disconnects

Move to archive - Moves current document to archive folder

News Downloader - Retrieves RSS and Atom news entries and saves them as HTML files. Check our wiki page for how-to.

OPDS - Allows you to download books from online catalogs

Perception expander - Allows using peripheral vision to read more quickly. Check this YouTube video to see how it works: How to Triple Your Reading Speed in 20 Minutes (Tim Ferriss)

Profiles - Allows combining multiple settings to make switchable profiles

Progress sync - Synchronize your reading progress across different KOReader devices. Check our wiki page for how-to.

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 our wiki page for how-to.

System statistics - You can see your CPU/RAM/BATTERY info via this plugin under:

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

Wallabag - Downloads the latest articles from a Wallabag server as individual EPUB files. Check our wiki page for more info.

Controlling your reader from another device - HTTP Inspector Plugin

!!! ADVANCED

This plugin allows you to control your device from another device over wifi. It works by running a simple HTTP server on your device which serves a page containing KOReader controls. You can access this page over your network and control your reader device. But be aware of these points when using this plugin:

You can read an example use case for this plugin on the MobileRead forum

User patches

!!! ADVANCED

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 our wiki and in the GitHub issues list marked with the User patch available tag. You can see them by following this link.

Basic usage – Adding an already written patch to your KOReader:
  1. Create a directory named patches under koreader directory on your device (On Android this folder is located on the SD-card)
  2. Download and put the patch file with .lua extension in this patches directory
  3. 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:

If you have a problem with a user patch, you can revert to your previous configuration by removing the patch file.

TIPS
Reading Tips
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 the Alt+Tab feature on the desktop computers. You can find this feature under:

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.

Changing your book cover

You can change your book cover from this menu:

Custom book cover from a screenshot

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:

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.
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:

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.

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:

Device Tips
Updating KOReader

KOReader can update itself over Wi-Fi. You can trigger the check via this menu item:

Adding 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:

  1. Choose any gesture (including the complex ones with custom multiswipes) and make it your "unlock" gesture by going to:
  2. And then enable this option:
Automatic screen dimming

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:

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:

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:

Checking your battery consumption details

You can see your detailed battery usage statistics via this menu item:

Checking detailed device statistics

You can see your system information like CPU/DISK SPACE/RAM usage via this menu item:

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.

Also you can configure KOReader to restart automatically if memory usage reaches a threshold via:

TROUBLESHOOTING

If you can't find a solution to your problem in this guide, you can open an issue about it on the project's GitHub page or make a post in the KOReader section of the Mobileread forum. Please see the last section of this guide for details.

Nightly versions

KOReader has two different versions:

Normally if you are an average user, stable version is the one you should use. But in some specific cases you might need to use a nightly version:

This section was just a general introduction to the topic. For detailed information and asking for help about nightly versions, you can visit the discussion page: FAQ: How to track latest nightly builds

TIP If you are using KOReader on an Android device, you can use the Work Profile feature of the Android OS to test the Nightly versions without affecting your main KOReader installation. Open source applications like Shelter and Island can help you with this.

Backup 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
  • settings/profiles.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.
My Progress Sync doesn't synchronize my progress

This might be caused by the Write highlights into PDF feature of KOReader if you enabled it. Saving PDF highlights will change your file so your synchronization will fail. If you are planning to use both features, in the Progress Sync plugin's settings, change the Document matching method to Filename instead of the default Binary matching:

My 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:

If the problematic book is an EPUB:

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:

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:

Opening an issue:

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 Mobileread forum 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.

You can see this procedure in a real issue involving a very problematic EPUB file here.

I see small numbers on the side when reading a book

Those small numbers are called Reference Page Numbers. In short, they are the real page numbers from the printed version of your book. For more information please click here Reading Screen to go to the relevant section.

My status bar disappeared

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.

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. This sensor can sometimes be mentioned as a Hall sensor or Hall effect sensor. In some cases like misaligned or weak magnets, this triggering can be problematic. If you are having problems with your device waking up because of your cover, you can disable this feature via this menu:

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.

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:

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:

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.
REACH US

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 GitHub Issues page.

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:

You can also find the version number of your KOReader and your device type from the same dialog for reporting.

If you have a suggestion or question related to this User Guide you can write to the GitHub discussion thread

You can also . . .

Find other KOReader users on MobileRead forums

Reach us at Gitter chat

Support the project via Liberapay