質問用フォーラムです。ご質問の前に質問のしかたをご覧ください。

W32TeX の dvips における和文フォントの指定

- ut の投稿

  platex>dvips>ps2pdfでのIPAex埋め込み
  2015年 09月 09日(水曜日) 16:16
  https://okumuralab.org/tex/mod/forum/discuss.php?d=1658

というトピックを拝読して、私自身は普段 dvips は使ってないですし、PDF/A にするかどうかということも別にして、W32TeX の dvips で和文フォントを指定したり、それを Ghostscript で表示したり pdf にするにはどうするのかというのを確認してみました。

(「そんなのチラシの裏にでも書いておけ」 と言われそうですが、間違いは指摘していただければと思って、こちらに書かせていただきます)

参照したのは、

  ・ DVIPDFM-W32.txt and dvipsk-w32.txt
   2013年 06月 12日(水曜日) 21:38 - Akira Kakuto の投稿
   https://okumuralab.org/tex/mod/forum/discuss.php?d=1035

  ・ A new program: ps2otfps.exe
   2013年 09月 30日(月曜日) 14:06 - Akira Kakuto の投稿
   https://okumuralab.org/tex/mod/forum/discuss.php?d=1110

  ・ TeX Wiki: Ghostscript/Windows
   http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Ghostscript%2FWindows
   Last-modified: 2015-07-07 (火) 21:56:40 (65d)

で、これらによりますと、

  ・ [2013/09/30] 以降の W32TeX であって、

  ・ 使用したい和文フォントが OpenType のヒラギノ、小塚、モリサワのいずれかの場合、

には、以下のようにすればいいようです。

(1) 当該 OpenType フォントのコピー

使いたい和文フォントを Ghostscript の Resource/CIDFont/ フォルダにコピーします。その際、ファイル名を PostScript 名にリネームして、拡張子は取り除いておきます。

(2) map 指定の追加

dvips 実行時に、和文用の map の指定を追加します。例えば、filename.dvi があって、これを、和文フォントとしてヒラギノを指定した PostScript に変換したい場合には、

  dvips -u+hiragino-ps.map filename

とすると、/HiraMinPro-W3-H や /HiraKakuPro-W6-H という名前が書き込まれた filename.ps ができます。

dvips 用の和文 map としては、hiraginopron04-ps, hiraginopron-ps, hiragino-ps; kozukapr6n04-ps, kozukapr6n-ps, kozuka-ps; morisawapr6n04-ps, morisawapr6n-ps, morisawa-ps; standard04-ps, standard-ps が用意されています。

(3) ps2otfps.exe を通す

(2) で出来た filename.ps には、/HiraMinPro-W3-H のようにフォント名が書き込まれていますが、これは “/CIDFont-CMap” の形になっているので、/CIDFont と /CMap に分解する必要があります。

Ghostscript の Resource/Font/ フォルダに “HiraMinPro-W3-H” というファイルが既にあって、その中で、“/HiraMinPro-W3-H” は “/HiraMinPro-W3” と “/H” に分解されるということが書かれていれば、(2) の filename.ps は Ghostscript でそのまま表示したり pdf に変換したり出来ます。

でも、使用する和文フォントとすべての CMap との組み合わせについて、Resource/Font/ フォルダに必要なファイルをあらかじめ用意しておくのは大変です。

ここで、「“/HiraMinPro-W3-H” は “/HiraMinPro-W3” と “/H” に分解される」 という指示は、HiraMinPro-W3-H というファイルの中でなく、filename.ps の中に直接書かれていてもよくて、[2013/09/30] 以降の W32TeX に含まれている ps2otfps.exe というプログラムが、それをやってくれます。

なので、(2) の filename.ps を ps2otfps.exe で処理して、

  ps2otfps filename.ps new_filename.ps

のようにしますと、new_filename.ps には、「“/HiraMinPro-W3-H” は “/HiraMinPro-W3” と “/H” に分解される」 という指示が追加されます。

これで、この new_filename.ps は、Ghostscript で表示すると和文がヒラギノで表示され、ps2pdf で pdf にすると、ヒラギノが埋め込まれます。

ちなみに、

  ・ 手元の W32TeX が古くて和文用の map や ps2otfps.exe がない場合

