ps2ps使用時にIPAフォント埋め込む方法?

ps2ps使用時にIPAフォント埋め込む方法?

- たきやま たけし の投稿
返信数: 12
#'ps2pdf...'から題名変更しましたので、スレッド変えました。
#ps2psが原因でした。お手数かけて申し訳ありませんでした。
#まさかこれだとは思いもしませんでした。

dvips->ps2pdfではIPAexminchoが埋め込まれました。

(1)powerdotでXGAのスクリーンサイズにする時、Linuxではps2psを通すことが必要でした。(windowsでは不要でした)
powerdotのオプションはpaper=screenです。

このあとps2pdfを通してpdfを作ると、fontは埋め込まれません。
#添付:presen_pdot_test_w_ps2ps.pdf

なお、ps2psを通さない例はフォントが埋め込まれていますが、両端が切れています。
#添付:presen_pdot_test_wo_ps2ps.pdf

(2)1.4g以降のpowerdotではWXGA用にpaper=smartboardがあり、
この場合はps2psを通さずにスクリーンサイズになります。

#添付:presen_pdot_test_smartboard.pdf

(Q)ps2ps使用時にIPAフォント埋め込む方法はどのように設定したらよいでしょうか?
特殊ケースかもしれませんが、よろしくお教えください。

#1ファイルしか添付できないようなので、最初のw_ps2psだけ添付します

下記のスクリプトでpdfを作成しています。

#!/bin/bash
src=$1
platex $src.tex
dvips  -D 600 -z -f $src.dvi | bkmk2uni -e  > $src.ps
ps2ps $src.ps  $src.tmp #LinuxではLandscapeするのにps2psが必要!!!
ps2pdf -dNOKANJI $src.tmp  $src.pdf
#ps2pdf -dNOKANJI $src.ps  $src.pdf

TeXソースは下記のとおりです

\documentclass[mode=present,
paper=screen,%XGA,UXGAのとき(4:3,1024-768,1600-1200)
%paper=smartboard,%%WXGA,WUXGAのとき(1280-800,1920-1200)
orient=landscape,display=slides,
size=11pt%default
]{powerdot}
\hypersetup{pdfpagemode=FullScreen}
\begin{document}
\begin{slide}{ほげほげの大冒険}
 月日がたつのは早いものです。
\end{slide}
\end{document}

たきやま たけし への返信

Re: ps2ps使用時にIPAフォント埋め込む方法?

- tat tsan の投稿
>(1)powerdotでXGAのスクリーンサイズにする時、Linuxではps2psを通すことが必要でした。(windowsでは不要でした)
> powerdotのオプションはpaper=screenです。
(snip)
>なお、ps2psを通さない例はフォントが埋め込まれていますが、両端が切れています。


「両端が切れる」というのが再現できません。私の所では特に ps2ps を通さずとも、
普通にページのアスペクト比が 4:3 のPDF が得られています。(添付)

あと複数ファイルは zip でまとめれば添付できます。
tat tsan への返信

Re: ps2ps使用時にIPAフォント埋め込む方法?

- たきやま たけし の投稿
お手数おかけしています。

ps,pdf添付します。
psファイルはすべて同じ様に見えるのですがpdfにすると変わってしまいます。

下記のプロパティに記すように
psからpdfに変換するモノが変わっているのですが、
このへんの影響でしょうか?

調べるところがありましたら、お教えください。よろしくお願いします。

プロパティは以下のとおりです
(A)dvips(k) 5.992 Copyright 2012 Radical Eye Software,PS-Adobe-2.0, 279 x 210 ミリ
(C)GPL Ghostscript 905 (ps2write),PS-Adobe-3.0, 279 x 210 ミリ

(B)dvips(k) 5.992 Copyright 2012 Radical Eye Software, PS-Adobe-2.0, 279 x 210 ミリ

(D)GPL Ghostscript 905 (ps2write),279.4 x 209.5mm 
(E)LaTeX with powerdot class,dvips + GPL Ghostscript 905),209.5x209.5mm

platex->dvipsは共通です。

ps2psを通すまえ
(A)presen_pdot_test_w_ps2ps-before.ps

(B)presen_pdot_test_wo_ps2ps.ps

ps2psを通したあと
(C)presen_pdot_test_w_ps2ps-after.ps

