joseph / Monocle

A silky, tactile browser-based ebook JavaScript library.
http://monocle.inventivelabs.com.au
MIT License
743 stars 200 forks source link

Using Monocle to show scanned old books #172

Closed marcolino closed 11 years ago

marcolino commented 11 years ago

Hello, Joseph, I've been trying Monocle for aq couple of days, and I find it very sleek and useful. I am planning to use it to publish on the web some old books we are scanning. I will have one image file (".tiff") for each page of each book. Would you suggest to use Monocle for this usage? Or, is there some other project you know which is better suited? I'm asking you becasue I don't know how Monocle does load a bunch of (potentially heavy) image files: are all the pages loaded when html page is loaded (this would probably be unacceptable, at least on standard italian internet connections... :-) Or otherwise the items returned by ebook data object getComponents() method are loaded one at a time? If it's the case, would it be possible to pre-load at least the next image (while the user is reading the current one)? Thanks in advance for your patience!

marcolino commented 11 years ago

Nobody's there?

aronwoost commented 11 years ago

Monocle is build to display (the content of) epub files. Which is basically HTML. Although it is certainly possible to wrap your image files in HTML it might be easier to go with a "straight" image solution.

marcolino commented 11 years ago

Thanks. About the problem of loading many heavy pages on load, I have seen Monocle loads everything on reader constructor (right)? But it nonetheless displays the first page as soon it's loaded, so, there would be no great problems, at least for desktop clients. I suppose there could be some problem on tiny mobile clients, loading, say, 100MB of images to RAM...

aronwoost commented 11 years ago

Not sure you'll find answers at this place, because - again - we're mostly dealing with text here. :)

marcolino commented 11 years ago

;-) I'll make some tests myself...

joseph commented 11 years ago

Yeah, as aronwoost says, Monocle is really intended for reflowable content. I wouldn't recommend it for this purpose. The Internet Archive's BookReader project is much more along the lines you're asking: https://github.com/openlibrary/bookreader

marcolino commented 11 years ago

@joseph: Thanks a lot!!! openlibrary/bookreader is a great project I didn't know, and exactly suited for my needs!

neoascetic commented 11 years ago

There also exists a workaround: use of book data object.

In getComponents you can return array of integers that represent a pages numbers. In getComponent you simply return a <img src="..."> tag which src attribute is a URL refers to corresponding page image.

This worked in my case. Though I switched to bookreader in result.