Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
NSDEJAVU(1)			    DjView-4			     NSDEJAVU(1)

NAME
     nsdejavu - DjVu browser plugin

SYNOPSIS
     /usr/local/lib/djview4/plugins/nsdejavu.so

WARNING
     Using  nsdejavu  as  a  plugin  in  2020  is very difficult because popular
     browsers either do not support netscape plugins (chrome), or  removed  sup-
     port for netscape plugins other than flash (firefox).  We regret this deci-
     sion because djview/nsdejavu is a perfect example of very well behaved plu-
     gin that would have been easy to support.

DESCRIPTION
     The shared library nsdejavu.so uses the Netscape browser plugin API to dis-
     play  DjVu  images in in a number of popular web browsers.  It works by in-
     voking a standalone viewer out-of-process with the special command line op-
     tion -netscape.  The plugin first searches a program named djview.  If this
     program cannot be found, it searches for djview4 and finally  djview3.   It
     is always possible to override this search strategy by setting the environ-
     ment variable NPX_DJVIEW to the full path of the desired executable.

MIME TYPES AND EXTENSIONS
     Typing the URL of a recognized DjVu document in your web browser should au-
     tomatically  invoke  the  DjVu browser plugin.  Each browser uses different
     methods to determine that a particular URL is in fact a DjVu document.  Web
     server normally provide a MIME type to web  browsers.   The  official  MIME
     type  for DjVu documents is image/vnd.djvu.  For compatibility with ancient
     versions of the DjVu viewer, it is common to use instead  the  experimental
     MIME  type  image/x-djvu or image/x.djvu.	Web servers should be configured
     to send the proper MIME type for DjVu documents.  Most  web  browsers  also
     recognize files ending with .djvu or .djv as DjVu files.

     An  easy  way  to check if an http server is giving an appropriate content-
     type is to invoke the following command with a URL corresponding to an  ac-
     tual DjVu file on the server.

       curl -u URL | grep Content-Type

     The result should be one of the following, preferably the first.

       Content-Type: image/vnd.djvu
       Content-Type: image/x.djvu
       Content-Type: image/x-djvu

     Any other MIME type indicates a server misconfiguration.

CGI-STYLE FLAGS
     The  behavior of the DjVu browser plugin can be specified by augmenting the
     URL using a syntax similar to that used by the CGI programs.   This  syntax
     is described by the following template:

	http://.../file.djvu?djvuopts&keyword=value&keyword=value&...

     The DjVu browser plugin only recognizes keywords that appear after the word
     djvuopts.	 The keywords recognized by each viewer are listed in the corre-
     sponding man page.  Unrecognized keywords are  ignored.   The  most  common
     keywords are:

     page=pagename
	    Specify which page is displayed by name or by ordinal number.

     zoom=zoomfactor
	    Set the zoom factor.  Legal values for zoomfactor are:
		+--------------------------------------------------------+
		| number    Magnification factor in range 10% to 999%.	 |
		| one2one   Select the "one-to-one" mode.		 |
		| width     Select the "fit width" mode.		 |
		| page	    Select the "fit page" mode. 		 |
		| stretch   Stretch the image to the plugin window size. |
		+--------------------------------------------------------+

BROWSER COMPATIBILITY
     The  DjVu browser plugin has been tested with several popular web browsers:
     Netscape 4 and 6; Gecko based browsers such as Mozilla, Galeon and Firefox;
     KHTML based browsers such as Konqueror; and Opera.  Please read the browser
     documentation to find out where the plugin library should be installed.

EMBEDDING DJVU IMAGES IN HTML PAGES
     You can integrate DjVu content on an HTML web page with either the  <embed>
     or  the  <object>	tag.  This method will work even if your web server does
     not support the DjVu MIME type.  The CGI style flags can be  directly  used
     as  attributes  of  the embedding tag.  The following example shows the W3C
     standard syntax with the OBJECT tag:

	<object data="myfile.djvu" type="image/vnd.djvu"
		  width="100%" height="100%" >
	    <param name="page" value="iii">
	    <param name="zoom" value="stretch">
	    This browser cannot render djvu data.
	</object>

     And this is the customary syntax with the EMBED tag:

	<embed src="myfile.djvu" type="image/vnd.djvu"
		  width="100%" height="100%"
		  page="iii" zoom="stretch"></embed>

INTERFACING THE DJVIEW PLUGIN WITH JAVASCRIPT
     Recent versions of the djview4 plugin can be controlled from the JavaScript
     interpreter of browsers implementing the Mozilla NPRuntime API.  To  access
     the  plugin object, include the attribute id="pluginname" into the <object>
     or <embed> tag and  use  the  JavaScript  function  getElementById("plugin-
     name").

     The  plugin  object implements two methods to retrieve and set the value of
     the options usually recognized as CGI-style flags.  It also can evaluate  a
     specified JavaScript expression whenever something changes in the status of
     the djview interface.

     pluginobject.setdjvuopt("key",value)
	    Set  the value of the djvu option key to the character string value.
	    This achieves the same effect as specifying option	key=value  among
	    the  CGI-style  flags.   For instance, values of the key page can be
	    page IDs, page titles, page numbers, or page names.

     pluginobject.getdjvuopt("key")
	    Return the value of the djvu option key as a string.   The	returned
	    value  is  always  a character string, even when the return is logi-
	    cally a number.  Boolean values are returned as strings yes  or  no.
	    Besides  the usual CGI-style flags, this function recognizes the ad-
	    ditional key pages and returns the total number of pages in the DjVu
	    document.  An empty string is returned when the key  is  not  recog-
	    nized.

     pluginobject.onchange="code";
	    Ensure  that  string  code is evaluated in the context of the plugin
	    object whenever something changes in the djview graphical  user  in-
	    terface.  For instance, this evaluation happens when progressive re-
	    finements  are  painted, and when the user manipulates the image in-
	    teractively.

     pluginobject.version
	    Return a string describing the plugin version.  This property can be
	    used to test  whether  the	djview	plugin	is  scriptable	in  this
	    browser.

     Note  that the scriptability feature may not be accessible until the djview
     plugin is fully loaded.  Therefore  it  is  advisable  to	check  pluginob-
     ject.version from the JavaScript onload before calling any other method.

CREDITS
     This  program  was written by Andrei Erofeev <andrew_erofeev@yahoo.com> and
     was then improved by Bill Riemers <docbill@sourceforge.net> and Leon Bottou
     <leonb@users.sourceforge.net>.

SEE ALSO
     djvu(1), ddjvu(1), djview4(1)

DjView-4			    1/4/2007			     NSDEJAVU(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=nsdejavu&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help