ベースライン補正が 0 でないときの tabular 環境の垂直位置について
考えていたのですが,その過程で
文中数式モードでは自動的に全体にベースライン補正がかかり,
その結果 $\hbox{漢字ABC}$ では「漢字」に一重,
「ABC」に二重にベースライン補正が適用される
という pTeX の仕様について疑問を持ったので,実験してみました.
(参考:qa: 54286)
手元で「数式中の explicit なボックスは,
自動で入るベースライン補正を打ち消すように垂直位置をずらす」
というパッチを作り,次のソースで試してみました.
添付ファイルの黒が現行の pTeX の挙動,薄青がパッチ後の挙動です.
%%%%%%%%
\ifdefined\enablecjktoken
\documentclass[uplatex]{jsarticle}
\else
\documentclass{jsarticle}
\fi
\usepackage{amsmath}
\textwidth300pt
\begin{document}
\ybaselineshift=10pt
\noautoxspacing
\def\R{\vrule height 0.4pt depth 0pt width 10pt}
あいうえおABC$%
\hbox{漢X\R}\vbox{\hsize=3em 字Y\hss}\R xyz\frac{\text{漢X\R}\R213}{s}
\displaystyle\int_{0}^{\text{漢X\R}\R1}
$\vrule height 50pt depth 40pt
qa:54286
\begin{equation}
y = f(x)= x^2+2x+1 + \int_{0}^{\pi} \frac{1+tx^2}{1-t^2}\,dt
\end{equation}
\end{document}
%%%%%%%%
「地の数式」中に配置したボックスについては良さそうに
思えますが,逆に,分数や添字中に \hbox を配置した場合は
欧文のベースラインが揃わなくなっています.
(折衷案としては,「\textstyle, \displaystyle のみ打ち消す」?)
何か感想や意見などがありましたらお願い致します.
数式中のボックスとベースライン補正
- 北川 弘典 の投稿