[Okular-devel] Improving the book reading experience with KDE tech

Albert Astals Cid aacid at kde.org
Mon Dec 24 01:30:20 UTC 2012


El Diumenge, 23 de desembre de 2012, a les 15:29:24, Inge Wallin va escriure:
> On Sunday, December 23, 2012 03:09:28 Albert Astals Cid wrote:
> > El Diumenge, 23 de desembre de 2012, a les 01:18:23, Inge Wallin va
> 
> escriure:
> > > In just a few weeks Calligra 2.6 will be released, and with that the
> > > first version of Calligra Author. The first version of Author will be
> > > very like Words but it has a focus on the needs of a book writer rather
> > > than, say, a report writer or a memo writer. Therefore we expect Words
> > > and Author to start to diverge in the feature set soon.
> > > 
> > > Version 2.6 of Calligra Author has support for creating ebooks in EPUB2
> > > and MOBI formats. Both of these formats are rather simple and support
> > > text with various formatting and pictures. Okular has a generator for
> > > EPUB which makes it a decent basic ebook reader.
> > > 
> > > However, Calligra Author 2.7 will start producing EPUB3 files which are
> > > much more complex.
> > 
> > How different EPUB3 vs EPUB2 are in file-format?
> 
> The file structure is exactly the same: a zip store that contains html files
> (the chapters), an xml-based table of contents, a manifest and other
> resources like pictures, etc. The difference is in what is allowed. EPUB3
> adds: - Multimedia contents
>  - MathML
>  - Other extended web standards such as x3dom, etc
>  - accessibility
>  - more advanced css styling, including some that is specially created for
> online magazines
>  - ...more that I don't remember from the top of my head.
> 
> > > I want Author to become *the* way to create teaching
> > > materials with dynamic contents (animations, multimedia, etc) but most
> > > of
> > > that will be meaningless if there is no way to read the generated files.
> > > EPUB3 is huge so Author 2.7 will start out by supporting embedded videos
> > > and embedded math formulas using MathML.
> > > 
> > > And this is where Okular falls short. The current generator does not
> > > support more than very basic formatting and math formulas is not part of
> > > that. And the whole API of Okular does not support anything but static
> > > content.
> > 
> > We have support for videos (not sure if the Active frontend supports
> > those)
> 
> I'm very happy to hear this.
> 
> > > In
> > > the long run, this lack will diminish the value of Plasma Active and
> > > therefore I have also added the Active ML as a recipient.
> > > 
> > > Call to action
> > > -------------------
> > > 
> > > I would like to put together a small task force to enhance Okular with a
> > > better generator for EPUB as well as enhance the general engine to also
> > > allow dynamic contents. The first version should support video but in
> > > the
> > > future i can easily imagine other things like embedded scripted
> > > animations or 3D objects in X3Dom and so on.
> > 
> > As said we already support videos (not in epub but in pdf) so the
> > infrastructure is there, you "just" need to wire it. Pino also did a proof
> > of concept PDF-3D support ages ago, so it's nothing impossible to do,
> > "just" needs some time ;-)
> 
> Got it. What is PDF-3D?  Some extension for 3D objects in a PDF? 

Yes

> How about mathematics?

What about mathematics? You mean MathMl and stuff? We don't have any backend 
that supports MathMl

> 
> And btw, how about reflowable contents? I think we discussed this on IRC
> some time ago. I have rethought it and I don't think it is super important
> any more but still... EPUB is defined as reflowable so in the long run it
> should be supported by any good book reader.

Yes, as said that's trivial for the QTextDoument based generators and just 
needs some wiring

./generators/epub/converter.cpp:114:  mTextDocument->setPageSize(QSizeF(600, 
800));                                                                                                                                                                                            

Just change that page size and the stuff will/should reflow.

> 
> > > I have looked at the code of Okular and it looks entirely doable. I
> > > could
> > > probably manage myself but then there would be no other work on Calligra
> > > Author for the 2.7 cycle and that would be bad.
> > > 
> > > I think this is an important task for PA4 and therefore Okular Active.
> > > 
> > > Any takers?
> > 
> > I guess the first step is making sure we are able to read EPUB3 at the
> > same
> > level of EPUB2 and then have a look at the extra features.
> 
> That we are already because EPUB3 is just EPUB2++. :)
> 
> > I can't commit to the development of that, since i'm faaaaaaaaar to
> > stretched already in billions of stuff but if you need help wiring stuff
> > up or navigating through the okular architecture I'm happy to help both
> > here or in the #okular IRC channel.
> 
> Thanks a lot. That will help.
> 
> I was thinking of experimenting with a qwebkit based generator instead of
> the current qtextdocument based one. Another alternative is to use the more
> advanced text layout of the calligra text engine which is also based on
> qtextdocument but extends it considerably.

That's one of the options when/if we hit some issues on QTextDocument (the 
other being improving QTextDocument if someone feels brave enough :D)

Cheers,
  Albert

> 
> 	-Inge
> 
> > Cheers,
> > 
> >   Albert
> >   
> > > 	-Inge
> > > 
> > > _______________________________________________
> > > Okular-devel mailing list
> > > Okular-devel at kde.org
> > > https://mail.kde.org/mailman/listinfo/okular-devel


More information about the Okular-devel mailing list