webOS Nation Forums >  Homebrew >  webOS Homebrew Apps > pReader (an eBook Reader for Palm-DOC files)
pReader (an eBook Reader for Palm-DOC files)
  Reply
Like Tree10Likes

 
Thread Tools Display Modes
Old 11/02/2009, 08:02 PM   #1 (permalink)
Member
 
Jappus's Avatar
 
Posts: 713
Description:

pReader ist an eBook Reader for WebOS that is currently supporting plain-text, HTML, Palm DOC, MobiBook and eReader files.


The pReader has the following features:
  • Reads plain-text (txt), HTML and compressed & uncompressed Palm DOC (PDB/PRC) files directly off the media partition. Decompression is handled on-the-fly.
  • Reads eReader PDB/PRC files. DRM support is fully implemented
  • Reads MobiPocket files. DRM support is fully implemented. Please note that only books are supported at the moment, things like dictionaries currently don't work.
  • Reads unencrypted ePub files.
  • Reads unencrypted Amazon Whispernet AZW files. Support is currently experimental, as of v0.8.2.
  • Reads unencrypted FictionBook2 files. Support is experimental as of v0.8.6.
  • The book library allows keeping and modifying metadata information about the books. Books can be sorted into custom categories.
  • Stores your last read position and automatically returns to it upon reloading the book (the last book you read is also stored, so you don't need to reselect it if you've closed the app).
  • Allows you to create labeled bookmarks for each file. If the source file contained link anchors / bookmarks, the pReader tries to import them.
  • You can search for any phrase or text in the books. Regular expressions are supported.
  • Text size and appearance can be customized. Background and text colours can be freely customized. All those settings can be stored as themes and recalled with the tap of a button.
  • Scrolling is implemented on a page-by-page base. Scrolling can be done by tapping, flicking or key-presses. The different modes can be activated/deactivated in the options menu.
  • Additionally, you can switch to one of two different auto-scroll mode by tapping a single button in the belt bar. Speed and the type of scrolling can be adjusted through the options-menu. The speed can also be adjusted with the left/right arrows in the belt bar, once autoscrolling is active.
  • You can skip ahead to an arbitrary position in the book.
  • All four principal screen rotations are supported (Landscape mode)
  • Supports a variety of encoding, like UTF-8, CP-936/GBK, CP-1250, CP-1251 and others. The fonts on the Palm can render a number of languages like Chinese, Japanese, Greek and others. Unfortunately, some languages are missing entirely, like Hebrew. You need to install a custom font to read those.

Features planned for the near future, in order of simplicity:
  • More text encodings
  • More eBook formats (Plucker, ...)
  • Adding more features to the currently very basic library

Known problems:
  • Files that are greater than 10MB in size can't be opened. This will be fixed once the native SDK is released.
  • Scrolling back more than one page will not return you to the exact same page as was rendered in forward movement.
  • Some images that are not inlined into the document will not be displayed. This only concerns a few special images, like the book covers that are stored in eReader/Mobipocket files. The pReader will try to identify and display them, but no guarantees can be made.
  • Loading very large images from HTML files is not properly supported. This is a limitation of Javascript and can only be fixed when the Native SDK is released.
  • Indentation of paragraphs is subjected to rubberbanding when you select the "Justified" alignment. That means, depending on how much text can be fitted onto a single line, the spaces will be expanded by WebOS to align the words and this is also applied to the initial indentation.

Licensing and Source access:
This application is released under the GPLv3. It is hosted on Sourceforge under:
https://sourceforge.net/projects/preader/.

You can fetch the very newest Source Code by browsing the SVN repository or you can check out the repository with:
Code:
svn co https://preader.svn.sourceforge.net/svnroot/preader preader

Donation:
If you want to show your appreciation by donating, you can use either one of these PayPal buttons:

Donate in USD:

Donate in EUR:


Changelog:
v0.5.0
  • Initial public release
[Several versions in between]

