平衡点


2007/11/15

_ etch で dvips -> ps2pdfwr

とりあえず TeX環境の構築が終わったんで, dvi から pdf への変換についてまとめ. Debian の流儀として正攻法では無いかもしれないけど, こうやったらやりたいことできたよ, という話.

やりたい事は以下の二つ. dvi ファイルから...

  • 任意のフォントを埋め込んだ PDF 作成
  • フォントを埋め込まない PDF 作成

方法は

  • dvipdfmx を使って
  • dvips -> ps2pdfwr を使って

の二種類(prosper とか pstrick は dvips 使わないと駄目だし).

環境は Debian GNU/Linux 4.0(etch) です.

dvips -> ps2pdfwr

導入と初期設定

gs-esp を使いましょう(gs-afpl, gs-gpl は試してません). あと, cmap-adobe-japan1 を install して, optional と extra も選択しておきます.

$ sudo aptitude install gs-esp gs-cjk-resource \
       cmap-adobe-japan1
$ sudo dpkg-reconfigure cmap-adobe-japan1
... 全部選択する.

あとはさざなみフォントとか, IPA フォントとか, 埋め込みたいフォントを入れておく.Debian パッケージになっていないフォントの追加方法は

$ sudo -s
# cp hogehoge.ttf /usr/local/share/fonts/
# defoma-hints -c truetype /usr/local/share/fonts/hogehoge.ttf  \
          > /etc/defoma/hints/hogehoge.hints
...
# defoma-font -vt register-all /etc/defoma/hints/hogehoge.hints

とか.

次に, <URL:http://kmuto.jp/d/index.cgi/debian/gs-esp-8151.htm:title>にある通り, 環境変数 GS_LIB でフォントの場所を指定しておく.

# for ps2pdfwr
export GS_LIB=/usr/share/fonts:/usr/local/share/fonts:${HOME}/.fonts

これで

$ platex hogehoge.tex
$ dvips -Ppdf -z hogehoge.dvi
$ ps2pdfwr hogehoge.ps

で, PDF が作成できる.

フォントの埋め込み

この段階で生成された PDF はフォントが埋め込まれている. 埋め込まれるフォントは /var/lib/defoma/gs.d/dirs/fonts/CIDFnmap で設定されている. デフォルト設定は, 多分 defoma の hints ファイルの Priority で決まっているんだろうかと. 埋め込むフォントを変更したい場合には直接修正するか,

$ sudo -s
# dfontmgr

で, [Application] -> [gs] と選んで, Ryumin-Light とか GothicBBB-Medium なんかの Subst を適宜 install すれば良いかと(日本語以外でもできると思う. コマンドラインだと, どうやるんだろう?)

フォントを埋め込まない

完全に <URL:http://www.eaflux.com/replacecjkfonts/:title> 任せで. 埋め込まれたフォントの情報は Adobe Reader の Properity から確認できるので, これを Ryumin-Light とか GothicBBB-Medium に戻すように, replacecjkfonts.pl を弄っておくと良い.

...NeverEmbed ってできるのかしら?

dvipdfmx

導入と初期設定

導入は

$ sudo aptitude install dvipdfmx \
       cmap-adobe-japan1(install してないなら)

jarticle.cls を使用している場合は, この段階で PDF へ変換可能. 奥村先生の jsarticle.cls を使用している場合は, /etc/texmf/dvipdfm/jis-cjk.map が読み込まれるように設定する必要があった.

/etc/texmf/dvipdfm/dvipdfmx.cfg の末尾に

f jis-cjk.map

を追加すると PDF に変換できる. この段階ではフォントは埋め込まれていないので, これで良いならこのまま.

フォントの埋め込み

フォントを埋め込む際には /etc/texmf/dvipdfm/{jis-cjk.map|cid-x.map} 内の rml とか gbm にフォントファイル名(拡張子無し) を記述しておく.例えば ipa(m|g) を使う場合には

$ sudo vi /etc/texmf/dvipdfm/jis-cjk.map
%% for jis fonts of ptex-jisfonts
%rml-jis H Ryumin-Light
rml-jis H :0:ipam
%gbm-jis H GothicBBB-Medium
gbm-jis H :0:ipag

とか

$ sudo vi /etc/texmf/dvipdfm/cid-x.map
 :
%rml H Ryumin-Light
rml H :0:ipam
%gbm H GothicBBB-Medium
gbm H :0:ipag
 :

とかで. :0: はフォントファイルが .ttc だった場合に先頭のフォントを使う, という意味.

まとめ

まとまってません.

man を見たり, ググッたりしつつ, ad hoc になんどか試した結果, 上記の様に落ちつきました. とりあえずこれで良しとすることにします.

...lenny になったら TeXLive になるんだろうか...


2010/11/15

_ anything 入門

遅蒔きながら anything を使い始めました. rubykitch さんのanythingの導入〜3分で使えるanything.el〜を参考に, とりあえず

(require 'anything-startup)

を設定してみたのですが...

  • 以前 zlc を使っていたためか, TAB で補完+候補選択が手に染みついていて戸惑う.
    • TAB の挙動を適当に設定すれば良いのだと思うのだけれど, どうすれば良いかな.
  • AUCTeX で C-c がそのままだと毎度 jLaTeX になってしまう
    • 元々は pLaTeX -> xdvi だった訳ですが, minibuffer では Command(default:ほげほげ) と出ているので, それを使ってくれれば良いのですけどね.

細々設定が必要みたいだな. とりあえず, 現状の設定は以下の通り

;; Debian にはパッケージがあるのでそれを使ってる.
;; パッケージが無い場合には site-lisp 以下を load
(when (not (locate-library "anything"))
  (setq load-path (cons "~/.emacs.d/site-lisp/anything-el/" load-path)))
(require 'anything-startup)
;; アルファベットで候補選択
(setq anything-enable-shortcuts 'alphabet)
;; C-x b で anything
(global-set-key (kbd "C-x b") 'anything)
;; M-y で履歴選択
(global-set-key [(meta y)] 'anything-show-kill-ring)

2011/11/15

_ Thunar なんかから Windows のパーティションを隠す方法

udisk で認識, マウントしているので udev に hide する様に設定しておく

% cat /etc/udev/rules.d/98-hide-ntfs-partition.rules
ENV{ID_FS_UUID}=="NTFS partition の UUID", ENV{UDISKS_PRESENTATION_HIDE} :="1"

UUID は blkid とかで調べると良いかと.


連絡先など
最近の日記
  • 2025/03/06
    • 1. Emacs30 で lookup-el が動かなくなった.
  • 2025/02/20
    • 1. Thinkpad X13 Gen5 を購入した.
  • 2024/12/05
    • 1. 11月末〜12月の出張三昧がようやく一段落
    • 2. サイトの scss を Dart Sass v3.5 に対応
  • 2024/10/09
    • 1. Mastodon でのメール通知, というか Exim4 と Apparmor
  • 2024/06/19
    • 1. WSL2 での gpg-agent, ssh-agent
一覧
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|02|03|04|08|09|10|11|12|
2013|01|02|03|04|05|06|08|09|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|09|10|
2016|02|03|
2017|01|02|03|05|06|07|09|11|12|
2018|03|06|07|10|11|12|
2019|01|02|03|04|05|07|10|12|
2020|01|02|03|04|05|08|09|10|11|12|
2021|01|02|03|05|06|07|08|09|11|12|
2022|01|02|03|04|05|06|08|10|11|12|
2023|02|03|04|06|08|09|11|12|
2024|01|02|03|04|05|06|10|12|
2025|02|03|
Back to Top ▲