ps2pdf
(D)presen_pdot_test_w_ps2ps-after.pdf
(E)presen_pdot_test_wo_ps2ps-after.pdf

たきやま たけし への返信

Re: ps2ps使用時にIPAフォント埋め込む方法?

- tat tsan の投稿
dvips の生成する ps が、landscape 指定を反映していませんね。
私の所では反映されるものが生成されます。(添付)

違いの生じる原因が

(a) TeXの側にあるのか
(b) dvipsの側にあるのか

を見極めねばなりませんね。(a)については、とりあえず dvi を見せてください。

私の所のdebian機は、そもそも使用していない機械なので、純粋にdebianの配布物のみが
入っており、TeXに関しては私の個人的な設定などは一切ありません。
(たきやまさんと同一にするためにbkmk2uni を入れただけです)

もしもたきやまさんのTeX環境が長く使って来られたものなら、
~/texmf やら ~/.texmf-config やら ~/.texmf-var やら
に古い設定が残っている可能性がありますので、いったん別所に退避して試してみると
よいかも知れません。


あ、それから目指すべきは「ps2psを使用してIPAexを埋め込む」よりも
「dvipsに正しいpsを生成させる」です。ps2psを使用したら、フォントはbitmap化
されてしまうからです。それでも綺麗に表示したければ、dvipsの解像度指定を
-D 600 から -D 8000 に上げるくらいしかありません。
tat tsan への返信

Re:dvipsに正しいpsを生成させる方法?

- たきやま たけし の投稿
お手数おかけしています。#タイトル変えましたが、スレッド続けます。

~/texmf, ~/.texmf-config, ~/.texmf-var を退避してからコンパイル生成した
log, dvi, ps を添付します。

調べるところがありましたらご指摘ください
#bkmk2niを外しても同様でした

たきやま たけし への返信

Re:dvipsに正しいpsを生成させる方法?

- tat tsan の投稿
dvi は私の所で生成されるものと同一です。たきやまさんの dvi を私の所で処理すれば
正しい ps が生成されます。
dvips のバージョンも同一で、 texlive-binaries のバイナリだと思われます。

考えられることは、tetex など 古い dvips の ヘッダファイル が /usr/share/texmf
下のどこかに残っていたりすることです。

ただし /usr/share/texmf 自体は debian ではまだ使用しており、
/usr/share/texlive/texmf/web2c/texmf.cnf にも /usr/share/texmf
を読む設定があります。私の所も /usr/share/texmf/dvips/config/ の下が
空というわけではありません。

単に apt-get remove しただけでは古いファイルが残ったままになることもあるので、
apt-get purge tetex-base tetex-bin
などで古いファイルをパージ する必要があるかも知れません。
tat tsan への返信

Re:dvipsに正しいpsを生成させる方法?

- Akira Kakuto の投稿
export DVIPSDEBUG=1
のように,環境変数 DVIPSDEBUG を定義しておくと,
dvips がどの config.ps を読むか,どの map ファイルを
読むか等が表示されます。
tat tsan への返信

Re:dvipsに正しいpsを生成させる方法?

- たきやま たけし の投稿
お世話になります。

別マシンなのですが、ほぼ同環境のマシンで試行しました。

apt-getで削除したファイルはなかったようなのですが、pdfに違いが出ました。
生成したpdfはスクリーンサイズは変わったのですが、
フォントのエンコードが変わりました。

また、角藤先生からご助言頂いたDVIPSDEBUG=1としてみたのですが、
コンソール画面ではよくわかりませんでした::使い方間違ってますか?


添付ファイル

aptget-purge-log  : apt-get purgeした時の画面

apt-get前、ps2psを通さない:: p-bef-apt-wo-ps2ps.{dvi/ps/pdf}

apt-get後:: p-aft-apt.{dvi/ps/pdf}

dvips-log: DVIPSDEBUG=1とした場合

#明日からは休日なので、週明けにまたよろしくおねがいします。

たきやま たけし への返信

Re:dvipsに正しいpsを生成させる方法?

- tat tsan の投稿
>> apt-getで削除したファイルはなかったようなのですが、

いえいえ、ログには