には、map は dvipsk-w32.tar.xz をもらってくればその中に入っています。dvipsk-w32.tar.xz には ps2otfps.exe も入っていますが、dll が古くて使えないので、上掲の、

  ・ A new program: ps2otfps.exe
   2013年 09月 30日(月曜日) 14:06 - Akira Kakuto の投稿
   https://okumuralab.org/tex/mod/forum/discuss.php?d=1110

を参考に、%%BeginFont: ~ %%EndFont の部分を直接書き足したらうまくいきました。

また、

  ・ 指定したい和文フォントが IPA や IPAex などの TrueTypeフォントの場合

には、Ghostscript の lib/cidfmap というファイルの “% Substitutions” や “% Aliases” の部分に当該エントリを追加したら、とりあえずうまくいったように見えます。

IPA や IPAex は 明朝・ゴシック各一書体なので Aliases だけで済むかと思いますが、もしも map を自作するのであれば、TeX Live 用の jfontmaps というパッケージを CTAN からもらってくると参考になります (パッケージに収録されている map は dvipdfmx 用のものですが、PostScript 名も記載されています.W32TeX 収録の dvips 用の map 群も、これらが元になっているようです)。

pdfpages on (u)platex

- Akira Kakuto の投稿
pdfpages 最新版が release されました。dvi モードでは
将来のためドライバ dvips もサポートしたいということで,
dvipdfmx の場合は,

%
% (u)platex + dvipdfmx
%
\documentclass[dvipdfmx]{jsarticle}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={3,5,7},lastpage=9]{foo.pdf}
\end{document}

のように class option を dvipdfmx にしてくれということです。

%
% (u)platex + dvipdfmx
%
\documentclass{jsarticle}
\usepackage[dvipdfmx]{pdfpages}
\begin{document}
\includepdf[pages={3,5,7},lastpage=9]{foo.pdf}
\end{document}

でも動作しますが,graphics package に関して warning が出ます。

%
% (u)platex
%
\documentclass{jsarticle}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={3,5,7},lastpage=9]{foo.pdf}
\end{document}

とした場合は,将来のための dvips モードとなります。

lastpage は不要の場合もありますが,指定するようにした
ほうが良いでしょう。(これが pdfTeX の場合とちがって少し不便な点)。

El Capitan

- H.Ogawa の投稿
OS X El Capitanで新しいヒラギノ・フォントの埋込を設定してみました。map filesでは、PostScript Nameを、たとえばヒラギノ明朝w3はHiraginoSerif-W3で登録して、無事に埋め込めました。ところが、そのPDFをAdobe Readerで開いてプロパティでフォント一覧を見ると、HiraMinPro-W3になってます。
正常に埋め込まれているのだから、map filesに登録したPostScript Nameが間違ってはいないはずなので、これはAdobe Readerがフォント名を読み替えてるんでしょうかねぇ。

#現在、久しぶりにUpTeX.appの更新作業中です。
#BasicTeXベースにして、TeXの更新やら
#yosemite/El Capitanでのフォントの設定やらを
#AppleScriptのメニューで実行できる仕様にしてます。
#ディストリビューションの乱立は避けるべきでが、
#TeXLive/MacTeXのインストールや設定は、
#ライトユーザーには少し敷き居が高くなってしまったようなので、
#他の選択肢を一つは用意しようかと。
#だいたいできたのでアイコンのファイルを用意したいのだけど、
#Retinaになってアイコンの作成、面倒になりましたね。

リンク切れ(?)のご報告です。

- 若松 久仁光 の投稿

TeX WiKi 変換ツール 

LaTeX←→HTML/XHTML/XML/MathML/EPUB のサイト一覧での

アクセスのリンク切れ(?)のご報告です。


クリックしても接続出来ません。


LXir(502 Bad Gateway)

LaTeX to HTML (MathML) 変換ツール "てぃ→えぃち"  (Server not found)

TeX2page (このドメインを売り出し中です)


訂正もしくは削除をお願いします。若松久仁光拝


追記

TeX WiKi Latexmk での

リンク

LaTeX on SublimeText 2 も同様です。

TeXStudioのコンパイル

