Closed doraTeX closed 8 years ago
9.16 では
-dCompressPages=true -dASCII85EncodePages=false
がデフォルトになっていて,バイナリ形式EPSを出力していたのに対し,9.18 では-dCompressPages=false -dASCII85EncodePages=true
がデフォルトになって
私は 9.16 では -dCompressPages=true -dASCII85EncodePages=true
だと思っていました。かすかな記憶では、gs9.16 のときは
-dCompressPages=true
の効果で圧縮されてできたバイナリが -dASCII85EncodePages=true
でテキストっぽくなっている(これ)だったのが、gs9.18 になったときに
-dCompressPages=false
で圧縮すらしないので、バイナリでないから ASCII85Encode する前から読めるテキストになっているのだと解釈していました。勘違いでしょうか?
今改めて gs 9.16 で実験してみました。
-dCompressPages=true -dASCII85EncodePages=false
を付けた場合:上と全く同一のepsを吐き出す(diffを取ると差分は日付のみ)-dCompressPages=true -dASCII85EncodePages=true
を付けた場合:末尾の「真のバイナリ」部が ASCII85 エンコードされた「読めないテキスト」になり,「全体がテキストだが読めないテキストEPS」になる。よって,gs 9.16 ではやはり -dCompressPages=true -dASCII85EncodePages=false
がデフォルトであったのだと思います。-dASCII85EncodePages
は末尾のバイナリ部の吐き出し方に影響を与えています。
かつて末尾に少しだけ存在した明らかな本物の LZW バイナリは吐かなくなったが、依然 ASCII85Encode されたにすぎないテキストがある(これ)
こちらの環境では,gs 9.18 のデフォルトでは,「末尾まで完全に読めるテキストEPS」を出力しています。
ありがとうございます。
gs 9.18 のデフォルトでは,「末尾まで完全に読めるテキストEPS」を出力しています。
gs9.19PRE ではまた状況が違うのかもしれませんね… しかも Word2011 だと gs9.18 のデフォルト(末尾まで完全に読めるテキストEPS)はぼやけて、-dCompressPages=true -dASCII85EncodePages=false
だと綺麗ということは:「内容は同じはずなのに圧縮有無で見え方が違う」不思議です…
gs 9.16 と 9.18 を比較したテストファイルと結果一式はこちらです。
9.19 でまた状況が変わる予定となると,引き続き状況を注視してゆく必要があって危険ですね……。
バージョンによってこれだけ仕様がコロコロ変わるとなると,-dCompressPages
と -dASCII85EncodePages
のパラメータ値はデフォルトに任せず,明示的に指定して固定した方が無難そうです。
もうすぐ Word 2016 が手に入る(会社で一括導入)予定なので,導入次第そちらでも状況をテストしてみます。
そちらでももし -dCompressPages=true -dASCII85EncodePages=false
しておくことで綺麗に張り込めるという状況が同じであれば,eps2write 使用時はそれを明示指定するようにしましょう。
Office 2016 を入手したので試してみました。 Office 2016 は,どうもEPS全般を苦手にしているようで,不安定挙動を示します。
-dCompressPages
や -dASCII85EncodePages
の状態などによらず常に)。といった感じで,Office 2016 でEPS貼り付けはしない方がよさそうです。
PDF貼り付け,EMF貼り付けは大丈夫です。
Office 2016 の検証、ありがとうございます。PDF が貼り付けられるので安心しました。EMF も破線を綺麗に描けるようになりましたし、EPS を貼る必要は全くないと思います。
ようやく Ghostscript 9.18 を試してみました。
52 でも話題になっていたように,gs 9.18 では,eps2write のデフォルト仕様が 9.16 から変更になっているようです。
確かに,9.16 では
-dCompressPages=true -dASCII85EncodePages=false
がデフォルトになっていて,バイナリ形式EPSを出力していたのに対し,9.18 では-dCompressPages=false -dASCII85EncodePages=true
がデフォルトになって,デフォルトで「読めるテキストEPS」を出力するように戻ったようです。Word 2011 へのEPS貼り付けの結果をまとめてみました。
-dASCII85EncodePages=false
付き:↑と全く同じEPSを吐き出す。-dCompressPages=true
付き:エンコードされた読めないテキストEPS。Word上は綺麗。-dCompressPages=true -dASCII85EncodePages=false
付き:バイナリEPS。Word上は綺麗。というわけで,「テキスト形式EPS」がOFFのときの gs によるEPS生成は,eps2write に
-dCompressPages=true
を付けておくのがよさそうです。 「テキスト形式EPSがOFF」というUIと呼応させると,そのときは-dASCII85EncodePages=false
も指定して gs 9.16 のときと同様にバイナリEPSを吐き出した方がよいかもしれません。