This file summarizes the file format changes
between DjVu2 and DjVu3.
------------------------------------------------------------
1 - DJVU3 FILE STRUCTURE OVERVIEW
------------------------------------------------------------
DjVu files are organized according to the ``EA IFF 85'' layout. Pointers to
the appropriate reference document are provided in section
\Ref{IFFByteStream.h}. IFF files are logically composed of a sequence of
data \emph{chunks}. Each chunk comes with a four character \emph{chunk
identifier} describing the type of the data stored in the chunk. A few
special chunk identifiers, for instance #"FORM"#, are reserved for so
called \emph{composite chunks} containing a sequence of data chunks. This
convention effectively provides IFF files with a hierarchical structure.
Composite chunks are further identified by a \emph{secondary chunk
identifier}. For convenience, both identifiers are gathered as an
extended chunk identifier such as #"FORM:DJVU"#.
The four octets #0x41,0x54,0x26,0x54# may be inserted in front of the IFF
compliant byte stream. The decoder simply ignores these four octets when
they are present. These four octets are not part of the IFF format and
are not required components of a valid DjVu file. Certain versions of MSIE
incorrectly recognize any IFF file as a Microsoft AIFF sound file. The
presence of these four octets prevents this incorrect identification.
The DjVu specification mandates that the decoder should silently
skip chunks whose identifier is not recognized. This mechanism
provides a backward compatible way to extend the initial format by
allocating new chunk identifiers.
------------------------------------------------------------
1.1 - DJVU3 IMAGE FILES
------------------------------------------------------------
\textbf{Photo DjVu Image} ---
Photo DjVu Image files are best used for
encoding photographic images in colors or in shades of gray. The data
compression model relies on the IW44 wavelet representation. This format
is designed such that the IW44 decoder is able to quickly perform
progressive rendering of any image segment using only a small amount of
memory. Photo DjVu files are composed of a single #"FORM:DJVU"# composite
chunk. This composite chunk always begins with one #"INFO"# chunk
describing the image size and resolution (see \Ref{DjVuInfo.h}). One or
more additional #"BG44"# chunks contains the image data encoded with the
IW44 representation (see \Ref{IW44Image.h}). The image size specified in
the #"INFO"# chunk and the image size specified in the IW44 data must be
equal.
\textbf{Bilevel DjVu Image} ---
Bilevel DjVu Image files are used to compress
black and white images representing text and simple drawings. The
JB2 data compression model uses the soft pattern matching technique, which
essentially consists of encoding each character by describing how it
differs from a well chosen already encoded character. Bilevel DjVu Files
are composed of a single #"FORM:DJVU"# composite chunk. This composite
chunk always begins with one #"INFO"# chunk describing the image size and
resolution (see \Ref{DjVuInfo.h}). An additional #"Sjbz"# chunk contains
the bilevel data encoded with the JB2 representation (see
\Ref{JB2Image.h}). The image size specified in the #"INFO"# chunk and the
image size specified in the JB2 data must be equal.
\textbf{Compound DjVu Image} ---
Compound DjVu Files are an extremely
efficient way to compress high resolution Compound document images
containing both pictures and text, such as a page of a magazine. Compound
DjVu Files represent the document images using two layers. The
\emph{background layer} is used for encoding the pictures and the
paper texture.
The \emph{foreground layer} is used for encoding the text and the drawings.
Compound DjVu Files are composed of a single #"FORM:DJVU"# composite
chunk. This composite chunk always begins with one #"INFO"# chunk
describing the size and the resolution of the image (see \Ref{DjVuInfo}).
Additional chunks hold the components of either the foreground or the
background layers.
The main component of the foreground layer is a bilevel image named the
\emph{foreground mask}. The pixel size of the foreground mask is equal to
the size of the DjVu image. It contains a black-on-white representation
of the text and the drawings. This image is encoded by a #"Sjbz"# chunk
using the JB2 representation. There may also be a companion chunk
#"Djbz"# containing a \emph{shape dictionary} that defines bilevel shapes
referenced by the #"Sjbz"# chunk.
The \emph{foreground colors} can be encoded according to two models:
\begin{itemize}
\item
The foreground colors may be encoded using a small color image,
the \emph{foreground color image}, encoded as a single #"FG44"#
chunk using the
IW44 representation (see \Ref{IW44Image.h}). Such compound DjVu images
are rendered by painting the foreground color image on top of the
background color image using the foreground mask as a stencil. The
pixel size of the foreground color image is computed by rounding up the
quotient of the mask size by an integer sub-sampling factor ranging from
1 to 12. Most Compound DjVu Images use a foreground color sub-sampling
factor of 12. Smaller sub-sampling factors produce very slightly better
images.
\item
The foreground colors may be encoded by specifying one solid color per
object described by the JB2 encoded mask. These \emph{JB2 colors} are
color-quantized and stored in a single #"FGbz"# chunk (see.
\Ref{DjVuPalette.h}). Such compound DjVu images are rendered by
painting each foreground object on top of the background color image
using the solid color specified by the #"FGbz"# chunk.
\end{itemize}
The background layer is a color image, \Ref{the background color image}
ncoded by an arbitrary number of #"BG44"# chunks containing successive
IW44 refinements (see \Ref{IW44Image.h}). The size of this image is
computed by rounding up the quotient of the mask size by an integer
sub-sampling factor ranging from 1 to 12. Most Compound DjVu Images use a
background sub-sampling factor equal to 3. Smaller sub-sampling factors
are adequate for images with a very rich paper texture. Larger
sub-sampling factors are adequate for images containing no pictures.
There are no ordering or interleaving constraints on these chunks except
that (a) the #"INFO"# chunk must appear first, and (b) the successive
#"BG44"# refinements must appear with their natural order. The chunk
order simply affects the progressive rendering of DjVu images on a web
browser.
\textbf{IW44 Image Files} --
The IW44 Image file format is the native format for the IW44 wavelet
representation. These files are deprecated in favor of Photo DjVu
Images.
\textbf{Alternative encodings} ---
Besides the JB2 and IW44 encoding schemes,
the DjVu format supports alternative encoding methods for its components.
\begin{itemize}
\item
The foreground mask may be represented by a single #"Smmr"# chunk
instead of #"Sjbz"#. The #"Smmr"# chunk contains a bilevel image
encoded with the Fax-G4/MMR method. Although the resulting files
are typically six times larger, this capability can be useful when
DjVu is used as a front-end for fax machines and scanners with
embedded Fax-G4/MMR capabilities.
\item
The background color image may be represented by a single #"BGjp"#
chunk instead of several #"BG44"# chunks. The #"BGjp"# chunk contains
没有合适的资源?快使用搜索试试~ 我知道了~
djvulibre-3.5.17.tar.gz_Compression djvu_DjVuLibre
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 32 浏览量
2022-09-24
12:42:08
上传
评论
收藏 2.19MB GZ 举报
温馨提示
共485个文件
cpp:138个
h:122个
1:38个
DjVuLibre提供了高效的图像 压缩格式DjVu格式的编码和解码功能。DjVuLibre的使用授权为GPL按照GPL的要求
资源推荐
资源详情
资源评论
收起资源包目录
djvulibre-3.5.17.tar.gz_Compression djvu_DjVuLibre (485个子文件)
djvused.1 25KB
djvused.1 21KB
djvu.1 15KB
djvu.1 14KB
csepdjvu.1 10KB
c44.1 9KB
c44.1 8KB
ddjvu.1 7KB
djvups.1 7KB
csepdjvu.1 7KB
djvudigital.1 6KB
djvups.1 6KB
djvuserve.1 6KB
djvuserve.1 6KB
djvumake.1 5KB
djvumake.1 5KB
ddjvu.1 5KB
djview.1 5KB
djview.1 5KB
cjb2.1 5KB
bzz.1 4KB
bzz.1 4KB
cjb2.1 3KB
cpaldjvu.1 3KB
cpaldjvu.1 3KB
djvm.1 3KB
djvm.1 3KB
djvuextract.1 2KB
djvmcvt.1 2KB
djvuextract.1 2KB
djvudump.1 2KB
djvudump.1 2KB
djvmcvt.1 2KB
djvutxt.1 2KB
djvutxt.1 2KB
any2djvu.1 905B
djvuxmlparser.1 19B
djvutoxml.1 19B
configure.ac 13KB
Makefile.add 21KB
any2djvu 6KB
djvu.applications 165B
wait.bm 4KB
wait_mask.bm 4KB
zoom_select.bm 3KB
zoom_select_mask.bm 3KB
hand1.bm 3KB
hand2.bm 3KB
hand2_mask.bm 3KB
hand1_mask.bm 3KB
vertex.bm 3KB
vertex_mask.bm 3KB
nsdejavu.c 58KB
npunix.c 11KB
changelog 12KB
bmp_djview_front.cin 79KB
ppm_djvu_logo.cin 5KB
ppm_vdjvu.cin 3KB
ppm_djview_icon.cin 3KB
ppm_vlpage.cin 1KB
ppm_vprint.cin 1KB
ppm_vppage.cin 1KB
ppm_vpin_in.cin 1KB
ppm_vzoom_in.cin 1KB
ppm_vfind.cin 1KB
ppm_vnpage.cin 1KB
ppm_vsave.cin 1KB
ppm_vfpage.cin 1KB
ppm_vzoom_out.cin 1KB
ppm_vpin_out.cin 1KB
ppm_forw.cin 1KB
ppm_back.cin 1KB
ppm_rotate270.cin 1KB
ppm_rotate90.cin 1KB
ppm_zoomselect.cin 1KB
ppm_hand1.cin 1KB
ppm_textselect.cin 990B
compat 2B
configure 874KB
control 3KB
COPYING 18KB
copyright 5KB
COPYRIGHT 3KB
ddjvuapi.cpp 82KB
DjVuToPS.cpp 79KB
DjVuFile.cpp 74KB
DjVuDocEditor.cpp 69KB
GString.cpp 60KB
djvused.cpp 54KB
DjVuDocument.cpp 53KB
ZPCodec.cpp 53KB
IW44EncodeCodec.cpp 53KB
qd_viewer.cpp 52KB
IW44Image.cpp 52KB
DataPool.cpp 51KB
qd_base.cpp 49KB
qx_imager.cpp 49KB
csepdjvu.cpp 48KB
GURL.cpp 47KB
GPixmap.cpp 43KB
共 485 条
- 1
- 2
- 3
- 4
- 5
资源评论
我虽横行却不霸道
- 粉丝: 72
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功