THE DVIPDFMx PROJECT

The DVIPDFMx project provides an eXtended version of the dvipdfm, a DVI format to PDF translator developed by Mark A. Wicks. The primary goal of this project is to support multi-byte character encodings and large character sets for East Asian languages by CID-keyed font technology. The secondary goal is to support as many features as pdfTeX developed by Hàn Thê Thành. This project is a combined work of the dvipdfm-jpn project by Shunsaku Hirata and its modified one, dvipdfm-kor by Jin-Hwan Cho.

Choosing stylesheet Screen will show side-menu and select sans-serif font at smaller size, and stylesheet Plain will hide side-menu and select serif font at medium size.

What's New

Obtaining DVIPDFMx

The DVIPDFMx project basically does not offer pre-compiled binary packages. See, the section Binary Packages for obtaining binary packages for each platforms.

Source Code

You can obtain the latest snapshot from http://project.ktug.org/dvipdfmx/snapshot/latest/.

When prompted for a password for anonymous account, just press the Enter key. You can browse CVS repositories through browser interface at http://cvs.ktug.org/viewcvs/dvipdfmx/.

To compile DVIPDFMx, you need at least the kpathsea library which is used for finding location of various resource files, and DVIPDFMx won't work without this library properly installed. Kpathsea library version heigher than 3.3 is recommended. In addition to this, the zlib data-compression library is required for compression support. Both zlib and libpng library is required for reading PNG format image files. DVIPDFMx optionally support libpaper library for handling paper sizes. Please read README file for more details.

Default search path for various resource files required by DVIPDFMx, namely SFD, CMap, and OpenType font files, may be different in recent installation of TeX, and DVIPDFMx may fail to find those files if you update kpathsea library and DVIPDFMx without adjusting existing texmf directory structure. In this case, please follow the instruction described in the section TeX Directory Structure (TDS) of README file.

Binary Packages

Features

Most features and enhancement added to dvipdfm is related to multi-byte encoding and font support, especially for supporting CJK languages.

Font and Encoding

DVIPDFMx supports various encodings in rather unintuitive way (due to various reasons). For 8-bits encodings, it supports .enc format glyph encoding file (used by dvips program) with few extensions undocumented here and remapping of a set of 8-bit encoded TeX fonts to a single double-byte font with SFD file support. And it can also support various multibyte encodings (excluding state-full encoding) by loading PostScript CMap resource. Not all encodings are supported depending on format of font to be used.

The following font formats are supported:

PDF Encryption

Encrypted PDF files can be generated if the -S option is given. The key bits (40-128 bits) and the permission flags are specified either in the configuration file dvipdfmx.cfg or with command line options -K (for key bits) and -P (for permission flags).

Graphics Support

All graphics format supported in dvipdfm is also supported in DVIPDFMx with few improvement: A little enhancement on PDF inclusion (can handle dvipdfm output PDF). Improved PNG support; alpha channel and tRNS chunk is fully supported. Indexed-color image is no longer converted to 24-bit RGB color image. Experimental embedded ICC profile support for JPEG and PNG format images. Windows BMP format is also supported in DVIPDFMx.

Nearly arbitrary graphics format can be supported with the help of external program as long as they can be translated into single page PDF image (like dvipdfm). There are few improvement on interpreting and translating PostScript code inserted with \special command or read from MetaPost output PostScript files. But there are still many limitations and restrictions.

Examples

Sample outputs of DVIPDFMx is available from the sample/ directory of the DVIPDFMx project site.

Some of examples presented in this section contains embedded CJK TrueType fonts. You need a PDF viewer supporting at least PDF version 1.3. For printing with PostScript printers, you may need CID-keyed font supporting printer, depending on how PDF files are converted to PostScript format.

PGF Manuals compiled by DVIPDFMx

ConTeXt

Most of examples are contributed by Lei Wang.

CJK-LaTeX Package

A testsuite for testing CJK-LaTeX compatibility is available: testsuite_cjk-latex.tar.gz containing cjkmix2 for testing various CJK encodings and TrueType font support with CJK-LaTeX package + DVIPDFMx.

HLaTeX Package

Resources

This section contains documents related to DVIPDFMx, some useful information for typesetting CJK text with TeX, and a small list of freely available fonts, etc...

DVIPDFMx Documents

There are no HTML nor PDF manulas for DVIPDFMx available yet, however, as DVIPDFMx is an extended version of dvipdfm, basic usage is not different from the original one. Please refer The Dvipdfm User's Manual and other documents contained in DVIPDFM distribution. The README file may contain brief instruction for installation, short description of additional resources, and summary of extension made in DVIPDFMx. There are few documents related to DVIPDFMx available from the doc/ section of the DVIPDFMx project site:

TeX Related, LaTeX Packages, and Extended TeX Engines

CJK or Unicode Font

Many CJK/Unicode fonts are freely available in various formats and in a variety of qualities.

Specifications

Useful documents and resources for developers.

DVI standard is available from CTAN:dviware/driv-standard.