v0.8.16
  • Improved the speed of importing files with many identical images.
  • Made the HTML parser more resistant against weirdly tangled tags. Files which exhibited "stuck" formatting like bold, italics or underline should render fine after a re-import now.
  • Reduced Log Level. The pReader shouldn't needlessly pollute the system log anymore.
v0.8.17
  • Added this changelog scene
  • Added option to start/stop and change speed of autoscrolling with a key press. Changing speed is done with the next page / previous page keys; starting and stopping defaults to the '@'-key.
  • Fixed an issue that caused tapping of links to also register as page changing taps."
  • Improved French, Spanish and Czech translation, thanks to Yannick LE NY, Nacho Vayo and Jirí Svoboda!
v0.8.18
  • Fixed intermittent bug that caused the app to never close the changelog screen.
  • Added option to leave the dictionary mode after the first link-tap.
  • Fixed issue with long, unbroken book titles breaking the layout of the library scene.
v0.8.19
  • Fixed a bug that caused an old page to be briefly displayed on every page change in autoscroll mode.
  • Made the ePub parser less strict.
  • Fixed french translation; thanks to Yannick LE NY.

Happy reading!


P.S.: Since I'm currently in the last leg of my Computer Science studies I must concentrate on my diploma thesis over the next few months. That means that this project is currently on a "when I have the spare time for it" development schedule. But I think it is better to release it now and offer at least basic functionality, than to postpone it indefinitely till I'm absolutely and completely happy with it. While I certainly won't be able to release often, at least I am able to release early.

Last edited by Jappus; 10/23/2010 at 05:56 AM.
Jappus is offline   Reply With Quote
Liked by m-s, VitaminD and Arjun007 like this.
Old 11/02/2009, 11:49 PM   #2 (permalink)
Member
 
skippyrulzzz's Avatar
 
Posts: 77
cool! liking it so far. is there a trick to getting it to scroll or page back? it pages forward when i tap, but i just can't get it to go back no matter what i do. only other issue i've run into is that the "go to percent" function is hard to use as it's implemented. meaning that you might get 35%, you might get 40%. there's no fine tuning. maybe a scroll through menu from 1-100 (like the time in the alarm app)?

thanks for the app! been waiting for something to read pdbs and this does the trick!!

edit: i figured out the page back. if you tap the top of the page it goes back. bottom is page forward. durh.

Last edited by skippyrulz; 11/02/2009 at 11:57 PM.
skippyrulzzz is offline   Reply With Quote
Old 11/03/2009, 12:43 AM   #3 (permalink)
Member
 
Posts: 256
OH, HELL YEAHS!!!!

I've been waiting for this functionality since the day I got my Pre.
THANK YOU SIR!

Granted, it's not all slick and stuff... big deal.. I can finally read a freaking txt file on my pre. Absolutely essential functionality which should have been available out of the box, finally applied, I salute your effort.

Here are things I LOVE:
1. It reads txt and PDB files. YAY.
2. It justifies text, with options
3. Landscape mode on rotate!
4. It saves your place! Flick the app away, come back, and pick up where you left off.
5. Font size options

I found the page turning function arresting at first, only because every other WebOS app so far does the silky-smooth scroll then bounce at the bottom routine. I've gotten used to this behavior for pretty much every Pre app, homebrew or official. For this app, there's no scroll, it just snaps to the next page. For the purpose of just reading a damn book, I think your hard snap page turn actually is more functional, this is the way to go. Really makes more sense than the smooth scroll, thank you for opting for this page turn. Tinker with scroll options all you like, but I'll probably always use it the way it is.

The only thing I could really request at this point that I don't think would take a whole lot of engineering would be a background color option. I find black on white contrast kind of tiresome on the eye after awhile. And the Pre's screen is so bright, the white is.. you know, flashlight bright. I thought my old Palm handspring monochrome screens were pretty good for book reading, although a little dark. Really the best was my TX using "Palm Revolt", which let me use a Windows Classic theme, which was black on "silver". There is another Pre ebook reader in development, I'm sure you're aware of it. It does offer black on gray, but honestly i think the gray is too dark, and it's hard to make out the words. If there were a way to add an option for contrast, maybe a slider, that would be totally awesome. Others might want a myriad of background and font color options, but not me. I don't know if it's possible, but a fader for background brightness would totally make it for me.

