DjVu file viewer working as pure HTML5. Browse DjVu files without any additional tools or plugins!
Based on the DjVu viewer implementation for Java by LizardTech, Inc. http://sourceforge.net/projects/javadjvu/
Adapted and optimized for GWT framework by Mateusz Matela.
Released under the GNU General Public License version 2, see the LICENSE file for details.
Click here to open the viewer with a sample DjVu file
Download and unpack the latest version. Open the Djvu_html5.html
file in a web browser to see the viewer with a sample document opened (this works best in Firefox, Chrome needs to be started with parameter --allow-file-access-from-files
for this to work).
This html file can be used directly or as an example of how to invoke the viewer: reference the required stylesheet and javascript and add a <div id="djvuContainer">
element that the viewer can attach to.
For best experience on mobile devices, it's recommended to disable page scaling with proper <meta name="viewport" ...>
tag - otherwise a user may end up with resized view, not able to restore it as all touch input is intercepted by the djvu canvas.
The location of the DjVu document that should be opened can be defined in one of three ways:
- An attribute for the
div
element:file="document.djvu"
- A parameter in the URL:
?file=document.djvu
- A property in a DJVU_CONTEXT object created in JavaScript before the page loading finishes:
var DJVU_CONTEXT = {
file: "document.djvu"
};
Other settings that can be defined in the DJVU_CONTEXT
object are listed here.
It is highly recommended to use Google Chrome - this browser is currently the fastest with the viewer.
Note: the HTML file, the referenced JavaScript file and the DjVu document must all be located on the same host, otherwise the viewer will not work.
The project is prepared with Eclipse and Google Plugin. It can be imprted directly as an Eclipse project or managed with Maven. If you want another tool stack, you're on your own (help with improving this welcome).
- You'll need Java 8 and Eclipse (from https://www.eclipse.org/downloads/, recommended package is IDE for Jave EE Developers).
- Dwonload GWT SDK 2.8.1 from http://www.gwtproject.org/download.html
- In Eclipse, go to
Help
->Install New Software...
, enter update site https://dl.google.com/eclipse/plugin/4.6 (or other version, corresponding to the Eclipse version) and selectGoogle Plugin for Eclipse 4.4/4.5/4.6
. Install and restart. - In
Preferences
->Google
->Web Toolkit
provide the location where GWT SDK was unpacked. - Clone the GIT repository and import project
djvu-html5
. - There's an error in the project: The GWT SDK JAR gwt-servlet.jar is missing in the WEB-INF/lib directory.
In the Markers view, use a quick fix
Synchronize <WAR>/WEB-INF/lib with SDK libraries
. - Right-click on the project,
Run as
->Web Application (GWT Super Dev Mode)
. The viewer should now be available here: http://127.0.0.1:8888/Djvu_html5.html - To prepare distribution that can be put on an external web server, right-click on the project,
Google
->GWT Compile
. Select the project and proceed with the compilation. Copydjvu-html5/war
to the external server.
The project can be added in Eclipse or IntelliJ. To compile and run from command line:
-
cd
intodjvu-html
directory and type:> mvn clean install > mvn gwt:run
-
GWT Development Mode window shows up, wait until the Jetty server starts.
-
When the terminal shows the message
The code server is ready at http://127.0.0.1:9876
, the viewer should be available here: http://127.0.0.1:8888/Djvu_html5.html