From kawamata@sra.CO.JP Wed Sep 18 13:16:44 1996 From: kawamata@sra.CO.JP (Yukio &) Subject: Re: Cannot print from tgif to ML810PSIIVT Newsgroups: fj.comp.printers,fj.lang.postscript Date: 17 Sep 1996 10:23:32 GMT Organization: Software Research Associates, Inc., Japan Xref: icluna fj.comp.printers:2595 fj.lang.postscript:1488 Path: icluna!orions-news!odins-suita!itserv.it.okayama-u.ac.jp!ccews7!newssinet!hakata!kudpc!kuis-news!news.cs.ritsumei.ac.jp!news.dvlp.kddnet.ad.jp!news.kddnet.ad.jp!sinfony-news!wnoc-tyo-news!etlnews.etl.go.jp!etlinn.etl.go.jp!etl.go.jp!trc.rwcp!rwc-tyo!news.iij.ad.jp!sranha.sra.co.jp!sranhc.sra.co.jp!sran230.sra.co.jp!kawamata Lines: 171 Distribution: fj Message-ID: References: <4vrkkv$77j@pollux.cis.ibaraki.ac.jp> <503fim$l0e@toro.ishikawa-nct.ac.jp> NNTP-Posting-Host: sramhc.sra.co.jp In-reply-to: kawamata@sra.CO.JP's message of 13 Sep 1996 05:34:21 GMT 川又@SRAです。 内容が PSネタなので fj.lang.postscriptへもクロスポストします。 (このメールは長いです。) 新製品のプリンタMicroLine810PSII-VTとEPSON LP-8200PS2で共通のトラブル が起きています。現象は、 1. tgifでプリント出来なくなった。 2. dvi2psで文字化けが起こる。 です。 >>>>> On 13 Sep 1996 05:34:21 GMT, kawamata@sra.CO.JP (Yukio &) said: | 川又@SRAです。 | つい最近 EPSON LP-8200PS2(新製品)が届きました。 | トラブルが発生しているので、藁をも掴む思いで古いニュースを読み返してい | たら……、同じトラブルを見つけました。 >>>>> On 29 Aug 1996 07:07:02 GMT, | yyama@i.ishikawa-nct.ac.jp (Yoji Yamada) said: || || の記事において || ata@fhlbsst1.te.noda.sut.ac.jpさんは書きました。 |||| この度、沖データの MicroLine810PSII-VT を購入したのですが、 |||| tgif-2.16-p12.jp で作成した EPS ファイルが印刷できません。 | EPSON LP-8200PS2 でも tgifで作成した PSファイルが印刷出来ません。 | %%[ Error: invalidfont; OffendingCommand: compositefont ]%% これについて、原因が分かりました。しかし、対応方法は分かりません。 ちょっと長いので後述します。 |||| 私が所属している大学の研究室でも同様の事が起きています。 |||| MicroLine810PSIIV-LTですが、とりあえず以下につけるパッチで急場をしのい |||| でいます。が、とりあえず印刷できるようになっただけです。 || (中略) | すみません。オリジナルのニュースが Expireしているので、上記の「パッチ」 | をメールで kawamata@sra.co.jpまで送付してください。(_o_) Teruaki Ata さんからパッチを頂きました。 ありがとうございました。 もう一つの問題。 || 同じく沖データの MicroLine810PSIIV-LT を購入してしまったのですが、 || SS20(Sun OS4.1.4+JLE)から TeX文書を jdvi2kps などで ps に変換し、 || プリントアウトすると、TeXの英語フォントの部分が化け化けになります。 | はい、EPSON LP-8200PS2 でもこの現象を確認しました。 | dvi2psは英数字のビットマップフォントをダウンロードして使用する様になっ | ています。その部分の印字が全滅です。 | || また、フリーソフトなど附属のポストスクリプトファイルのドキュメント || も同じように正しくプリントアウトできません。 || || 皆さんのサイトではいかがですが? | 最近発売された PSプリンタに見られる現象の様ですね。 | ちなみにEPSON LP-8200PS2に搭載の PostScriptの Versionは 2015.107です。 dvi2psで起こっている問題に関しては、対処療法ですが対応策が分かりました。 問題のプリンタでは、ユーザ定義のフォントの中で使用している setcachedeviceの動きがおかしい様です。代わりに setcachedevice2 を試し てみましたが結果は同じでした。 結局、キャッシュを使用しない setcharwidthにしたら、何とか正常に印字す る事が出来ました。 /usr/local/tex/lib/drivers/jvi2.ps に対するパッチを添付します。 「おかしな動きをする PSのバージョンは 2000以上だろう」と思い適当に振り 分けました。もしこの数字が違っていたら適当な値に変えてください。 -----パッチ始まり----- *** /usr/local/tex/lib/drivers/jdvi2.ps.org Wed Mar 30 20:48:42 1994 --- /usr/local/tex/lib/drivers/jdvi2.ps Fri Sep 13 19:54:09 1996 *************** *** 141,148 **** {exch /ch-data 3 1 roll % [/ch-data][ch-code][fontdict] /BitMaps get exch get def % get the bitmap descriptor for char ch-data null ne ! {ch-tfmw 0 ch-xoff neg ch-yoff neg ch-width ch-xoff sub ch-height ch-yoff sub ! setcachedevice ch-width ch-height true [1 0 0 1 ch-xoff ch-yoff] {ch-image} imagemask } --- 141,150 ---- {exch /ch-data 3 1 roll % [/ch-data][ch-code][fontdict] /BitMaps get exch get def % get the bitmap descriptor for char ch-data null ne ! {version cvi 2000 ge % at least version 2015.107 has BUG of setcachedevice ! {ch-tfmw 0 setcharwidth} ! {ch-tfmw 0 ch-xoff neg ch-yoff neg ch-width ch-xoff sub ch-height ch-yoff sub ! setcachedevice} ifelse ch-width ch-height true [1 0 0 1 ch-xoff ch-yoff] {ch-image} imagemask } -----パッチ終り----- さて、最初のトラブル、 1. tgifでプリント出来なくなった。 についての報告です。 これは tgifだけの問題では無く、以前 Newsに流れていた %%Title: eucfont.ps %%Creator: shikida@cs.titech.ac.jp, ueno@cs.titech.ac.jp %%CreationDate: 1991-2-27 %%EndComments を使用している物は、問題のプリンタでは全滅の可能性があります。 eucfont.psは、EUC encodingの漢字フォントと任意の Ascii encodingを組み 合わせて、一連の文字列に漢字と英数字が交ざっていても、フォントの切り替 えをすることなく showするプログラムです。 PS Fontの FMapTypeが 2あるいは 5である事が前提です。 #本当は EUCは FMapType 5の 9/7マッピングで実装するのが正しいのに、 #GhostScriptの漢字が FMapType 2の 8/8マッピングで実装されているので、 #そうなっている。 それで、問題のプリンタで漢字フォントを調べてみたら、FMapType が 9と言 う聞いた事がないマッピングルールが使われていました。赤本には 1〜8まで しか説明がない。font をdumpしてみると、 /CMap -dict- /WMode 0 /BuildInfo -dict- /Encoding [0] <----- なんだこりゃ! /FID -font- /FontMatrix [1.0 0.0 0.0 1.0 0.0 0.0] /FontType 0 /FMapType 9 <----- なんだこりゃ! /FDepVector [-dict-] /FontName (GothicBBB-Medium-EUC-H) 漢字フォントが ROMで提供されるあたりから、フォントの構造に変更があった ようです。 EPSON LP-8200PS2の PS ユーティリティの中にあった、「お読みください」ファ イルの一部を抜粋します。 -----引用開始----- 6)日本語フォントについて 本プリンタでは日本語フォントの印刷モードを選択できます。 印刷モードには、CIDフォント本来の機能がサポートされたネイティ ブモードと、従来のフォントシステム(OCF)との互換性があるコン パチブルモードがあり、それぞれの特徴は以下の通りです。 ・現在、Windows、DOS、Unix等の多くの環境ではCIDフォント本来の 機能が動作しない。  これは、過去Adobe社からの日本語フォントの仕様の公開が十分で なかったために、保証できない方法にて日本語フォントが使用され、 その結果印刷できない不具合が発生しています。 ・一方、Macintosh環境では多くのソフトウェアはネイティブモード で動作しますが、一部のソフトウェアではコンパチブルモードでし か正常に印刷しません。  (QuarkXPress3.31Jにおける文字のアウトラインの印刷等) ・ネイティブモードはコンパチブルモードと比較して20%程度文字の 展開速度が速い。 ・コンパチブルモードが機能する文字エンコーディングは以下のもの だけです。  他のエンコーディングでは常時ネイティブモードで動作します。    [コンパチブルモードがサポートされているもの] /83pv-RKSJ-H /90ms-RKSJ-H, /90ms-RKSJ-V /90pv-RKSJ-H /Ext-H, /Ext-V /Ext-RKSJ-H, /Ext-RKSJ-V /RKSJ-H, /RKSJ-V    [常時ネイティブモードであるもの] /78-EUC-H, /78-EUC-V, /78-H, /78-RKSJ-H, /78-RKSJ-V, /78-V /90pv-RKSJ-V /Add-H, /Add-RKSJ-H, /Add-RKSJ-V, /Add-V, /EUC-H, /EUC-V /NWP-H, /NWP-V ・プリンタ電源投入時には常にコンパチブルモードが選択されます。 -----引用終り----- 試しに、GothicBBB-Medium-RKSJ-Hの FMapTypeの値を、ネイティブモードとコ ンパチブルモードで比べてみると、 ネイティブモードの時 /FMapType 9 コンパチブルモードの時 /FMapType 6 となりました。 結局 EUCのフォントは「常時ネイティブモード」で動作するので、お手上げで す。 以上。 -------------------------------------------------------------------------- 先端技術応用グループ 川又@SRA TEL : 03(3942)4441 ext 5752 FAX : 03(3942)4416 e-mail : kawamata@sra.co.jp