Otherwise I can't really find anything wrong with this app, and I can't wait to give it some serious use. You made my day, this is one of my top five apps now, I'm not kidding.

THANK YOU THANK YOU THANK YOU

Last edited by neve; 11/03/2009 at 01:07 AM.
neve is offline   Reply With Quote
Old 11/03/2009, 05:44 AM   #4 (permalink)
Member
 
Posts: 157
Not sure what I'm doing wrong. I downloaded & installed the app via Quick Install, also copied over an old .pdb book I had. Loaded the book in pReader, it shows the location below the "Reader" button, when I click Reader, it only says "Reading file...". I've let it go for a few minutes, but nothing happens.

Edit: I tried a .txt file and it loaded right away. I'm going to try the .pdb book again, leave it on my touchstone and see if it just takes a longer time to convert/display it.

Edit: It's been about 10 minutes, still says Reading file... The books I've tried came from ereader.com which requires a password. I'm guessing that is the problem. I even tried to download an install a "free" book from ereader.com that would not require a password, still same problem.

Last edited by Ramer84015; 11/03/2009 at 06:05 AM.
Ramer84015 is offline   Reply With Quote
Old 11/03/2009, 06:09 AM   #5 (permalink)
Homebrew Developer
 
enormous's Avatar
 
Posts: 193
This is excellent news to wake up to! THANK YOU very much for your time and efforts. An ebook reader that supports .pdb files has been one of my most missed applications.

I would also like to echo neve's request for customizable background colors. My use case would be reading with a black background, and switching my font colors from white/silver (daytime reading) to silver/gray (nighttime reading).

Thanks again, and good luck with your thesis!
enormous is offline   Reply With Quote
Old 11/03/2009, 06:13 AM   #6 (permalink)
Member
 
Posts: 157
Quote:
Originally Posted by enormous View Post
This is excellent news to wake up to! THANK YOU very much for your time and efforts. An ebook reader that supports .pdb files has been one of my most missed applications.

I would also like to echo neve's request for customizable background colors. My use case would be reading with a black background, and switching my font colors from white/silver (daytime reading) to silver/gray (nighttime reading).

Thanks again, and good luck with your thesis!
Did you install anything other than the .ipk package? I can't get it to work. See my post above, I also tried to load a public domain book .pdb book and that didn't work either.
Ramer84015 is offline   Reply With Quote
Old 11/03/2009, 06:17 AM   #7 (permalink)
Homebrew Developer
 
enormous's Avatar
 
Posts: 193
Quote:
Originally Posted by Ramer84015 View Post
Did you install anything other than the .ipk package? I can't get it to work. See my post above, I also tried to load a public domain book .pdb book and that didn't work either.
Unfortunately I'm not at a computer right now (replying via my Pre), so I haven't been able to install this yet. Once it is available for OTA install I'll give it a go.
enormous is offline   Reply With Quote
Old 11/03/2009, 07:15 AM   #8 (permalink)
Member
 
Jappus's Avatar
 
Posts: 713
Due to popular demand, background and text colours can now be freely customized in the new version 0.5.1.


As for the problem that only "Reading file..." is displayed, that's because Javascript is geared to never crash the app. What most likely happened is that your PDB file caused the PDB parser to abort, which leads to nothing being displayed, which means that the default text of "Reading file..." is never replaced.

I have indeed not implemented decoding password-protected files, since I don't own one, and haven't found any proper documentation for those files online. If someone could point me to suitable documentation, I'll try to add support for it.