- ジョルジュ サンド の投稿
現在、40-50ページほどの論文(日本語)をTeXStudioで書いています。ベースとなる.texファイルに目次、表・図の目次、\includeで各chapterなどを入れています。パッケージや図が多いのもあるのかもしれませんが、コンパイルがあまりにも遅すぎて困っております。

以下に使用しているパッケージは以下の通りです。
\usepackage{amsmath,amssymb}
\usepackage{bm}
\usepackage[dvipdfmx]{graphicx,color}
\usepackage{verbatim}
\usepackage{wrapfig}
\usepackage{ascmac}
\usepackage{makeidx}
\usepackage{multirow}
\usepackage{multicol}
\newcommand{\acknowledgmentname}{Acknowledgment}
\usepackage{times}
\usepackage{array}
\usepackage{udline}
\usepackage[tone,extra,safe]{tipa}
\usepackage{url}
\usepackage{lscape}
\usepackage{booktabs}
\usepackage{multirow}
\usepackage[dvipdfmx,svgnames]{xcolor}
\usepackage{tikz}
\usepackage{tikz-cd}
\usetikzlibrary{automata}
\usetikzlibrary{intersections}
\usepackage{slashbox}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{colortbl}
\usepackage{textcomp}

LuaTeX-ja 20150906.0

- 北川 弘典 の投稿
LuaTeX-ja 20150906.0 を出しました.

・\fontfamily の動作を,pLaTeX におけるそれと近づけた.
 marvosym.sty との共存問題がこれで解決.
・luatexja-fontspec, luatexja-preset における「未知の」オプションを
 そのまま fontspec に渡すようにした.
  \usepackage[no-math,scale=1.2, hiragino-pron]{luatexja-preset}
 のように記述することが可能に.
 (上の例では,no-math は fontspec に,scale=1.2 は luatexja-fontspec に渡る)
・横組・縦組専用仮名などを使う際に,ToUnicodeを適宜補うようにした.
・新しい unicode-math パッケージに対応.

「文字範囲 8」も標準で欧文扱いに,という大きな変更をしました.
・文字コードが 0--255 の文字は標準で全て欧文扱いとなるので,
 従来の 8 ビットフォントで問題が起こりにくくなっています.
・一方,U+0080--U+00FF 内にある「¶」「§」「×」などは
 欧文扱いなので,何のパッケージも読み込まない状態だと
 ソース中に直接記述しても出力されません.
 fontspec(和文側の機能もいるなら luatexja-fontspec)
 パッケージの読み込みを推奨します.
