« Wimmo | Main | マツダが純正オーディオをiPod対応に! »

2006年7月28日

teTeX3とdvipdfmx

[ カテゴリ: MacOSX / NetBSD / Technology ]

MacOSXでpkgsrcを使ってるのは物好きらしいですが、その物好きなわけです。 理由はいろいろあるんだけど、まあそこは今回の主題ではないので触れないことで。

で、いつだったかteTeXを3系統に更新しました。 バージョン2ではコンパイルのときにちょっくら細工をしないとだめだったんですが、 そういうこともなくなり快適…かとおもいきや、思わぬ落とし穴が。 dvipdfmxがまともに動かないのです。

これ、ちゃんと調べてませんが、おそらくpkgsrcがどうこうというよりは、 teTeX3ではちゃんと環境にあった設定をしろよって方針に変わったんですかね。 結論から書くと、設定がことごとくされてなかったと云うことです。 まず、

** WARNING ** Could not locate a virtual/physical font for TFM "rml".
** WARNING ** >> There are no valid font mapping entry for this font.
** WARNING ** >> Font file name "rml" was assumed but failed to locate that font.
** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...

って怒られます。dvipdfmxではフォントはcid-x.map (pkgsrcでは/usr/pkg/share/texmf-local/dvipdfm/config/cid-x.map) に書かれてるんですけど、見事に空っぽ。 ってことで、お好みに応じてなんですけど、次のような感じに。

%% This file 'cid-x.map' is read by dvipdfmx for default
%% dvipdfmx.cfg setting.  Please append fontmap entries here.

rml  H Ryumin-Light
gbm  H GothicBBB-Medium
rmlv V Ryumin-Light
gbmv V GothicBBB-Medium

さて、これで万事解決かというとそういうわけにもいかず。

** WARNING ** No image converter available for converting file "xxxxx.eps" to PDF format.
** WARNING ** >> Please check if you have 'D' option in config file.
** WARNING ** pdf: image inclusion failed for "xxxxx.eps".
** WARNING ** Failed to read image file: xxxxx.eps
** WARNING ** Interpreting special command PSfile (ps:) failed.
** WARNING ** >> at page="4" position="(141.304, 552.345)" (in PDF)
** WARNING ** >> xxx "PSfile="xxxxx.eps" llx=0 lly=0 urx=1039 ury=612 rwi=103"

まーじで。teTeX2ではこんなことはなかったんだがなーとおもいつつ、 云われるがままにDオプションを確認するとdvipdfmx.cfg (/usr/pkg/share/texmf-local/dvipdfm/config/dvipdfmx.cfg) を確認すると(ちょっと長いので途中折り返してます)、

%% *Examples* for GhostScript (PS-to-PDF)%%
%% The following example decode all DCT (i.e., JPEG) encoded images
%% and then recompress images with Flate (zlib, same as PNG) encode
%% filter. If you are using recent version of gs, then please remove
%% -dAutoFilterXXXImages and -dXXXImageFilter.
%% /FlateEncode is introduced to avoid quality loss of "EPS JPEG"
%% images.
%%
%% Also note that PAPERSIZE=a0 is specified below. This convert PS
%% files (including EPS) to A0 papersize PDF. This is necessary to
%% prevent gs from clipping PS figure at some papersize. (A0 above
%% simply means large size paper)%%
%% GhostScript (Unix/Linux):
%D  "gs -q -dNOPAUSE -dBATCH -sPAPERSIZE=a0 -sDEVICE=pdfwrite -dCompatibilityLevel=1.3 
  -dAutoFilterGrayImages=false -dGrayImageFilter=/FlateEncode -dAutoFilterColorImages=false 
  -dColorImageFilter=/FlateEncode -dUseFlateCompression=true -sOutputFile=%o %i -c quit"
  (略)

全部コメントアウトされてるじゃん… ってことで、gsのコメントアウトをはずして、めでたしめでたし。 ちなみに、Windowsの場合はその次のgswin32cを使えばいいだろうし、 Acrobat持ってるひとはdistill使えばいいってことでしょうね。 MacOSXのAcrobatではDistillerを単独起動できなさそうなので、 まあgsを使って満足。

Comments

見事にコレではまった。

前作ったPDFがPreview.appで開けなくなって仕方なく作ろうとしていた。。

でも、PSが酷すぎるのか、開けないのはあんまり変わらず(涙)まぁ、作り直したのでおくっとくか。(昔の論文)

"dvipdfmx No image converter available for converting file" でサーチして、一番上を開いたら、どっかで見たことあるページで焦った(爆)

Post a comment




Remember Me?