![]() |
#121 |
Junior Member
![]() Posts: 3
Karma: 10
Join Date: Jan 2015
Device: Kobo H20
|
|
![]() |
![]() |
![]() |
#122 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
When the line spacing is low enough that the descenders of one line start to overlap the ascenders of the line below, there is no way to draw a boundary line between the two lines of text without it including some of the upper line in the lower one or vice versa.
The kepub reader seems to be rendering all the lines of a paragraph first, and then choosing where to break the page afterwards, and so when the lines overlap there is no way to break the page cleanly in the middle of a paragraph. The result is that the bottom part of the last line appears at the top of the next page, and vice versa. The epub reader must be using a smarter method where it calculates how many lines to render on each page before actually rendering them, as it doesn't have this problem. If this is right, then there will be no way to avoid the problem in kepubs except to increase the line spacing until no part of successive lines overlap, but the minimum line spacing to use will depend on the font family. Edit: I haven't tested, but I expect the same problem will happen in kepubs with the unpatched firmware if the line-height is set below a certain value in the book's stylesheet. If so then perhaps this could be reported to Kobo as a bug. Last edited by GeoffR; 01-10-2015 at 07:51 PM. |
![]() |
![]() |
Advert | |
|
![]() |
#123 |
Bookworm
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 975
Karma: 768585
Join Date: Aug 2010
Location: Netherlands
Device: Sony prs-650, Kobo Glo HD (2x), Kobo Glo
|
I didn't install 3.12.0 because I have seen the ghosting problem, so I didn't patched it (nor ask GeoffR to help me with it
![]() Maybe i manage without help, but I do want to ask/beg you to keep the main patch the way it is and all the option patches I have seen in all the last posts will be an additional,because like we say in Dutch litteraly like our famous coach in England now, I can't see the forest behind the trees anymore ![]() So a basic patch that was common until now for me as Dummy,and an advantage patch with all the other options. And with all the advanced options and patches I have to keep in mind,can they be adapted to 3.13.0 or have you start all over again ?? It seems to me that it will take a long time to change them all.. respect if you are planning to do all the additional patches for every new firmware to come ![]() |
![]() |
![]() |
![]() |
#124 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,545
Karma: 14008730
Join Date: May 2008
Location: PA (USA)
Device: Kobo Clara, 2E, Libre 1, PW4, PW5, 2022 Kindle, Kobo Libre Colour
|
When adding an external SD card, is one required to reapply patches? I just popped in an empty card, and the home screen thumb nail patch disappeared. Wait, now it's back. The Kobo is doing "something"...a library tile show a decreasing number of "books added." Is this normal behavior when adding an ext card? (Device - Kobo Aura)
|
![]() |
![]() |
![]() |
#125 | |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Quote:
With the next firmware patch I will be using the new version v0.10 of patch32lsb, I just need someone to compile an executable for the Mac. The new patch32lsb will allow some patches to be applied to new firmware versions without any manual changes needed, so as long as Kobo don't change the string being patched then you will be able to use your custom reading footer patch with new firmware versions without making any changes at all, just copy and paste it into the new libnickel.so.1.0.0.patch file. Also the new patch32lsb version allows some patches to use addresses relative to a single base address, so those patches can then be updated just by changing one address which will save a lot of typing and reduce the possibility of typos when updating the patch. |
|
![]() |
![]() |
Advert | |
|
![]() |
#126 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047190
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
@GeoffR: Your wish is my command
![]() Last edited by NiLuJe; 01-11-2015 at 08:09 PM. Reason: Killed deprecated attachment, see the next two posts ;) |
![]() |
![]() |
![]() |
#127 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Thanks, is it possible to compile a fat executable that will work on 32-bit systems too?
I compiled the Linux and Windows executables with gcc -Wall -O, the optimisation wasn't important in ealier versions but in this version there are a couple of functions that will be quite slow without it. |
![]() |
![]() |
![]() |
#128 |
BLAM!
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,506
Karma: 26047190
Join Date: Jun 2010
Location: Paris, France
Device: Kindle 2i, 3g, 4, 5w, PW, PW2, PW5; Kobo H2O, Forma, Elipsa, Sage, C2E
|
I went with a basic -O2, FWIW
![]() I've never handled fat binaries manually, I'll see what I can come up with, if no one beats me to it (is that even doable w/ a 10.10 SDK?) ![]() EDIT: Yes it is, and apparently as simple as passing -arch i386 -arch x86_64 to the compiler & linker ![]() Code:
gcc -pipe -O2 -fomit-frame-pointer -mmacosx-version-min=10.6 -arch i386 -arch x86_64 -Wall -o patch32lsb patch32lsb.c Last edited by NiLuJe; 01-11-2015 at 10:19 PM. Reason: Remove deprecated attachment (cf. next message) ;). |
![]() |
![]() |
![]() |
#129 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Thanks very much NiLuJe, I've updated post #102 to attach the full patch_kobo_3120v010.zip package which includes executables for patch32lsb v0.10 and all the patches from post #1 and #2 updated to use the new keywords.
The patches that can be used for multiple firmware versions have had a comment added to indicate how far back they can be applied. If you customise the multi-version patches in post #102 then with a bit of luck you will be able to use them in the next firmware version without any further changes. |
![]() |
![]() |
![]() |
#130 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
`Fix kepub side bearing font cut-off bug` patch and new KoboTouchExtended driver.
Here is a new version of the `Fix kepub side bearing font cut-off bug` patch, it should work better with kepubs sideloaded with the new version of the KoboTouchExtended driver being tested here.
Spoiler:
I'll try to explain how it all works here, if this is not clear then let me know and I'll try to explain it better. Some kepubs (I'll call them Type 1) have added book-columns and book-inner divisions, and these can be used to fix the cut-off bug suffered by kepubs in full-screen mode with a minimum of side effects, just slightly more space at the edge of the screen. Other kepubs (I'll call them Type 2) don't have those divisions, and fixing the bug for these kepubs can sometimes result in extra space between elements of their layout, such as between floating elements like drop-caps, or in some cases between paragraphs. Type 1 kepubs are the ones created by Kobo from epub2 books, and now created by the new KoboTouchExtended driver. (You can tell whether Kobo have created the kepub from an epub2 book because there will be an epub2 download option on the website.) Type 2 kepubs are the ones created by Kobo from epub3 books, and by the old KoboTouchExtended driver. If you only read sideloaded kepubs created by the new KoboTouchExtended driver, then you can fix the cut-off bug without using the firmware patch at all, by adding using the KoboTouch driver's "Extra CSS" option and adding the following line to your kobo_extra.css: Code:
div#book-columns {padding: 0.2em !important;} If you read kepubs synced from Kobo, or created by the old KoboTouchExtended driver, then you'll need to use the firmware patch to fix the bug. You can use the firmware patch with kepubs created by the new KoboTouchExtended driver too, in which case it is not necessary to use the "Extra CSS" option described above. If you use both the firmware patch and kobo_extra.css then the patch will override kobo_extra.css The patch has two main options, marked **1** and **2**. See the notes in the patch itself about these options. You'll need to change option **1** if you want to fix the bug for type 2 kepubs. Last edited by GeoffR; 01-24-2015 at 05:25 AM. Reason: replaced `Fix kepub side bearing font cut-off bug` patch with one that works with patch32lsb v0.7 |
![]() |
![]() |
![]() |
#131 | |
Bookworm
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 975
Karma: 768585
Join Date: Aug 2010
Location: Netherlands
Device: Sony prs-650, Kobo Glo HD (2x), Kobo Glo
|
Quote:
Didn't thought about that. I am a bit,how to say, I just wait when a new firmware is there and first look to the error reports,then I make a choice,is this firmware good for me ? I don't want to start a rant on Kobo but every firmware they release has maybe some fixes,but introduce new bugs also and sad but lately the bugs they introduce are bigger then the fixes they make,leaving old bugs active for many months. Brings me to another problem, my girlfriend now owns a Kobo but she often have no time to read,when she calls the reader alive, with the patch the footer is always below the bezel ( I mean page xx of xx ) The only way to make it looks okay is to go into font settings,change the margins a bit,then it renders and it is okay. Is there no way to prevent this from happening ? I think it is also the reason that Kobo uses the big footers,just to be sure that it all fits the reading window ? |
|
![]() |
![]() |
![]() |
#132 | |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
With patch32lsb v0.10 the addresses can be found automatically for some patches, so there might be no need to change anything at all in the patch for it to work with the next firmware version.
Quote:
Last edited by GeoffR; 01-19-2015 at 10:48 PM. Reason: added quote |
|
![]() |
![]() |
![]() |
#133 | |
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 79,484
Karma: 145863170
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
Quote:
Code:
<Patch> patch_name = `Custom reading footer style (Aura HD/H2O)` patch_enable = `yes` replace_string = E359A4, `ReadingFooter {\n\tmin-height: 70px;\n\tmax-height: 70px;\n\tqproperty-footerMargin: 105;\n}\n\nReadingFooter[qApp_deviceCodeName="phoenix"] {\n\tmin-height: 82px;\n\tmax-height: 82px;\n}\n\nReadingFooter[qApp_deviceCodeName="dragon"] {\n\tmin-height: 120px;\n\tmax-height: 120px;\n\tqproperty-footerMargin: 170;\n}\n\n* {\n\tfont-size: 16px;\n}\n\n[qApp_deviceCodeName="phoenix"] {\n\tfont-size: 20px;\n}\n\n[qApp_deviceCodeName="dragon"] {\n\tfont-size: 26px;\n}\n\n[qApp_localeName="ja_JP"] {\n\tfont-family: A-OTF Gothic MB101 Pr6N;\n}`, `ReadingFooter {\n\tmin-height:120px;\n\tmax-height:120px;\n\tqproperty-footerMargin: 170;\n}\n\n* {\n\tfont-size: 26px;\n\tpadding-bottom: 0px;\n\tmargin-top: 0px;\n\t/*font-family:none;*/\n}\n\n[qApp_localeName="ja_JP"] {\n\tfont-family: A-OTF Gothic MB101 Pr6N;\n}` # # Uncomment the three replace_string lines of one of the examples below, # comment out the rest. If you choose to make further changes to the examples, # BE CAREFUL NOT TO ALTER THE LENGTH OF THE REPLACEMENT STRINGS! (Add or remove # spaces if necessary to keep the total length the same.) # # Examples 1 or 4 are recommended for use with the adjustable/fixed top/bottom # margin patches when configured to set both top and bottom margins. # # Examples 4, 5 or 6 are recommended if you also read kepubs, because the space # between bezel and footer matches the space between bezel and kepub header. # # # Example 1: Small footer, close to bezel replace_string = E359B5, `min-height:120px;`, `min-height: 35px;` replace_string = E359C8, `max-height:120px;`, `max-height: 30px;` replace_string = E35A12, `padding-bottom: 0px;`, `padding-bottom: 4px;` # # Example 2: Medium footer, close to bezel #replace_string = E359B5, `min-height:120px;`, `min-height: 52px;` #replace_string = E359C8, `max-height:120px;`, `max-height: 52px;` #replace_string = E35A12, `padding-bottom: 0px;`, `padding-bottom: 7px;` # # Example 3: Large footer, close to bezel #replace_string = E359B5, `min-height:120px;`, `min-height: 80px;` #replace_string = E359C8, `max-height:120px;`, `max-height: 80px;` #replace_string = E35A12, `padding-bottom: 0px;`, `padding-bottom: 0px;` # # Example 4: Small footer, away from bezel #replace_string = E359B5, `min-height:120px;`, `min-height: 40px;` #replace_string = E359C8, `max-height:120px;`, `max-height: 40px;` #replace_string = E35A12, `padding-bottom: 0px;`, `padding-bottom:36px;` # # Example 5: Medium footer, away from bezel #replace_string = E359B5, `min-height:120px;`, `min-height: 52px;` #replace_string = E359C8, `max-height:120px;`, `max-height: 52px;` #replace_string = E35A12, `padding-bottom: 0px;`, `padding-bottom:30px;` # # Example 6: Large footer, away from bezel #replace_string = E359B5, `min-height:120px;`, `min-height: 80px;` #replace_string = E359C8, `max-height:120px;`, `max-height: 80px;` #replace_string = E35A12, `padding-bottom: 0px;`, `padding-bottom:16px;` # # # Uncomment the following line to reduce the footer font size: replace_string = E35A00, `font-size: 26px;`, `font-size: 26px;` # # Uncomment the following line to further reduce the space above the footer: replace_string = E35A28, `margin-top: 0px;`, `margin-top:-7px;` # # Uncomment one of the following lines to use a fixed font style. This is # recommended if you have chosen examples 1 or 4 above, because some other # fonts sit too low in the footer and get cut off at the bottom. # Also enable one of the Custom header style patches below with the same font # style if you read kepubs. # replace_string = E35A3A, `/*font-family:none;*/`, `font-family: Amasis;` #replace_string = E35A3A, `/*font-family:none;*/`, `font-family: Avenir;` #replace_string = E35A3A, `/*font-family:none;*/`, `font-family: Georgia;` # </Patch> |
|
![]() |
![]() |
![]() |
#134 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
|
![]() |
![]() |
![]() |
#135 |
Addict
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 320
Karma: 3394
Join Date: Aug 2009
Device: Pocketbook 602 Pro, Kobo Aura HD, LG G Pad III
|
This is a dumb question. I don't know which software to use for opening and editing the .patch files in Windows. I could open them and make changes with notepad. Is that okay?
|
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Instructions for patching firmware 3.11.0 | GeoffR | Kobo Developer's Corner | 226 | 06-01-2015 05:32 AM |
Instructions for patching firmware 3.2.0 | DNSB | Kobo Developer's Corner | 66 | 12-05-2014 07:28 AM |
Instructions for patching firmware 3.8.0 | GeoffR | Kobo Developer's Corner | 92 | 10-22-2014 07:22 AM |
Instructions for patching firmware 3.3.x, 3.4.x, 3.5.x | GeoffR | Kobo Developer's Corner | 285 | 08-27-2014 10:06 AM |
Instructions for patching firmware 3.1.1 | GeoffR | Kobo Developer's Corner | 64 | 04-18-2014 01:23 PM |