That a non-encrypted PDB file fails to display, is on the other hand a rather serious issue. If you can send me a free PDB where this error occurs, I can give it a debugging run and see where the parser aborts. Additionally, if you could post the logging information written to "/var/log/messages", that could also help, since the program is still set at Log-Level 99.

As I said, this software is beta-level software and was as of yet only tested with my own PDB library, which solely consists of PDBs genererated by the Project Gutenberg and those converted by myself with the Aportis Doc Converter.




Thanks for the feedback!

Last edited by Jappus; 11/03/2009 at 07:24 AM.
Jappus is offline   Reply With Quote
Thanked By: neve
Old 11/03/2009, 07:21 AM   #9 (permalink)
Member
 
Posts: 157
Quote:
Originally Posted by Jappus View Post
Due to popular demand, background and text colours can now be freely customized in the new version 0.5.1.


As for the problem that only "Reading file..." is displayed, that's because Javascript is geared to never crash the app. What most likely happened is that your PDB file caused the PDB parser to abort, which leads to nothing being displayed, which means that the default text of "Reading file..." is never replaced.

I have indeed not implemented decoding password-protected files, since I don't own one, and haven't found any proper documentation for those files online. If someone could point me to suitable documentation, I'll try to add support for it.

That a non-encrypted PDB file fails to display, is on the other hand a rather serious issue. If you can send me a free PDB where this error occurs, I can give it a debugging run and see where the parser aborts.

As I said, this software is beta-level software and was as of yet only tested with my own PDB library, which solely consists of PDBs genererated by the Project Gutenberg and those converted by myself with the Aportis Doc Converter.



Thanks for the feedback!
I downloaded 20000 leagues from this site: .:: chuggnutt ::. | Free Palm eBooks

This was after I had tried the password protected books. I'll try uninstalling v 0.5.0 and install 0.5.1.
Ramer84015 is offline   Reply With Quote
Old 11/03/2009, 07:30 AM   #10 (permalink)
Member
 
Jappus's Avatar
 
Posts: 713
Quote:
Originally Posted by Ramer84015 View Post
I downloaded 20000 leagues from this site: .:: chuggnutt ::. | Free Palm eBooks

This was after I had tried the password protected books. I'll try uninstalling v 0.5.0 and install 0.5.1.
I can reproduce the issue and there's indeed a problem with the PDB parser. And it's really insanely trivial.

I simply expected all Palm Doc formats to have a type of "TEXt" and a creator of "REAd" and used that as a crude detection of whether it's a PDB or not. But the file you gave me has a type of "PNRd" and a creator of "PPrs". So much for easy checking if it's a Palm DOC

I'll add the suitable type/creators specified on this page and if no match occured, I'll create a suitable Mojo-Popup to inform the user that the type/creator of that PDB doc is unknown / not a PalmDoc type.

Expect an overwrite of v0.5.1 in a few minutes.

Thanks!

Last edited by Jappus; 11/03/2009 at 07:37 AM.
Jappus is offline   Reply With Quote
Thanked By: Ramer84015
Old 11/03/2009, 07:32 AM   #11 (permalink)
Member
 
Posts: 157
Quote:
Originally Posted by Ramer84015 View Post
I downloaded 20000 leagues from this site: .:: chuggnutt ::. | Free Palm eBooks

This was after I had tried the password protected books. I'll try uninstalling v 0.5.0 and install 0.5.1.
No change, still stuck on Reading file... Can you recommend a site for ebooks that should work?
Ramer84015 is offline   Reply With Quote
Old 11/03/2009, 07:33 AM   #12 (permalink)
Member
 
Posts: 157
Quote:
Originally Posted by Jappus View Post
I can reproduce the issue and there's indeed a problem with the PDB parser. I'm currently debugging it.

Thanks!
Great. Thanks
Ramer84015 is offline   Reply With Quote
Old 11/03/2009, 08:17 AM   #13 (permalink)
Member
 
Jappus's Avatar
 
