Planet maemo: category "feed:a239d77197b1805713ebcacc20156e95"

parasight

MeBook development continues

2010-08-24 13:08 UTC  by  parasight
0
0

GSoC has ended but development of MeBook continues. I’ve decided to keep the name MeBook (Maemo eBook) which I originally intended only as a development name. I’ve promoted version 0.1.7 to extras-testing so testers are needed to get the application to extras.

If you have any feature requests or bug reports please either contact me or use the bugtracker at http://code.google.com/p/mebook/issues/. I have some features and improvemts planned and I’m already working on some of them. Contributions are of course welcome! (the source repository is now at http://gitorious.org/mebook)

In the future I will possibly set up a website and blog for development updates and support.

Thanks for reading this blog and thanks for the comments and feedback!


Categories: GSoC
parasight

GSoC: MeBook update

2010-08-10 16:47 UTC  by  parasight
0
0

I’ve uploaded a new version to extras-devel with some improvements. In scrolling mode the books are now loaded one section at a time unlike previously when the whole book was loaded (this caused some problems with large books). The toolbar has buttons for navigating between sections.

There’s now a slider at the bottom of the screen which shows current position as percentage. By moving the slider you can jump to different position.

I’ve also made improvements to how progress, bookmarks and annotations are saved. If you had the previous version installed I recommend removing the database (/home/user/MyDocs/books/bookdb.db)

GSoC is coming to an end and for the rest of the time I’ll be focused on bug fixing, refactoring and documenting.


Categories: GSoC
parasight

GSoC: Annotations and FeedBooks.com-catalog

2010-07-28 15:59 UTC  by  parasight
0
0

I’ve uploaded a new version (0.0.8-1) of MeBook to extras-devel. Users can now add annotations to books and search books from a book catalog (feedbooks.com). Here’s some screenshots of the new features.

The annotation dialog can be opened by long pressing the book area on the spot where you want to make an annotation.

One can search feedbooks.com for books and download them to the library, the search is very basic and there’s no browse functionality yet. The catalog can be accessed from the main view.

When a book is tapped a book info dialog opens.


Categories: GSoC
parasight

GSoC: New features in eBook reader

2010-07-08 18:37 UTC  by  parasight
0
0

It’s been a while since my last blog post so here’s a small update on the state of MeBook. I’ve been working on several new features, changes to rendering and overall improvements.

MeBook now has two reading “modes”: scrolling mode and paginated mode.

In the scrolling mode the whole book is loaded in a scrollable view. There’s also a basic autoscroll which can be controlled using the volume keys.

In the paginated mode the book is loaded one section at a time and one can either swipe to move between pages or use the volume keys to do so. Depending on the size of the section it might take some time to render it.

Bookmarks can be added by pressing and holding in the readingview. In the Add bookmark -dialog bookmarks are given a name and one of 27 different colors. Bookmarks can be accessed from a toolbar button and they are shown as a simple scrollable list.

In the settings it’s now possible to change between colormodes (black/white or grey/black), change readingmode and force backlight on when reading.

I’ve uploaded a new version to extras-devel if you are brave enough to try it :)

GSoC period is just over it’s halfway point and I hope I’m able to implement a few major features with time left for improving the code, testing and fixing bugs.


Categories: Uncategorized
parasight

Updates to GSoC eBook reader

2010-06-07 12:17 UTC  by  parasight
0
0

A small update on the state of my GSoC eBook reader. During last week I worked on a startup view (opening files, shows books in library), settings (font, orientation) and some UI improvements (better TOC navigation, fullscreen mode). Here’s some screenshots of the application:

Currently the books for the library are loaded from “/home/MyDocs/books” but I plan to add changing that to the settings-dialog. The settings-dialog uses QFontDatabase to get a list of font’s and supported font sizes.

Epub-support still needs some work. I’ve been testing mainly with books from feedbooks and epubbooks and they work very well. Books from Project Gutenberg use html anchors in the Table of Contents and those aren’t supported yet.

In the reading UI by default books are shown one section at a time and you can move to next or previous section by swiping left or right. While reading a section you can either scroll the view normally or jump to next or previous paragraph with the volume rocker (this still needs some work though). Fullscreen mode is enabled by doubletapping.

This week I plan to do a lot of refactoring, improve Epub-support, start experimenting with paging and take a look at QtTest for writing tests.

I’ll start uploading snapshots to extras-devel soon, but before that I’ll have to come up with a name for the application. If you have ideas I’d like to hear them :)


Categories: Uncategorized
parasight

First week of GSoC behind..

2010-05-30 15:48 UTC  by  parasight
0
0

The first week of GSoC is coming to an end so I thought it might be a good idea to post about what I’ve been up to.

I started by going trough Okular source to see how epub-handling is done in Okular and implemented a similar system. Okular uses ebook-tools -library to read the epub-data into a QTextDocument. At first I used QTextDocument also because I was planning to use QTextDocument for rendering. Unfortunately the HTML-subset QTextDocument supports is quite restricted and some elements aren’t rendered at all. After experimenting with QWebView I decided to use it for rendering instead. Using QWebView the epub-files are rendered pretty much excatly how they are supposed to look.

Currently I can read epub-files, metadata and table of contents information into my data-classes. The application then loads the epub’s HTML-content into a QWebView. Settings such as Font and Font size can be changed using QWebSettings.

I haven’t done paging yet so only scrolling mode is available. It’s possible to use two kinds of scrolling modes: one where the whole book is shown at once and one where each section of the book is show separately. I’ve also done a basic Table of Contents navigation.Next I’m going to do some enchancements on the current system, startup UI (opening books and browsing books from library) and figure out the best way to save bookmarks and annotations.

A Qt labs blog post from a year ago had an interesting snapping scrolling system I might experiment on. It might be useful if, while scrolling, QWebView would snap to paragraphs.


Categories: Uncategorized
parasight

GSoC coding period getting closer..

2010-05-21 19:43 UTC  by  parasight
0
0

I’ve been quite busy with with my bachelor’s thesis and work, but now I’ve submitted my thesis for evaluation and starting next week I can focus on GSoC. Lately I’ve been doing some experimenting with Qt APIs I’m not that familiar with (QTextDocument and QtTest). Here are some things I plan to start with:

epub support

  • read content to  QTextDocument
    • adding other formats should be made easy
    • Okular’s epub handling (epub generator)
  • extract table of contents and other information

Book data model

  • classes for managing book data
  • pages
  • metadata
  • bookmarks & annotations
  • table of contents

Database classes

  • reading and writing bookmarks, annotations and saving state

Categories: Uncategorized
parasight

Rendering tests

2010-05-19 18:02 UTC  by  parasight
0
0

Before the actual coding period starts I wanted to do some tests to get a better idea on how to implement things. Rendering is the first thing I’ll be working so I started with that.

I did a Qt desktop application that reads a chapter of an epub (Around the World in 80 Days) into a QTextDocument. The QTextDocument can then be paged and the pages rendered (here I just rendered them to QPixmaps). The font and it’s size can also be changed and the pages will be re-rendered.

QTextDocument seems like a nice way to handle the actual text and it’s rendering. Margins, font and indents can be changed quite easily. It also supports html-content, though on my tests some css layout settings didn’t seem work.

Here’s some screenshots.


Categories: Uncategorized