DjVu Plug-in Toolbar Customizing Chart
for the LizardTech DjVu Browser Plug-in and the DjVuLibre NSDEJAVU Browser Plug-in
A report by PlanetDjVu, March 22, 2003
The DjVu Web Browser Plug-in 3.5.3, released in March, 2002, added support for adding or subtracting the display of individual toolbar buttons to the Plug-in. This is a powerful feature, not available for Acrobat Reader, that lets you streamline the toolbar from the web server. Buttons can be added and subtracted from the toolbar from the web server, using CGI-Style arguments.
We were the first to report on this new feature of the Plug-in, which was developed by LizardTech but never announced by them.
One positive outcome of our report is that the folks at DjVuLibre used our report, and the examples provided, to add essentially the same toolbar controls to the NSDEJAVU plug-in for DjVu, which is the open-source DjVu plug-in alternative for Unix-based platforms.
This means that with just a few minor differences noted in the table below, you can use CGI-Style arguments to control the toolbar display with the knowledge that they will be executed by both DjVu plug-ins.
You can also apply the same controls using <embed> or <object> tags (putting the DjVu file inside an HTML page), and then the controls will not be visible to the user as part of the URL string.
Now in the new Version 4.0 of the Plug-in from LizardTech, the entire Help section on toolbar customizing has been omitted, presumably by mistake. This, plus the minor differences with the open-source plug-in, make this a significant news report!
Now that we have briefly reviewed the history of customizable toolbar button contols, here is a summary of the contols that you can use today for both the DjVu Web Browser Plug-in (now abbreviated to "DjVu Browser Plug-in" by LizardTech in the 4.0 Version) and for the NSDEJAVU Version 3.5.10 plug-in.
The behavior of the DjVu browser plugin can be specified by by augmenting the URL using a syntax similar to that used by the CGI programs. This syntax is described by the following template:
The DjVu browser plugin only recognizes keywords that appear after the word djvuopts. Unrecognized keywords are silently ignored.
Controls the appearance and the contents of the toolbar. The argument of option toolbar is composed of a number of keywords separated by characters comma, plus or minus. The appearance of the toolbar is controlled by keywords placed before the first occurrence of a character plus or minus. The following keywords are recognized in this context:
no Disables the toolbar.
always Disables the toolbar "autohide" mode.
auto Enables the toolbar "autohide" mode.
top Places the toolbar along the top edge (not implemented in NSDEJAVU,
but implemented in LizardTech DjVu Browser Plug-in).
bottom Places the toolbar along the bottom edge.
The contents of the toolbar is controlled by keywords placed after the first occurence of a character plus or minus. Each keyword adds (after a plus) or remove (after a minus) a particular toolbar button or group of buttons. The initial content of the toolbar is determined by the first occurence of a character plus or minus. When this is a plus the toolbar is initially empty. When this is a minus the toolbar is initially full. The following keywords are recognized:
Toolbar keywords chart for both DjVu plug-ins
Two CGI-Style Flags that are supported by NSDEJAVU plugin and by the LizardTech DjVu Browser Plugin, but which have never been documented by LizardTech in their Plugin Help File
A year ago, when doing our orignal report on customizable toolbar options, we were working with the original documentation from AT&T Labs and we discovered that two CGI-Style flags are supported by the LizardTech DjVu Browser Plugin, but never made it into the Help file documentation. A year later, they still have not been added to the Help documentation by LizardTech, so we will point these out again, lest knowledge of them become lost and forgotten.
The first is align= or doc_align= (both will work)
The values are "left" and "right"
The second is rotate=
The values are "90", "180" and "270"
Rotation direction is counter-clockwise, so a value of "90" is executed as "90 CCW".