>> 以下のパッケージは「削除」されます:
>> > tetex-base*
>> アップグレード: 0 個、新規インストール: 0 個、削除: 1 個、保留: 0 個。

と出ていますから、予想通りtetexのファイル群が存在していたようです。

p-aft-apt.ps を見ると、今度は dvips ではなく pdvips が用いられています。
これも古いです。purge して下さい。

apt-get --purge remove dvipsk-ja

texlive-binaries はインストールされていますか?
texlive の dvips を使うようにして下さい。
tat tsan への返信

Re:[解決]dvipsに正しいpsを生成させる方法?

- たきやま たけし の投稿
お世話になりました。

--purge remove dvipsk-ja

が効いたようです。

まとめたログやdvi,ps,pdfを添付します。
このマシンではプロパティがすべて同じだったので、気持ち悪く、
texliveを全部removeしたあと、再インストールしました。

tat tsanさんのpcもetchからupgradeされたようなのですが、
なぜこのような違いがでたのか、メンテのご助言いただければありがたいです。

積年の不具合を解決できてとても嬉しいです(^_^)
今後共よろしくお願いします。

たきやま たけし への返信

Re:[解決]dvipsに正しいpsを生成させる方法?

- tat tsan の投稿
原因がわかって良かったですね。念のため、tetex 関連のパッケージが
残っていないか、'*tetex*' でチェックを掛けてみて下さい。

何度か書いてますように私はdebianは普段は使っていません。

Debian系 は、OSのメジャーアップグレードのときのように
ソフトウェアの構成が大きく変わるときにも、設定ファイルなどの
変更をディストロが面倒を見てくれることになっています。なので
「一度インストールしてしまえば、あとのメンテが楽」
という評判でした。

しかし少なくとも tetex → texlive に関する限り、「自動的に移行する」
ようなものではなかったはずです。そもそも両者はTeXという点で同じ
でも「異なるディストリビューション」です。Linuxで例えると
「fedora系 → debian系」のような移行であって「squeeze → wheezy」
のような移行ではないわけです。

このため、私はtexliveをインストールする前にtetex関連のパッケージを
ひととおりリストアップしました。その際、
「日本localでのパッチなどは、texlive2012ではほぼ取り込まれている」
という情報がありましたので、tetex外のパッケージになっている
dviware などもリストアップの対象になりました。

ただし「apt-get では --purge を付けないと古いファイルが残ってしまう」
という点は、あとから気付いたように思います。log ファイルなどを見て、
「texliveでこのバージョンが使われるのはおかしい」などと気付いたのは、
あらかじめ tetex 関連のパッケージをリストアップしてあったからです。

なお debian のように元のソフトに変更を多く加えているディストロ
では、ディストロ特有の情報をしっかり集める必要があると思います。
私が自力で気付いた上記のような事柄も、ブログで説明している方が
いらっしゃいます。「wheezy texlive」を日本語限定でググってみて
下さい。
tat tsan への返信

Re:[解決]dvipsに正しいpsを生成させる方法?

- たきやま たけし の投稿
お世話になります。

dpkg -l | grep tetex

で引っかかなければ大丈夫でしょうか?

apt-cache search tetex  ではいくつか引っかかりましたが、
放っておいても大丈夫でしょうか?

# apt-cache search tetex
bnfc - Compiler front-end generator based on Labelled BNF
ptex-buildsupport - Support files for building ASCII pTeX
texlive-base - TeX Live: Essential programs and files
tetex-brev - LaTeX 用ノルウェー語 A4 レタースタイル
texmacs-extra-fonts - 数学テキストエディタ TeXmacs 用の追加フォント

web2c->tetex->texliveと近年大きな流れがあったのは知っていましたが、
こんなに大きく違うとは思ってもいませんでした。
また、platexからpdflatexに変わるなんて記事も見かけますし、
近年のuplatexも????の状態です。

情報あつめて対処していきます。
たきやま たけし への返信

Re:dvipsに正しいpsを生成させる方法?

- Akira Kakuto の投稿
> また、角藤先生からご助言頂いたDVIPSDEBUG=1としてみたのですが、
> コンソール画面ではよくわかりませんでした::使い方間違ってますか?
... ...
> dvips-log: DVIPSDEBUG=1とした場合

そもそも dvips がエラーのため実行されていません。