|
|
#1 |
|
Junior Member
![]() Posts: 6
Karma: 10
Join Date: Oct 2026
Device: Undecided
|
Hello. I have been using KOReader for quite some time now. While I do appreciate its customizability, I did find it somewhat lacking that I had no opportunity to customize font weights, slant types and text decorations (strikethrough, underline, etc) for each individual category: The font weight setting would affect all fonts globally; If a font has both italic and oblique variants, it would not distinguish between them; If you found underlines too thin, for example, you didn't really have any control over them.
I have made some modifications to crengine and now these settings can be controlled individually for each font category. I also turned the "main" font category to a category of its own. If a certain piece of text does not have any font category assigned to it, it will be controlled by "Unclassified" (main) category. All of the 9 categories can have their 4 attributes set independently from the rest — Font face, font weight, slant type, and text decoration weight. Another important addition I have made is that the app will now recognize different widths of fonts as distinct entities. For example, instead of "Noto Serif", you will now get "Noto Serif", "Noto Serif Semi-Condensed", "Noto Serif Condensed", and "Noto Serif Extra-Condensed". This would apply to all font families based on their files' width metadata. These changes can now be controlled by my plugin in Document settings. Essentially, the plugin gives you access to an advanced searchable font face selection screen (which can also be accessed normally), font weights, slant types, and text decoration weight (50–500%) for each category separately. Another feature I have implemented is font caching: The app will not load all your fonts at startup: It will cache them once and only load those fonts if you actually select them. If you have even 1000s of font files, the app can launch almost instantly. The cache file barely takes 1 MB of space. This cache file will automatically update itself upon detecting any change to your font files. All you need to do is patch crengine and use the "Advanced Typography" plugin. I am really interested in your feedback, as I found it very surprising that almost no epub reader app would let the user such granular control. You can find more about this here: https://github.com/Absolute-Confusion/Crengine-Extended So far, a separate .appimage and .apk file are also provided if you wanna install it directly. Let me know what you think
|
|
|
|
|
|
#2 |
|
monstrous mythical beast
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 199
Karma: 5078396
Join Date: May 2023
Location: Klopstokia
Device: Tab Ultra C, Meebook P78 Pro, Viwoods AIPaper Reader, various NXTPAPER
|
"I am really interested in your feedback, as I found it very surprising that almost no epub reader app would let the user such granular control."
I guess most people are just satisfied with what a reader app offers without the need to go to much into details. I would have tried your plugin just for testing purposes, but then I read "Crengine-Extended has to be built into KOReader from source" and that's the point where I lost interest because I have no clue how to do this on Windows with "git clone --recursive https://github.com/koreader/koreader.git, then git checkout v2026.07.1 and git submodule update --init --recursive". |
|
|
|
|
|
#3 |
|
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 85,258
Karma: 154365101
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
You should create a copies of KOReader (for the various platforms) for your git that has everything already built for testing. A lot of people won't know how to built your engine into KOReader.
Last edited by JSWolf; 10-07-2026 at 10:49 AM. |
|
|
|
|
|
#4 |
|
Junior Member
![]() Posts: 6
Karma: 10
Join Date: Oct 2026
Device: Undecided
|
I am sorry for the confusion. I have finalized this project just yesterday. Since I am working on Linux, I focused on making the .appimage available first. There is also an .apk file but that's for Android. I will make it available for windows too, for those who do not want to manually compile it. It won't take long, maybe a few days.
In the meantime, I honestly don't understand how a lot of epub apps emphasize customizability but customizabiltiy for some reason never includes managing your fonts separately. This is why I had to make these changes. |
|
|
|
|
|
#5 |
|
Junior Member
![]() Posts: 6
Karma: 10
Join Date: Oct 2026
Device: Undecided
|
I apologize for the wrong "heads-up". It looks like making it available for Windows would be very challenging since KOReader hasn't supported Windows for a very long time. I hope the Android version would suffice just for testing. The Appimage version also works very well with no apparent issues. I will mainly be targeting Linux and Android so far.
Right now, I am interested to know how such changes would be perceived by others. Last edited by BrutalConfusion; 10-07-2026 at 03:43 PM. |
|
|
|
|
|
#6 |
|
monstrous mythical beast
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 199
Karma: 5078396
Join Date: May 2023
Location: Klopstokia
Device: Tab Ultra C, Meebook P78 Pro, Viwoods AIPaper Reader, various NXTPAPER
|
What I meant was I don't know what to do with the git commands under Windows. I only use KOReader on Android, so an apk file is alright.
I haven't looked on the release site of "Crengine-Extended for KOReader 2026.07.1" previously, I just noticed the install remarks and then wrote my comment. Since you mentioned that you wrote a plugin, I supposed it would be a zip archive with a folder of the plugin files like all the other plugins I've tried so far. There is an apk file on the release site. So I give it a try together with the and will report back. |
|
|
|
|
|
#7 |
|
monstrous mythical beast
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 199
Karma: 5078396
Join Date: May 2023
Location: Klopstokia
Device: Tab Ultra C, Meebook P78 Pro, Viwoods AIPaper Reader, various NXTPAPER
|
I installed the apk file on an Android 15 device. Now I have 2 KOReader in the app drawer "KOReader" and "KOReader Extended", although still only one koreader folder.
When I try opening an epub file with the Extended I always get "No reader engine for this file or invalid file." The epub files open without problems on the normal KOReader. So a reader engine is missing. Well, that didn't work out well. I could uninstall the Extended app without problems. The normal KOReader still works as before. |
|
|
|
|
|
#8 | |
|
Junior Member
![]() Posts: 6
Karma: 10
Join Date: Oct 2026
Device: Undecided
|
Quote:
I should have tested it more thoroughly then. I tested it on my device and fixed that issue. The new apk should work for you. It already comes with the plugin installed. Check the screenshots in the github page if you need more info. You can also ask me, of course
|
|
|
|
|
|
|
#9 |
|
monstrous mythical beast
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 199
Karma: 5078396
Join Date: May 2023
Location: Klopstokia
Device: Tab Ultra C, Meebook P78 Pro, Viwoods AIPaper Reader, various NXTPAPER
|
Thanks for the updated version. Now epub files will open. Since I use the Proba Pro font family on every epub, I only noticed a change when using "1. Default (unclassified)".
Since Proba Pro is sans-serif I also tried "3. Sans-Serif". That did nothing for me. Changing the values for "Font Weight" and "Decoration Weight" works, but I don't see the use for me personally. Changing the font weight can be useful if you want a more bold like or finer font appearances. But for me the regular Proba Pro font is pleasant enough for reading, after all I tried several fonts until I stucked with this one. If one relys on embedded fonts your plugin may be a good option, I guess. I also don't like it that I have to get in the top menu every time I changed a value like "Font Weight". That are 3 taps just to get into the Advanced Typography menu again. When I change the value for "Font Face" for example I get back to where I started in the menu. That should be the same after value changing. |
|
|
|
|
|
#10 | |
|
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 85,258
Karma: 154365101
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
Quote:
If I was to use KOReader, I'd want to use it on my Kobo Libra 2. |
|
|
|
|
|
|
#11 | |
|
Junior Member
![]() Posts: 6
Karma: 10
Join Date: Oct 2026
Device: Undecided
|
Quote:
I must say, The UI is not the best since I first wanted to make it just functional. I ran into many problems trying to "decouple" every category. Default crengine had some quirks where "Unclassified" text was using Sans-Serif attributes. I will eventually polish the UI to make it more easily accessible. |
|
|
|
|
|
|
#12 | |
|
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 85,258
Karma: 154365101
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
Quote:
|
|
|
|
|
|
|
#13 | |
|
Junior Member
![]() Posts: 6
Karma: 10
Join Date: Oct 2026
Device: Undecided
|
Quote:
There is only one change from all these that the developers accepted: Earlier, if your text had multiple decorations (underline, strikethrough), only one of them was rendered. They actually implemented my solution here (I am not sure if it is released, though). Unfortunately, they are not willing to implement the rest. So I'll maintain these myself, probably a few times a year. |
|
|
|
|
![]() |
| Thread Tools | Search this Thread |
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Fixing Up Typography | ahi | Workshop | 65 | 11-18-2013 04:35 AM |
| Typography tips? | Anna Drake | Writers' Corner | 2 | 10-14-2013 11:42 AM |
| Kindle Typography | ChaoZ | Amazon Kindle | 21 | 08-14-2010 12:50 PM |
| Lost My Very Long Post With Questions About PB 301 Controls vs PB 360 Controls | Vienna01 | PocketBook | 6 | 06-04-2010 01:51 PM |
| French Typography | ahi | Workshop | 14 | 09-16-2009 02:22 PM |