Какво е DJVU файл?
DjVu, произнасян като „déjà vu“, е графичен файлов формат, предназначен за сканирани документи и книги, особено тези, които съдържат комбинация от текст, рисунки, изображения и снимки. Разработен е от AT&T Labs. Той използва множество техники като разделяне на слоя на изображението на текст и фонови изображения, прогресивно зареждане, аритметично кодиране и компресия със загуби за битонални изображения. Тъй като файлът DJVU може да съдържа компресирани, но висококачествени цветни изображения, снимки, текст и рисунки и следователно може да бъде запазен на по-малко място, той се използва в мрежата като електронни книги, ръководства, вестници, древни документи и др.
DjVu може да се класифицира като превъзходна алтернатива на PDF. Файловите разширения, свързани с DjVu, са .DJVU или .DJV. DjVu може да постигне съотношения на компресия около 5 – 10 по-добри от съществуващите методи като JPEG & GIF за цветни документи и 3 – 8 пъти по-добри от TIFF в черно-бели документи. Сканираните документи при 300 DPI с пълен цвят до 25 MB могат да бъдат компресирани до 30 до 100 KB. По подобен начин черно-белите документи могат да бъдат компресирани до 5 до 30 KB. Средната HTML страница може да бъде до 50 KB, следователно тези документи могат да бъдат качени в мрежата без проблем.
Кратка история
Технологията DjVu е разработена в лабораториите на AT&T от Yann LeCun, Léon Bottou, Patrick Haffner и Paul G от 1996 до 2001 г. Файловият формат DjVu е преминал през различни ревизии, като последната е от 2005 г.
Версия | Дата на издаване | Бележки |
---|---|---|
1–19 | 1996–1999 | Това са версиите за развитие. |
20 | Април 1999 | Единична страница беше променена на многостраничен формат. |
23 | юли 2002 | CID част |
24 | февруари 2003 | LTAnno парче |
21 | Септември 1999 | Форматът за индиректно съхранение е заменен. Беше добавен слой за търсене на текст. |
22 | Април 2001 | Ориентация на страницата, цвят JB2 |
25 | май 2003 | Чанк NAVM. Добавена е поддръжка за DjVu отметки. |
26 | април 2005 | Текст/ред анотации |
DjVu файлов формат
DjVu документите са IFF85 файлове. Структурата осигурява йерархия от контейнери, които съдържат информация в DjVu файл. Тези контейнери се наричат още „Чънкове“. Типът на парчето и ID на парчето описват как се използва парчето. Има 4-байтово заглавие, последвано от IFF структура. Първите четири байта на DjVu файл са 0x41 0x54 0x26 0x54. Този раздел обсъжда различните видове DjVu документи и съответните части, от които се състоят.
ID на парче | Използване |
---|---|
FORM | Съставната част с първите четири байта данни от частта FORM, които са вторичен идентификатор. |
FORM:DJVM | DjVu документ с множество страници. Съставна част, която съдържа частта DIRM. |
FORM:DJVU | DjVu документ на една страница. Съставна част, която съдържа частите, които съставят страница в djvu документ. |
FORM:DJVI | „споделен“ DjVu файл, който е включен чрез частта INCL. Споделени анотации и речник на формата. |
FORM:THUM | Съставна част, която съдържа частите TH44, които са вградените миниатюри. |
DIRM | Информация за име на страница за многостранични документи. |
NAVM | Информация за маркер |
ANTa, ANTz | Пояснения, включително първоначални настройки на изгледа и насложени хипервръзки, текстови полета и др. |
TXTa, TXTz | Unicode информация за текст и оформление. |
Djbz | Споделена таблица с форми. |
Sjbz | BZZ компресирани JB2 битонални данни, използвани за съхраняване на маска. |
FG44 | IW44 данни, използвани за съхраняване на преден план |
BG44 | IW44 данни, използвани за съхраняване на фона |
TH44 | IW44 данни, използвани за съхраняване на вградени миниатюрни изображения |
WMRM | JB2 данни, необходими за премахване на воден знак |
FGbz | Цветни JB2 данни. Осигурява цвят за всеки (блит или форма?) в съответния Sjbz блок. |
INFO | Информация за страницата a DjVu |
INCL | ИД на включено парче FORM:DJVI. |
BGjp | JPEG кодиран фон |
FGjp | JPEG кодиран преден план |
Smmr | G4 кодирана маска |
DJVU компресия
Едно изображение се разделя на много различни изображения и след това всяко изображение се компресира отделно. За създаването на DjVu файл изображението първо се разделя на три изображения, фон, преден план и маска. Обикновено фоновите и предните изображения са цветни изображения с по-ниска разделителна способност; но изображението на маската е изображение с по-висока разделителна способност и обикновено текстът се съхранява там. След разделянето изображенията на преден план и фон се компресират чрез алгоритъм за компресиране, базиран на вълни IW44, докато изображението на маската се компресира с помощта на друг метод, наречен JB2.
Методът на кодиране JB2 елиминира голяма част от излишъка в текстовото изображение чрез идентифициране на идентични форми на страницата, като например многократно появяване на знак в определен шрифт. JB2 първо кодира растерното изображение на всяка уникална форма, като се възползва от излишъка между подобни форми. След това кодира местата, на които всяка форма се появява на страницата. Както JB2, така и IW44 разчитат на нов тип адаптивен двоичен аритметичен кодер, наречен ZP-кодер, който изстисква всички останали излишъци в рамките на няколко процента от ограничението на Шанън. ZP-кодерът е адаптивен и по-бърз от другите кодери за приблизителна двоична аритметика.