Posts: 713
Okay, scratch the few minutes. The PNRd-PPrs format seems to be entirely different from the normal Palm DOC format. I think that it uses a different compression scheme, to be precise. Palm DOC uses LZ77, PNRd-PPrs seems to use something else.

Basically, this means I must write a new decompressor. That's going to take a bit longer than "a few minutes", I'm afraid.

I'll see if I can find some documentation about it. If it's a rather simple algorithm (like LZ77) it shouldn't take that long. We'll see.
Jappus is offline   Reply With Quote
Thanked by craftsman, enormous, reflex
Old 11/03/2009, 08:48 AM   #14 (permalink)
Homebrew Developer
 
enormous's Avatar
 
Posts: 193
You've probably already seen this, but it looks like it gives some more detail about the PNRdPPrs format:

MobileRead Wiki - EReader
enormous is offline   Reply With Quote
Old 11/03/2009, 09:23 AM   #15 (permalink)
Member
 
Jappus's Avatar
 
Posts: 713
Yeah, I've just figured out that it uses ZLib compression and a custom rich text format. Decoding the rich text down to plain text is simple. Implementing a ZLib decompressor, not so much.


In any case, I've updated the v0.5.1 package to notify the user of such (and similar) cases of unsupported PDB Databases, since implementing ZLib Inflate could take a while.
Jappus is offline   Reply With Quote
Old 11/03/2009, 12:01 PM   #16 (permalink)
Homebrew Developer
 
enormous's Avatar
 
Posts: 193
I just loaded this up, threw one of my ebooks at it, and it works GREAT! I guess I got lucky and mine are already in PalmDOC format. Just wanted to say THANK YOU again! Since the first day I got my Pre I've been wanting something like this.
enormous is offline   Reply With Quote
Old 11/03/2009, 12:37 PM   #17 (permalink)
Member
 
SirWill's Avatar
 
Posts: 439
Oh man, please when is this going to hit Preware? I'm at work, and can't load it from here. I want it, I want it, I want it! Dang, this is AWESOME!
__________________
-----------------
Palm III, Palm IIIc, TT, T3, T5, TX, Pre from Day 1.
SirWill is offline   Reply With Quote
Old 11/03/2009, 12:42 PM   #18 (permalink)
Member
 
SirWill's Avatar
 
Posts: 439
Quote:
Originally Posted by Jappus View Post
Currently the limit should be ~25.000 books since the DB is not yet stored on the media partition and limited to a size of 1 MB.
Out of curiosity any particular reason you haven't put the EXT: in the code to simply put the DB on the /media partition?
__________________
-----------------
Palm III, Palm IIIc, TT, T3, T5, TX, Pre from Day 1.
SirWill is offline   Reply With Quote
Old 11/03/2009, 02:39 PM   #19 (permalink)
Member
 
Jonathan I Ezor#IM's Avatar
 
Posts: 563
Question: I've got Hebrew DOC files, which show up, but not with the right font. I have Hebrew TrueType fonts, and could move them over to my Pre, but is there a particular name I should give them to use them in pReader, or will doing so screw everything else up?

By the way, if you can implement Hebrew fonts and right-to-left, you've got a *huge*, open market right now that no one else is filling (TealDoc isn't available other than through Classic). {Jonathan}
__________________
Prof. Jonathan I. Ezor
Writer, PreCentral
Past Palm Real Reviewer
@webOSquire on Twitter
Jonathan I Ezor#IM is offline   Reply With Quote
Old 11/03/2009, 04:07 PM   #20 (permalink)
Member
 
SirWill's Avatar
 
Posts: 439
You might want to open the file search to include .prc files. I have some that I changed one to a .pdb file and it read it just fine.

I really wish you supported navigation of some kind. iSilo support would be HUGE. Plucker would be HUGE.
__________________
-----------------
Palm III, Palm IIIc, TT, T3, T5, TX, Pre from Day 1.
SirWill is offline   Reply With Quote
Reply

 

Thread Tools
Display Modes



 


Content Relevant URLs by vBSEO 3.6.0