・上記の記号を和文扱いで出力したい場合,
 \ltjjachar`¶ のようにして行うことが出来ます.

TeXユーザの集い2015開催のおしらせ

- きえだ ゆうすけ の投稿
TeXユーザの集い2015実行委員会の
木枝祐介と申します.

下記概要のようにTeXユーザの集い2015を開催いたします.

詳細は概要内記載のwebサイトやtwitter上等で順次おしらせしてまいります.

# 概要
日付:2015年11月7日(土)全日予定
会場:東京大学大学院数理科学研究科 大講義室
住所:東京都目黒区駒場3-8-1
主催:TeXユーザの集い2015実行委員会
web:http://texconf15.tumblr.com
問い合せ先:texconf15{\atmark}googlegroups.com
twitter:texconf15(ハッシュタグ:#texconf15)
# 目的
TeXとその周辺に関する知見を共有する
組版・出版とその周辺に関する知見を共有する
ユーザ間交流
# 懇親会
会の終了後,会場近隣での懇親会開催も予定しております.

各種申し込み
各種申し込み受け付けは準備が整いしだい開始します. 準備が整いましたらwebサイトおよびtwitter等でお報せいたします.

***

TeX ユーザの集い 2015 実行委員会(五十音順,*:代表)
木枝祐介*
斎藤新悟(九州大学基幹教育院)
高村正志(東京大学大学院数理科学研究科)
寺田侑祐(鉄緑会)
山本宗宏(株式会社Green Cherry)

luaLaTeXでemath

- liki の投稿

\documentclass[lualatex,ja=standard,fleqn]{bxjsarticle}
\usepackage{emath}
\begin{document}
$ a \neqq b$
\end{document}

これをlualatexでコンパイルするとemath関連ファイルで下記のエラーがでます。

! Text line contains an invalid character.

emath関連ファイル(jis)をすべてutf-8に変換してコンパイルすると、今度は

(c:/texlive/2015/texmf-dist/tex/latex/oberdiek/grfext.sty
(c:/texlive/2015/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty)
! Illegal parameter number in definition of \reserved@b.
<to be read again>
1
l.253 \kv@define@key{Gin}{AppendGraphicsExtensions}
{%
? e
You want to edit file c:/texlive/2015/texmf-dist/tex/latex/oberdiek/grfext.sty a
t line 253

となります。

\documentclass[uplatex,ja=standard,fleqn]{bxjsarticle}

と変更して、uplatexでコンパイルするとemathファイルの文字コードに関係なく、エラーはでずにdvipdfmxでpdfにできます。


TexLive2015です。

emathっていろいろと便利なので、できれば使いたいのです。

TeX Wiki「LaTeX 入門」で使うべき文書クラス

- aminophen の投稿
TeX Wiki の「LaTeX 入門」の件で、相談したいことがあるのでここで書きます。
問題は「いま初心者ユーザにすすめるべき文書クラスはなにか」という点で、既に編集合戦が行われている
ようなのですが、いまのものはなんだか急進的すぎないかと不安です。

6月に(主に私が)LaTeX 入門を改訂していたのですが、そのときは pLaTeX + dvipdfmx で処理することを
想定した構成としました(一時期 upLaTeX ベースになっていたけれど戻しました)。
そのときは「最初の例」のページの“論理構成”を次のようにしました:

1. まず吾輩は猫であるのソースを使い、jsarticle のソースが pLaTeX で正常に処理できることを確認させる
(インストールが成功したかどうかの確認も兼ねている)
2. 次に「新しい環境なら upLaTeX というものが入っています」という説明をし、メリットを解説して推奨
3. それ以降のページでは pLaTeX 用のソースを示すが、upLaTeX が気に入ったならそっちを使ってねと勧める

いま見てみると、bxjsarticle を使って upLaTeX するソースに置き換わっていて、それでいて上の論理構成の
残骸が残っているのでちぐはぐです。

1. まず吾輩は猫であるのソースを使い、bxjsarticle v1.0 用ソースupLaTeX で正常に処理できることを確認させる
2. 次に「新しい環境なら upLaTeX というものが入っています」という説明をし、メリットを解説して推奨
(ここで upLaTeX が入っていない環境への配慮は皆無
3. それ以降のページでは一貫して upLaTeX 用の BXjscls ソースを示す

編集合戦は
「私が書いた pLaTeX → BXjscls で upLaTeX → pLaTeX に戻った → 再び BXjscls で upLaTeX に戻った」
と推移しているようですね。
(しかもタイムスタンプを更新せずこっそりと大胆な改訂をしているっぽい

さすがに BXjscls v1.0 は今月 CTAN に出たばかりで、TeX Live 2014 (v0.3a) ではいま例示されているソースすら
書式が違って通らない(dvipdfmx オプションが NG)という状況です…
これはいくらなんでも急進的すぎると思っています。

いったん「LaTeX 入門」の項目の一部で \documentclass を明示しないように変更してみたのですが、最初の例で
示すべきソースはどうすべきでしょうか。LuaLaTeX を使うのは LuaTeX がまだ beta なので早急でしょうし、
仮に upLaTeX 中心にするにしても pLaTeX しかない環境への配慮は要るでしょう。
「BXjscls が入っていないことがあります」より致命的な
「BXjscls が 2015/08/06 より古ければ通りません」
も重要でしょう?

今の編集合戦を傍観している限り方針が読めないので、困惑しています。
求められれば私が論理構成を含めて改訂することも可能なのですが…(いまのままではちぐはぐですよね?)

質問

- 植木 一郎 の投稿
紙数節約のため両面印刷できる\documentclass{jsbook}で論文を作ったとき、本文の後に\bibliographyで参考文献リストを付けたところ、参考文献リストが必ず奇数ページから始まるため、本文が奇数ページで終わると、本文と参考文献リストの間に白紙の偶数ページができてしまいます。紙も無駄になるし、体裁も悪いので、本文と参考文献リストを続けて印刷するか、少なくとも本文が終わった次の偶数ページから参考文献リストを印刷したいのですが、その方法を教えてください。