当方macOS High Sierra (10.13.4)で、TeX Live 2018を使っています。
Iwonaフォントを使おうとしていろいろ試してみましたが、
下のhoge.texをuplatex+dvipdfmxで処理すると、
「太字」と「ならない」がゴシック体で出力されることが
期待されるのに対し、実際の出力では明朝体で出力されます。
実際、
LaTeX Font Warning: Font shape `JY2/mc/b/n' undefined
(Font) using `JY2/mc/m/n' instead on input line 4.
とログにも表示されます。また、\usepackage{iwona}しなければ
期待通りの出力になることも確認しています。
この問題を回避する方法はありますでしょうか。
===== hoge.tex ====================
\documentclass[uplatex]{jsarticle}
\usepackage{iwona}
\begin{document}
\textbackslash textbfしても \textbf{太字(bold)にならない}。
\end{document}
iwona.styで
\renewcommand{\bfdefault}{b}
となってるのが原因でしょうね
・\textbfは\bfseriesを呼び出す
・\bfseriesは書体を\bfdefaultに変える
・LaTeXのデフォルトの\bfdefaultはbx
・pLaTeXはbxをゴシックに割り当てる
ということで,iwonaを読むと
\textbf
-> b の書体が呼ばれる
-> JY2/mc/b/n が呼ばれる(ここが本来は JY2/mc/bx/n)
-> JY2/mc/b/nは未定義なのでJY2/mc/m/nが呼ばれる
-> 明朝になる
となるのでしょう.ということで
JY2/mc/b/nがJY2/mc/bx/nもしくはそれの本体の
JY2/gt/m/nになればいいので
以下のような感じでどうでしょう.
\documentclass[uplatex]{jsarticle}
\usepackage{iwona}
\DeclareFontShape{JY2}{mc}{b}{n}{<->ssub * gt/m/n}{}
\begin{document}
\textbackslash textbfしても \textbf{太字(bold)にならない}。
\end{document}
\renewcommand{\bfdefault}{b}
となってるのが原因でしょうね
・\textbfは\bfseriesを呼び出す
・\bfseriesは書体を\bfdefaultに変える
・LaTeXのデフォルトの\bfdefaultはbx
・pLaTeXはbxをゴシックに割り当てる
ということで,iwonaを読むと
\textbf
-> b の書体が呼ばれる
-> JY2/mc/b/n が呼ばれる(ここが本来は JY2/mc/bx/n)
-> JY2/mc/b/nは未定義なのでJY2/mc/m/nが呼ばれる
-> 明朝になる
となるのでしょう.ということで
JY2/mc/b/nがJY2/mc/bx/nもしくはそれの本体の
JY2/gt/m/nになればいいので
以下のような感じでどうでしょう.
\documentclass[uplatex]{jsarticle}
\usepackage{iwona}
\DeclareFontShape{JY2}{mc}{b}{n}{<->ssub * gt/m/n}{}
\begin{document}
\textbackslash textbfしても \textbf{太字(bold)にならない}。
\end{document}
下記のように、とりあえず、iwonaパッケージを読み込んだ直後に
\renewcommand{\bfdefault}{bx}
を記述してください
(たぶん、普通に本文書体を OT1 で iwona regular を使うだけだったら、これでOKなはず;後述)。
\documentclass[uplatex]{jsarticle}
\usepackage{iwona}\renewcommand{\bfdefault}{bx}%%reset \bfdefault
\begin{document}
\textbackslash textbfしても \textbf{太字(bold)にならない}。
\end{document}
この現象がおこる理由は、iwonaパッケージが \bfdefault を b に上書きしちゃったことです。
(でも、OT1 や OML など fd には、bx の定義から ssub で b にしちゃっているから、
なんで iwona.sty でわざわざ \bfdefault を b にしちゃうのか、パッと見でその意図が不明です。
iwonaパッケージのドキュメントとかに何か書いてあるかもです(知りませんが…)。)
\renewcommand{\bfdefault}{bx}
を記述してください
(たぶん、普通に本文書体を OT1 で iwona regular を使うだけだったら、これでOKなはず;後述)。
\documentclass[uplatex]{jsarticle}
\usepackage{iwona}\renewcommand{\bfdefault}{bx}%%reset \bfdefault
\begin{document}
\textbackslash textbfしても \textbf{太字(bold)にならない}。
\end{document}
この現象がおこる理由は、iwonaパッケージが \bfdefault を b に上書きしちゃったことです。
(でも、OT1 や OML など fd には、bx の定義から ssub で b にしちゃっているから、
なんで iwona.sty でわざわざ \bfdefault を b にしちゃうのか、パッと見でその意図が不明です。
iwonaパッケージのドキュメントとかに何か書いてあるかもです(知りませんが…)。)
お二方から返信があったのでどちらも試してみました。
\renewcommand{\bfdefault}{bx}
とすれば意図したとおりの出力が得られました。
\DeclareFontShape{JY2}{mc}{b}{n}{<->ssub*mc/bx/n}{}
としても(‘<->’が抜けていたようなので補いました)
意図したとおりの出力が得られましたが、otf.styを
読み込むと、
{\gtfamily{\mdseries 中字}{\bfseries 太字}}
で同じ太さの文字が表示されました。
ということで、
\renewcommand{\bfdefault}{bx}
を使うことにします。
お二方とも返信ありがとうございました。
\renewcommand{\bfdefault}{bx}
とすれば意図したとおりの出力が得られました。
\DeclareFontShape{JY2}{mc}{b}{n}{<->ssub*mc/bx/n}{}
としても(‘<->’が抜けていたようなので補いました)
意図したとおりの出力が得られましたが、otf.styを
読み込むと、
{\gtfamily{\mdseries 中字}{\bfseries 太字}}
で同じ太さの文字が表示されました。
ということで、
\renewcommand{\bfdefault}{bx}
を使うことにします。
お二方とも返信ありがとうございました。
> 「欧文 LaTeX で通常 \bfdefault は bx である」
という設計になっている理由は,あくまで個人的推測ですが,
Knuth の Computer Modern の METAFONT ソースが
・b → cmb10.mf
・bx → cmbx{5,6,7,8,9,10,12}.mf
と,bx の方が充実しているからなんじゃないかと思っています。
https://ctan.org/tex-archive/fonts/cm/mf
ここの README にも(本人が書いたものだと私は思います)
> The bold fonts cmbx5--cmbx12 have similar vertical dimensions
> [中略]
> they use bolder pen strokes, of course, and they are rather more extended.
> Font cmb10 is like cmbx10 except not extended
のように,b よりも bx の方がメインに扱われていますし。
という設計になっている理由は,あくまで個人的推測ですが,
Knuth の Computer Modern の METAFONT ソースが
・b → cmb10.mf
・bx → cmbx{5,6,7,8,9,10,12}.mf
と,bx の方が充実しているからなんじゃないかと思っています。
https://ctan.org/tex-archive/fonts/cm/mf
ここの README にも(本人が書いたものだと私は思います)
> The bold fonts cmbx5--cmbx12 have similar vertical dimensions
> [中略]
> they use bolder pen strokes, of course, and they are rather more extended.
> Font cmb10 is like cmbx10 except not extended
のように,b よりも bx の方がメインに扱われていますし。