![]() |
#571 |
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 603
Karma: 641742
Join Date: Mar 2012
Location: DE
Device: Kobo Glo
|
Code:
`Freedom to advanced fonts control` Can someone confirm this? BTW, can someone ask on the Russian the-ebook.org forum if Metazoa has searched or looked for possible hacks in the libadobe.so file? |
![]() |
![]() |
![]() |
#572 | |
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 817
Karma: 6528026
Join Date: Sep 2012
Device: Kobo Elipsa
|
Quote:
|
|
![]() |
![]() |
![]() |
#573 | |
Groupie
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 197
Karma: 82624
Join Date: May 2013
Device: Kobo Forma, Kobo Aura One, Kobo Aura HD, Kindle, Amazon Fire HD
|
Change the lines as in the this post and working just fine, just pached
Quote:
|
|
![]() |
![]() |
![]() |
#574 |
Connoisseur
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 78
Karma: 165868
Join Date: Jan 2012
Device: Nook Touch
|
Would it be possible to use this to re-enable reading stats for side loaded books?
I would try it myself, but the last time I did some reversing & patching was at least 15 years ago! :-) Last edited by met67; 12-07-2013 at 11:46 AM. |
![]() |
![]() |
![]() |
#575 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 13,511
Karma: 78910202
Join Date: Nov 2007
Location: Toronto
Device: Libra H2O, Libra Colour
|
Quote:
Yes it is conceivable that the location could be found where these comparisons are made, but some one needs to work on it. Our experience so far has been that even if a book is named correctly and stored correctly that the next sync with Kobo via desktop or WiFi will delete the book. |
|
![]() |
![]() |
![]() |
#576 | |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 490
Karma: 1665031
Join Date: Nov 2010
Location: Vancouver Island, Nanaimo
Device: K2 (retired), Kobo Touch (passed to the wife), KGlo, Galaxy TabPro
|
Quote:
How exactly is it not working? I found whenever I made any changes to the footer I had to tap the Aa to open & close the fonts settings and then page forward/back. After that the footer would display with the proper settings. I found the best way to judge what the footer space looked like was to have a book open that had the cover displayed full screen. |
|
![]() |
![]() |
![]() |
#577 | |
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 817
Karma: 6528026
Join Date: Sep 2012
Device: Kobo Elipsa
|
Quote:
Below is the relevant part of what I am currently using, which works ok. I would prefer slightly more space under the Page # of #, but I can live with this. I'll probably keep playing with it to see if I can get padding-bottom to work. Code:
{\n\tmin-height: 40px;\n\tmax-height: 70px;\n\tfont-size: 26px;\n} |
|
![]() |
![]() |
![]() |
#578 | |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Quote:
I think this might be causing some of the problems people have with getting the footer patch to work, as the end of the old string might override the new string depending on what the new combined string looks like. You could try adding some space to the end of the replacement string to overwrite more of the original string. Or maybe adding some junk characters to the end of the new string will cause the CSS interpreter to stop when it can't parse the junk. If you are running Linux you could try to apply the patch with my program in this post to see if there is a difference, as it does terminate the string when the replacement is shorter than the original. |
|
![]() |
![]() |
![]() |
#579 | |
Bibliophagist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 46,190
Karma: 168983734
Join Date: Jul 2010
Location: Vancouver
Device: Kobo Sage, Libra Colour, Lenovo M8 FHD, Paperwhite 4, Tolino epos
|
Quote:
The bytes at 13FA550 (fw 3.1.0) were: Code:
2A 20 7B 0A 09 68 65 69 67 68 74 3A 20 32 35 70 78 3B 0A 09 66 6F 6E 74 2D 73 69 7A 65 3A 20 32 30 70 78 3B 0A 7D 0A 0A 68 65 69 67 68 74 3A 20 * {\n\theight: 25px;\n\tfont-size: 20px;\n}\n\nheight: The only time I would see the termination as being a problem is if someone did not maintain the structure of the the replacement block with the terminating }\n. Admittedly that was why I originally started converting the ReadingFooter block to a human readable form to be able to see and avoid some of those errors. Regards, David Last edited by DNSB; 12-08-2013 at 02:17 AM. |
|
![]() |
![]() |
![]() |
#580 | |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Quote:
ReadingFooter { ... }\n\n ReadingFooter[deviceCodeName="dragon"] { ... }\n\n which I think means that the first clause is applied to all devices, then the second is read but only applied for AuraHD devices. So if the replacement string was the right length to overwrite the first clause but leave the second intact, and there was no terminating null to end the string, then the second clause from the original string would still be applied to AuraHD devices, possibly overriding the first clause. Edit: I added code to my own program to test, if I terminate the replacement string with a null then I get binary output that differs from what kpg.exe produces, but if I don't terminate the string then I get output identical to kpg.exe. Last edited by GeoffR; 12-08-2013 at 02:24 AM. Reason: tested this with my program |
|
![]() |
![]() |
![]() |
#581 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Ok I have a test case for fw 3.1.0 (d1b2f00933) that demonstrates the problem with the way kpg.exe is applying the footer patch:
Spoiler:
When I apply the above patch with kpg.exe, the new footer is ignored on my Glo. However if I apply the patch using my own program which terminates the replacement string with a null character, then the new footer works as expected on my Glo. The reason the kpg.exe applied patch is being ignored is that the end of the original string is still being read after the replacement, and so the clause in the original with the [deviceCodeName="kraken"] overrides the new footer, and I just get the original footer. Edit: I should note for anyone trying this out that my program uses a slightly different syntax in the patch: instead of "replace_xor_58 = ...", write "encode_xor8 = 58" followed by "replace_string = ...". Last edited by GeoffR; 12-08-2013 at 03:00 AM. Reason: fw 3.1.0 |
![]() |
![]() |
![]() |
#582 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Here is a demonstration of the problem with the way kpg.exe applies the footer patch that doesn't require any other program to test. I have added the missing string terminator manually with a replace_bytes line:
Spoiler:
To test: Apply with the replace_byte line commented out and the patch is ignored on my Glo. But uncomment the replace_bytes line and the patch works as expected. The replacement byte is an encoded null (zero XOR 0x58) applied at the location following the last '\n' character in the replacement string. This test case is for firmware 3.1.0 (d1b2f00933) on Glo/Aura/AuraHD (I don't think this particular footer would have a problem on other devices). |
![]() |
![]() |
![]() |
#583 |
Guru
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 817
Karma: 6528026
Join Date: Sep 2012
Device: Kobo Elipsa
|
GeoffR, you are definitely on to something. Your code works on my Aura HD, but the Page Number font size is 16pt, which is way too small for me. But I have no idea which bytes to replace with a null because my string is longer than 86 bytes. Here is my string:
Code:
replace_xor_58 = 13FA550, `ReadingFooter {\n\tmin-height: 70px;\n\tmax-height: 70px;\n\tqproperty-footerMargin: 40;\n}\n\nReadingFooter[deviceCodeName="kraken"], \nReadingFooter[deviceCodeName="phoenix"] {\n\tmin-height: 82px;\n\tmax-height: 82px;\n\tqproperty-footerMargin: 15;\n}\n\nReadingFooter[deviceCodeName="dragon"] {\n\tmin-height: 120px;\n\tmax-height: 120px;\n\tqproperty-footerMargin: 20;\n}\n\n* {\n\tfont-size: 16px;\n}\n\n[deviceCodeName="kraken"], \n[deviceCodeName="phoenix"] {\n\tfont-size: 20px;\n}\n\n[deviceCodeName="dragon"] {\n\tfont-size: 26px;\n}\n\n[localeName="ja_JP"] {\n\tfont-family: A-OTF Gothic MB101 Pr6N;\n}`, `ReadingFooter {\n\tmin-height: 40px;\n\tmax-height: 70px;\n\tfont-size: 26px;\n\tqproperty-footerMargin: 15;\n}\n\n` Using the code I show above, what should I use instead of replace_bytes = 13FA5A6, 0A, 58? Thanks--I think you have figured out why some code works while other code doesn't. Edit: the only change from your original code is the very last part, where I added an entry for font-size for my Aura HD: {\n\tmin-height: 40px;\n\tmax-height: 70px;\n\tfont-size: 26px;\n\tqproperty-footerMargin: 15;\n} Last edited by icallaci; 12-08-2013 at 10:39 AM. |
![]() |
![]() |
![]() |
#584 | |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,821
Karma: 19162882
Join Date: Nov 2012
Location: Te Riu-a-Māui
Device: Kobo Glo
|
Quote:
Code:
replace_bytes = 13FA5B8, 3B, 58 |
|
![]() |
![]() |
![]() |
#585 |
Wizard
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 3,489
Karma: 2914715
Join Date: Jun 2012
Device: kobo touch
|
I guess another way to achieve this (without counting) is adding \x00 to the replacement string.
Last edited by tshering; 12-08-2013 at 12:25 PM. Reason: changed \x58 to \x00, cf. the remark by GeoffR |
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Glo How to import reading Life Statistics from Kobo Touch to Kobo Glo? | the_m | Kobo Reader | 5 | 12-13-2012 03:40 PM |
$25 gift card w. purchase of Kobo Touch or Kobo Vox at Frys | sufue | Deals and Resources (No Self-Promotion or Affiliate Links) | 0 | 07-15-2012 10:39 AM |
Touch Kobo Touch defective after 3 months and Kobo Customer Support useless | shaf | Kobo Reader | 5 | 12-04-2011 05:10 PM |
Touch Kobo Touch not ejecting cleanly with Calibre OR Kobo Desktop - Windows 7 | JBlyth | Kobo Reader | 11 | 08-03-2011 05:38 PM |
Kobo Touch not disconnecting properly from Calibre OR Kobo Desktop - Windows 7 | JBlyth | Devices | 1 | 08-03-2011 06:50 AM |