DjVu
{{short description|Computer file format}}
{{Infobox file format
| name = DjVu
| icon = Djvu icon.svg
| screenshot =
| caption =
| extensions = .djvu, .djv
| mime = image/vnd.djvu, image/x-djvu
| magic = AT&T
| released = {{start date and age|1998}}
| standard =
| open = Yes
| logo = File:DjVu-logo.svg mdlvjfode = DJVU
| uniform type =
| owner = AT&T Labs – Research
| latest release version = Version 26{{cite web |url=https://cuminas.jp/docs/techinfo/DjVu3Spec.pdf |title=Lizardtech DjVu Reference |website=Cuminas.jp |page=25 |access-date=7 December 2021}}
| latest release date = {{start date and age|2005|04}}
| genre = Image file formats
| container for =
| contained by = Interchange File Format
| extended from =
| extended to =
}}
DjVu{{efn|Although usually pronounced as an initialism "D-J-V-U", the file type was intended to have the pronunciation {{respell|DAY|zhah|VOO|'}} ({{IPAc-en|ˌ|d|eɪ|ʒ|ɑː|ˈ|v|uː}}) after French {{lang|fr|déjà vu}}.{{cite web |title=DjVu.org – the premier menu for djvu resources |url=http://djvu.org/ |url-status=unfit |archive-url=https://web.archive.org/web/20170629082631/http://djvu.org/ |archive-date=2017-06-29 |access-date=2017-07-02 |publisher=djvu.org}}}} is a computer file format designed primarily to store scanned documents, especially those containing a combination of text, line drawings, indexed color images, and photographs. It uses technologies such as image layer separation of text and background/images, progressive loading, arithmetic coding, and lossy compression for bitonal (monochrome) images. This allows high-quality, readable images to be stored in a minimum of space, so that they can be made available on the web.
DjVu has been promoted as providing smaller files than PDF for most scanned documents.{{cite web |url=http://djvu.org/resources/whatisdjvu.php |title=What is DjVu – DjVu.org |publisher=DjVu.org |access-date=2009-03-05 |archive-date=2019-01-21 |archive-url=https://web.archive.org/web/20190121142932/http://www.djvu.org/resources/whatisdjvu.php |url-status=dead }} The DjVu developers report that color magazine pages compress to 40–70 kB, black-and-white technical papers compress to 15–40 kB, and ancient manuscripts compress to around 100 kB; a satisfactory JPEG image typically requires 500 kB.{{cite journal |last1=Bottou |first1=Leon |last2=Haffner |first2=Patrick |last3=Howard |first3=Paul G. |last4=Simard |first4=Patrice |last5=Bengio |first5=Yoshua |last6=Le Cun |first6=Yann |date=1 July 1998 |title=High Quality Document Image Compression with DjVu |volume=7 |issue=3 |pages=410–425 |url=https://leon.bottou.org/publications/pdf/jei-1998.pdf |doi=10.1117/1.482609 |journal=Journal of Electronic Imaging}} Like PDF, DjVu can contain an OCR text layer, making it easy to perform copy and paste and text search operations.
History
The DjVu technology was originally developed by Yann LeCun, Léon Bottou, Patrick Haffner, Paul G. Howard, Patrice Simard, and Yoshua Bengio at AT&T Labs from 1996 to 2001.
Prior to the standardization of PDF in 2008,{{cite web |url=https://www.iso.org/standard/51502.html |title=ISO 32000-1:2008 – Document management – Portable document format – Part 1: PDF 1.7 |website=Iso.org |date=2008-07-01 |access-date=2010-02-21}}{{cite web |last=Orion |first=Egan |title=PDF 1.7 is approved as ISO 32000 |website=The Inquirer |publisher=Incisive Media |date=2007-12-05 |url=http://www.theinquirer.net/gb/inquirer/news/2007/12/05/pdf-approved-iso-32000 |access-date=2007-12-05 |url-status=dead |archive-url=https://web.archive.org/web/20071213004627/http://www.theinquirer.net/gb/inquirer/news/2007/12/05/pdf-approved-iso-32000 |archive-date=December 13, 2007}} DjVu was considered superior because it is an open file format,{{cn|date=March 2025}} in contrast to the proprietary nature of PDF at the time. The declared higher compression ratio (and thus smaller file size) and the claimed ease of converting large volumes of text into DjVu format were other arguments for DjVu's superiority over PDF in 2004. Independent technologist Brewster Kahle in a 2004 talk on IT Conversations discussed the benefits of allowing easier access to DjVu files.{{cite web |url=http://itc.conversationsnetwork.org/shows/detail400.html |author=Brewster Kahle |title=Universal Access to All Knowledge |format=Audio; Speech at 1h:31 m:20s |publisher=Conversations Network |date=December 16, 2004}}{{cite web |url=https://www.ecmconnection.com/doc/lizardtech-to-open-source-a-djvu-java-viewer-0001 |title=LizardTech To Open Source A DjVu Java Viewer |website=ECM Connection |date=7 December 2004 |access-date= 18 August 2017}}
The DjVu library distributed as part of the open-source package DjVuLibre has become the reference implementation for the DjVu format. DjVuLibre has been maintained and updated by the original developers of DjVu since 2002.{{cite web |url=http://djvu.sourceforge.net/ |title=DjVuLibre: Open Source DjVu library and viewer |website=djvu.sourceforge.net}}
The DjVu file format specification has gone through a number of revisions, the most recent being from 2005.
class="wikitable sortable"
|+ Revision history |
Version
! Release date ! Notes |
---|
{{Version|o|1–19}}{{Citation needed|date=January 2022}}
| 1996–1999 | Developmental versions by AT&T labs preceding the sale of the format to LizardTech. |
{{Version|o|Version 20}}
| April 1999 | DjVu version 3. DjVu changed from a single-page format to a multipage format. |
{{Version|co|Version 21}}
| September 1999 | Indirect storage format replaced. The searchable text layer was added. |
{{Version|co|Version 22}}
| April 2001 | Page orientation, color JB2 |
{{Version|o|Version 23}}
| July 2002 | CID chunk |
{{Version|o|Version 24}}
| February 2003 | LTAnno chunk |
{{Version|co|Version 25}}
| May 2003 | NAVM chunk. Support for DjVu bookmarks (outlines) was added. Changes made by Versions 23 and 24 were made obsolete. |
{{Version|c|Version 26}}
| April 2005 | Text/line annotations |
colspan="4" | {{Version |l |show=111110}} |
The primary usage of the DjVu format has been the electronic distribution of documents with a quality comparable to that of printed documents. As that niche is also the primary usage for PDF, it was inevitable that the two formats would become competitors. It should however be observed that the two formats approach the problem of delivering high resolution documents in very different ways: PDF primarily encodes graphics and text as vectorised data, whereas DjVu primarily encodes them as pixmap images. This means PDF places the burden of rendering the document on the reader, whereas DjVu places that burden on the creator.
During a number of years, significantly overlapping with the period when DjVu was being developed, there were no PDF viewers for free operating systems—a particular stumbling block was the rendering of vectorised fonts, which are essential for combining small file size with high resolution in PDF. Since displaying DjVu was a simpler problem for which free software was available, there were suggestions that the free software movement should employ DjVu instead of PDF for distributing documentation; rendering for creating DjVu is in principle not much different from rendering for a device-specific printer driver, and DjVu can as a last resort be generated from scans of paper media. However, when FreeType 2.0 in 2000 began to provide rendering of all major vectorised font formats, that specific advantage of DjVu began to erode.
In the 2000s, with the growth of the World Wide Web and before widespread adoption of broadband, DjVu was often adopted by digital libraries as their format of choice, thanks to its integration with software like Greenstone{{cite web |url=http://wiki.greenstone.org/doku.php?id=nzdl:projects |title=nzdl:projects - Greenstone |website=Wiki.greenstone.org |access-date=7 December 2021}} and the Internet Archive,{{cite web |url=https://blog.lib.uiowa.edu/hardinmd/2008/09/05/google-books-vs-djvu-in-internet-archive/ |title=Google Books vs DjVu in Internet Archive |website=Blog.libuiowa.edu |date=2018-09-05 |author=Eric Rumsey |access-date=2018-08-21 |archive-date=2018-08-22 |archive-url=https://web.archive.org/web/20180822014943/https://blog.lib.uiowa.edu/hardinmd/2008/09/05/google-books-vs-djvu-in-internet-archive/ |url-status=dead }} browser plugins which allowed advanced online browsing, smaller file size for comparable quality of book scans and other image-heavy documents{{cite web |url=https://blog.lib.uiowa.edu/hardinmd/2008/09/10/djvu-again/ |title=DjVu again |date=2018-09-10 |author=Eric Rumsey |website=Blog.libuiowa.edu}} and support for embedding and searching full text from OCR.{{cite web |url=https://blog.archive.org/2004/12/09/new-book-collection-color-scans-djvu-some-pdf/ |title=New book collection: color scans, djvu, some pdf |format=PDF |website=Blog.archive.org |date=2004-12-09 |author=Jeff Kaplan}}{{cite book |chapter=Efficient search in hidden text of large DjVu documents |date=2011-09-12 |author=Janusz S. Bień |title=Advanced Language Technologies for Digital Libraries |series=Lecture Notes in Computer Science |volume=6699 |pages=1–14 |doi=10.1007/978-3-642-23160-5_1 |isbn=978-3-642-23159-9 |s2cid=3095526 |url=http://bc.klf.uw.edu.pl/177/3/JSB_Alt4dl-2010u.pdf}}
Some features such as the thumbnail previews were later integrated in the Internet Archive's BookReader{{cite web |url=https://blog.lib.uiowa.edu/hardinmd/2010/10/19/internet-archives-bookreader-thumbnail-view/ |title=Internet Archive's BookReader Thumbnail View |date=2010-09-10 |author=Eric Rumsey |website=Blog.libuiowa.edu}} and DjVu browsing was deprecated in its favour as around 2015 some major browsers stopped supporting NPAPI and DjVu plugins with them.{{cite web |url=https://archive.org/post/1053214/djvu-files-for-new-uploads |date=2016-02-26 |title=DjVu files for new uploads |author1=Brewster Kahle |author2=Jeff Kaplan |website=Archive.org}}
DjVu.js Viewer attempts to replace the missing browser plugins.{{cn|date=December 2024}}
Design
The DjVu file format is based on the Interchange File Format and is composed of hierarchically organized chunks. The IFF structure is preceded by a 4-byte AT&T
magic number. Following is a single FORM
chunk with a secondary identifier of either DJVU
or DJVM
for a single-page or a multi-page document, respectively.
All the chunks can be contained in a single file in the case of the so called bundled documents, or can be contained in several files: one file for every page plus some files with shared chunks.
class="wikitable"
|+Chunk types in DjVu files |
scope="col"| Chunk identifier
!scope="col"| Contained by !scope="col"| Description |
---|
scope="row"| FORM:DJVU
|| FORM:DJVM || Describes a single page. Can either be at the root of a document and be a single-page document or referred to from a {{Code|DIRM}} chunk. |
scope="row"| FORM:DJVM
| {{n/a}} || Describes a multi-page document. Is the document's root chunk. |
scope="row"| FORM:DJVI
|| FORM:DJVM || Contains data shared by multiple pages. |
scope="row"| FORM:THUM
|| FORM:DJVM || Contains thumbnails. |
scope="row"| INFO
|| FORM:DJVU || Must be the first chunk. Describes the page width, height, format version, resolution, gamma, and rotation. |
scope="row"| DIRM
|| FORM:DJVM || Must be the first chunk. References other {{Code|FORM}} chunks. These chunks can either follow this chunk inside the {{Code|FORM:DJVM}} chunk or be contained in external files. These types of documents are referred to as bundled or indirect, respectively. |
scope="row"| NAVM
|| FORM:DJVM || If present, must immediately follow the {{Code|DIRM}} chunk. Contains a BZZ-compressed outline of the document. |
scope="row"| ANTa, ANTz
|| FORM:DJVI or FORM:DJVU || Annotations. |
scope="row"| TXTa, TXTz
|| FORM:DJVU || Unicode text and layout information. |
scope="row"| INCL
|| FORM:DJVU || The ID of an included {{Code|FORM::DJVI}} chunk. |
scope="row"| Sjbz
|| FORM:DJVU || BZZ compressed JB2 bitonal data used to store mask. |
scope="row"| Djbz
|| FORM:DJVI or FORM:DJVU || Shared shape table. |
scope="row"| WMRM
|| ? || JB2 data required to remove a watermark. |
scope="row"| || FORM:DJVU || Obsolete chunk with unknown content. |
DjVu divides a single image into many different images, then compresses them separately. To create a DjVu file, the initial image is first separated into three images: a background image, a foreground image, and a mask image. The background and foreground images are typically lower-resolution color images (e.g., 100 dpi); the mask image is a high-resolution bilevel image (e.g., 300 dpi) and is typically where the text is stored. The background and foreground images are then compressed using a wavelet-based compression algorithm named IW44. The mask image is compressed using a method called JB2 (similar to JBIG2). The JB2 encoding method identifies nearly identical shapes on the page, such as multiple occurrences of a particular character in a given font, style, and size. It compresses the bitmap of each unique shape separately, and then encodes the locations where each shape appears on the page. Thus, instead of compressing a letter "e" in a given font multiple times, it compresses the letter "e" once (as a compressed bit image) and then records every place on the page it occurs.
Optionally, these shapes may be mapped to UTF-8 codes (either by hand or potentially by a text recognition system) and stored in the DjVu file. If this mapping exists, it is possible to select and copy text.
Since JB2 (also called DjVuBitonal) is a variation on JBIG2, working on the same principles,Artem Mikheev, Luc Vincent, Mike Hawrylycz & Léon Bottou: Electronic Document Publishing Using DjVu both compression methods have the same problems when performing lossy compression. In 2013 it emerged that Xerox photocopiers and scanners had been substituting digits for similar looking ones, for example replacing a 6 with an 8.See the JBIG2 article for more details and references. A DjVu document has been spotted in the wild with character substitutions, such as an n with bleeding serifs turning into a u and an o with a spot inside turning into an e.{{cite web |url=https://news.ycombinator.com/item?id=17435514 |title=This document caused me a fair bit of consternation transcribing it on a site th... | Hacker News |website=News.ycombinator.com |access-date=7 December 2021}} Whether lossy compression has occurred is not stored in the file. Thus the DjView viewing application can't warn the user that glyph substitutions might have occurred, neither when opening a lossy compressed file, nor in the Information or Metadata dialogue boxes.{{cite web |url=https://sourceforge.net/projects/djvu/ |title=DjVuLibre |website=SourceForge.net |access-date=7 December 2021}}
Licensing
DjVu is an open file format with patents. The file format specification is published, as well as source code for the reference library. The original authors distribute an open-source implementation named "DjVuLibre" under the GNU General Public License and a patent grant.{{cite web | url=https://djvu.sourceforge.net/licensing.html | title=DjVuLibre: Open Source DjVu library and viewer }} The rights to the commercial development of the encoding software have been transferred to different companies over the years, including AT&T Corporation, LizardTech,{{cite web |url=https://www.lizardtech.com/company/about |title=Company – About – LizardTech |last=Extensis |website=Lizardtech.com}} Celartem{{cite web |url=https://www.bloomberg.com/profile/company/2590570Z:US |title=Celartem, Inc.: Private Company Information – Bloomberg |website=Bloomberg.com}} and ePapyrus Solutions K.K. (formerly Cuminas{{cite web |url=https://www.cuminas.jp/company |title=会社情報 - Cuminas Corporation |website=Cuminas.jp |access-date=2018-01-14 |archive-url=https://web.archive.org/web/20180115001836/https://www.cuminas.jp/company |archive-date=2018-01-15 |url-status=dead}} before joining ePapyrus Solutions, Inc.{{cite web |date=2022-06-03 |script-title=ja:株式譲渡および完全子会社化のお知らせ |trans-title=Notice regarding share transfer and becoming a wholly owned subsidiary |work=epapyrus.jp |language=ja |url=https://www.epapyrus.jp/cat_news/2366 |access-date=2024-12-08}}).{{cite web |date=2023-11-06 |script-title=ja:会社名変更のお知らせ |trans-title=Notice of company name change |work=epapyrus.jp |language=ja |url=https://www.epapyrus.jp/cat_news/2548 |access-date=2024-12-08}} Patents typically have an expiry term of about 20 years.
Celartem acquired LizardTech and Extensis.{{cite web |url=http://www.celartem.com/en/company-overview/ |title=Company Overview – Celartem Technology, Inc. |website=Celartem.com |access-date=7 December 2021 |archive-date=27 May 2019 |archive-url=https://web.archive.org/web/20190527231303/http://www.celartem.com/en/company-overview/ |url-status=dead }}{{cite web |url=https://www.extensis.com/newsroom/celartem-technology-announces-merger-of-us-holdings/ |title=Celartem Technology Announces Merger of US Holdings – Extensis.com |access-date=2018-01-14 |archive-url=https://web.archive.org/web/20180115003244/https://www.extensis.com/newsroom/celartem-technology-announces-merger-of-us-holdings/ |archive-date=2018-01-15 |url-status=dead}}{{cite web |url=https://www.bloomberg.com/research/stocks/private/snapshot.asp?privcapId=3046493 |title=Celartem Technology Inc.: Private Company Information – Bloomberg |website=Bloomberg.com}}{{cite web |url=https://bigpicturemag.com/celartem-sells-extensis-and-lizardtech-plugins-and-xtensions-onone-software |title=Celartem Sells Extensis and LizardTech Plugins and XTensions to onOne Software – Big Picture – Wide Format Printing |website=bigpicture.net|date=28 July 2005 }}
Adoption
The selection of downloadable DjVu viewers is wider on Linux distributions than it is on Windows or macOS. Additionally, the format is rarely supported by proprietary scanning software.
Free creators, manipulators, converters, web browser plug-ins, and desktop viewers are available. DjVu is supported by a number of multi-format document viewers and e-book reader software on Linux (Okular, Evince, Zathura), Windows (Okular, SumatraPDF), and Android ([https://github.com/SufficientlySecure/document-viewer Document Viewer],{{Citation |title=Document Viewer |date=2022-04-04 |url=https://github.com/SufficientlySecure/document-viewer |publisher=Sufficiently Secure |access-date=2022-04-09}} FBReader, EBookDroid, PocketBook).
In 2002, the DjVu file format was chosen by the Internet Archive as a format in which its Million Book Project provides scanned public-domain books online (along with TIFF and PDF).{{cite web |url=http://wiki.laptop.org/go/DJVU |title=Image file formats – OLPC |publisher=Wiki.laptop.org |access-date=2008-09-09}} In February 2016, the Internet Archive announced that DjVu would no longer be used for new uploads, among other reasons citing the format's declining use and the difficulty of maintaining their Java applet based viewer for the format.
Wikimedia Commons, a media repository used by Wikipedia among others, conditionally permits PDF and DjVu media files.Wikimedia Commons. Project scope: PDF and DjVu.
See also
- {{anl|Comparison of e-book formats}}
- {{anl|International Image Interoperability Framework}}
- {{anl|JPEG 2000}}
- {{anl|Mixed raster content}}
Notes
{{noteslist}}
References
{{refs}}
External links
{{commonscat|DjVu file format}}
- [https://djvu.js.org/ DjVu.js Viewer] use with Firefox and Chrome
- [https://jwilk.net/software/ pdf2djvu] Jakub Wilk's tools
- [https://www2.cuminas.jp/en/downloads Software Downloads] – Cuminas Corporation
{{Compression formats}}
{{Office document file formats}}
{{Graphics file formats}}
Category:Computer file formats
Category:Computer-related introductions in 1998
Category:Electronic publishing
Category:Graphics file formats