[tex-live] [Cjk] Chinese TrueType, dvipdfm_dl14.map, dvipdfmx

Werner LEMBERG wl at gnu.org
Fri Mar 30 17:07:32 CEST 2007


> The brief discription of the problem is that the TrueType Chinese
> font entry in dvipdfm_dl14.map makes dvipdfmx unhappy.  [...]

I think this is the wrong route.  Please read the stuff in

  doc/latex/CJK/doc/pdfhowto

how to add fonts for dvipdfmx properly.  Basically, it means to add
stuff to the cid-x.map file.

> I think the best solution is to have updmap-sys to generate a
> correct dvipdfm_dl14.map regarding the Chinese truetype font.  What
> should I do?

I've CCed this message to texlive at tug.org.  It looks like a bug in
updmap-sys.  For reference, I've appended the whole mail below.


    Werner


======================================================================


I have MacTeX-2007 installed on my Mac.  LaTeX CJK can process  
traditional Chinese  immediately after MacTeX installation due to the  
included Type1 bsmi font.  That is very convenient.

I add an additional TrueType traditional Chinese font bkai00mp.ttf to  
the system, making those necessary font files (*.tfm, *.enc) and  
place them into
/usr/local/texlive/texmf-local/fonts
tfm/
enc/
subdirectories

The content of bkaiu.map looks like the following:
----------------- >>>
bkaiu00 <bkai00mp.ttf <bkaiu00.enc
.......
 >>>-----------------

It is placed in
/usr/local/texlive/texmf-local/fonts/map/pdftex/

It is enabled by
sudo updmap-sys --enable Map bkaiu.map

Using LaTeX CJK with pdflatex
\begin{CJK}{UTF8}{bkai} ....

shows no problem at all.

However, updmap-sys also "propapages" bkaiu.map into dvipdfm_dl14.map  
and results in a map file with inconsistent syntax:
----------------- >>>
.....
bkaiu00 bkaiu00 <bkai00mp.ttf
.....
lprr8v t5uni PalatinoLinotype-Roman
.....
 >>>---------------

The entries of bkaiu cause dvipdfmx to show the warning message:
---------------- >>>
** WARNING ** This .map file looks like a dvips format fontmap file.
** WARNING ** -- Current input buffer is: bkaiu00 bkaiu00 <bkai00mp.ttf
** WARNING ** -- Reading fontmap file stopped at: file="dvipdfm.map",  
line=258.
** WARNING ** Deleting fontmap record for "ASCII"
[.....  .....]
** WARNING ** Deleting fontmap record for "bicigvm"
 >>> ---------------

Interestingly, the warning message does not prevent dvipdfmx from  
generating a good pdf with bkai and cm fonts in it.  However,  
dvipdfmx will insist to use PK version for the roman alphabets if  
times.sty is used, because the corresponding fontmap record is  
deleted.  Of course, dvipdfmx is capable of using Type1 with  
times.sty package, if bkaiu.map is disabled via updmap-sys.

For comparison, the content of pdftex_dl14.map regarding bai looks like:
----------------- >>>
.....
bkaiu00 <bkai00mp.ttf <bkaiu00.enc
.....
lprr8v PalatinoLinotype-Roman "T5UniEncoding ReEncodeFont" <t5uni.enc  
<pala.ttf
.....
 >>>---------------

I find that the entry for lprr8v (for pala.ttf) in dvipdfm_dl14.map  
does not contain the "<fontname.ttf"  So, I manually delete those  
"<bkai00mp.ttf" in dvipdfm_dl14.map in
/usr/local/texlive/2007/texmf-var/fonts/map/dvipdfm/updmap/

This remedies the problem.  dvipdfmx does not have any warning  
message on this issue and can generate a good pdf with bkai and  
"Times" font in it.

However, the work-around will be overwritten next time when I run  
updmap-sys.

I think the best solution is to have updmap-sys to generate a correct  
dvipdfm_dl14.map regarding the Chinese truetype font.   What should I  
do?


More information about the tex-live mailing list