From 213c91c2ee17c6820f5e222177567188b784f06a Mon Sep 17 00:00:00 2001 From: Hironori Kitagawa Date: Sun, 30 Apr 2017 20:40:16 +0900 Subject: [PATCH] =?utf8?q?lltjext.sty:=20plext.sty=20=E3=81=AE=E6=8C=99?= =?utf8?q?=E5=8B=95=E5=A4=89=E6=9B=B4=E3=81=AF=20parbox=20=E3=81=AE?= =?utf8?q?=E3=81=BF=E3=81=A0=E3=81=A3=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/lltjext.sty | 79 ++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 56 insertions(+), 23 deletions(-) diff --git a/src/lltjext.sty b/src/lltjext.sty index 563d6f7..a3bd9bc 100644 --- a/src/lltjext.sty +++ b/src/lltjext.sty @@ -78,36 +78,35 @@ % \begin{itemize} % \item 周囲の組方向が横組かつ組方向が||, ||指定の場合 % \begin{itemize} -% \item |[t]|指定のとき、\\一行目のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) -% \item |[c]|指定のとき、\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) -% \item |[b]|指定のとき、\\最終行のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) +% \item |[t]|指定のとき\\一行目のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) +% \item |[c]|指定のとき\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\最終行のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) % \end{itemize} % \item 周囲の組方向が横組かつ組方向が||指定の場合 % \begin{itemize} -% \item |[t]|指定のとき\\箱の上端が周囲の和文文字の高さと一致 -% \item |[c]|指定のとき、\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) -% \item |[b]|指定のとき\\箱の下端が周囲の和文文字の深さと一致 +% \item |[t]|指定のとき\\表組の上端が周囲の和文ベースラインと一致 +% \item |[c]|指定のとき\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\表組の下端が周囲の和文ベースラインと一致 % \end{itemize} % \item 周囲の組方向が縦組かつ組方向が||指定の場合 % \begin{itemize} -% \item |[t]|指定のとき\\箱の上端が周囲の和文文字の高さと一致 -% \item |[c]|指定のとき、\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) -% \item |[b]|指定のとき\\箱の下端が周囲の和文文字の深さと一致 +% \item |[t]|指定のとき\\表組の上端が周囲の和文ベースラインと一致 +% \item |[c]|指定のとき\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\表組の下端が周囲の和文ベースラインと一致 % \end{itemize} % \item 周囲の組方向が縦組かつ組方向が||指定の場合 % \begin{itemize} -% \item |[t]|指定のとき、\\一行目のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) -% \item |[c]|指定のとき、\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) -% \item |[b]|指定のとき、\\最終行のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) +% \item |[t]|指定のとき\\一行目のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) +% \item |[c]|指定のとき\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\最終行のベースラインが周囲のそれと一致(罫線の場合は和文ベースラインの位置) % \end{itemize} % \item 周囲の組方向が縦組かつ組方向が||指定の場合 % [TODO] 未定! %^^A \begin{itemize} -%^^A \item |[t]|指定のとき、\\表組の上端が周囲の和文ベースラインと一致 -%^^A \item |[c]|指定のとき、\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) -%^^A \item |[b]|指定のとき、\\表組の下端が周囲の和文ベースラインと一致 +%^^A \item |[t]|指定のとき\\表組の上端が周囲の和文ベースラインと一致 +%^^A \item |[c]|指定のとき\\表組の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +%^^A \item |[b]|指定のとき\\表組の下端が周囲の和文ベースラインと一致 %^^A \end{itemize} -% \end{itemize} \def\fork@array@option<#1>[#2]{% \ifnum\ltjgetparameter{direction}=4 % yoko \ifx\box@dir\yoko @@ -123,10 +122,10 @@ \fi\fi \else \if #2t\relax - \def\@begin@alignbox{\raise\cht\vtop\bgroup\kern\z@\vbox}% + \def\@begin@alignbox{\vtop\bgroup\kern\z@\vbox}% \let\@end@alignbox\egroup \else\if #2b\relax - \def\@begin@alignbox{\lower\cdp\vbox\bgroup\vbox}% + \def\@begin@alignbox{\vbox\bgroup\vbox}% \def\@end@alignbox{\kern\z@\egroup}% \else \let\@begin@alignbox\vcenter @@ -136,10 +135,10 @@ \else\ifnum\ltjgetparameter{direction}=1 % dtou \ifx\box@dir\yoko \if #2t\relax - \def\@begin@alignbox{\raise\cht\vtop\bgroup\kern\z@\vbox}% + \def\@begin@alignbox{\vtop\bgroup\kern\z@\vbox}% \let\@end@alignbox\egroup \else\if #2b\relax - \def\@begin@alignbox{\lower\cdp\vbox\bgroup\vbox}% + \def\@begin@alignbox{\vbox\bgroup\vbox}% \def\@end@alignbox{\kern\z@\egroup}% \else \let\@begin@alignbox\vcenter @@ -171,10 +170,10 @@ \else % tate, utod \ifx\box@dir\yoko \if #2t\relax - \def\@begin@alignbox{\raise\cht\vtop\bgroup\kern\z@\vbox}% + \def\@begin@alignbox{\vtop\bgroup\kern\z@\vbox}% \let\@end@alignbox\egroup \else\if #2b\relax - \def\@begin@alignbox{\lower\cdp\vbox\bgroup\vbox}% + \def\@begin@alignbox{\vbox\bgroup\vbox}% \def\@end@alignbox{\kern\z@\egroup}% \else \let\@begin@alignbox\vcenter @@ -415,6 +414,41 @@ \let\hss\vss\let\unhbox\unvbox \csname bm@#4\endcsname}\@end@parbox \@end@tempboxa} +% コミュニティ版では、アスキー版で不自然だった|\parbox|の箱と +% 周囲の本文との揃え位置を修正し、以下のように設計しました。 +% \begin{itemize} +% \item 周囲の組方向が横組かつ組方向が||, ||指定の場合 +% \begin{itemize} +% \item |[t]|指定のとき\\一行目のベースラインが周囲のそれと一致 +% \item |[c]|指定のとき\\箱の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\最終行のベースラインが周囲のそれと一致 +% \end{itemize} +% \item 周囲の組方向が横組かつ組方向が||指定の場合 +% \begin{itemize} +% \item |[t]|指定のとき\\箱の上端が周囲の和文文字の高さと一致 +% \item |[c]|指定のとき\\箱の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\箱の下端が周囲の和文文字の深さと一致 +% \end{itemize} +% \item 周囲の組方向が縦組かつ組方向が||指定の場合 +% \begin{itemize} +% \item |[t]|指定のとき\\箱の上端が周囲の和文文字の高さと一致 +% \item |[c]|指定のとき\\箱の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\箱の下端が周囲の和文文字の深さと一致 +% \end{itemize} +% \item 周囲の組方向が縦組かつ組方向が||指定の場合 +% \begin{itemize} +% \item |[t]|指定のとき\\一行目のベースラインが周囲のそれと一致 +% \item |[c]|指定のとき\\箱の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +% \item |[b]|指定のとき\\最終行のベースラインが周囲のそれと一致 +% \end{itemize} +% \item 周囲の組方向が縦組かつ組方向が||指定の場合 +% [TODO] 未定! +%^^A \begin{itemize} +%^^A \item |[t]|指定のとき\\箱の上端が周囲の和文ベースラインと一致 +%^^A \item |[c]|指定のとき\\箱の中心が周囲の数式軸を通る(欧文ベースラインシフトの影響下) +%^^A \item |[b]|指定のとき\\箱の下端が周囲の和文ベースラインと一致 +%^^A \end{itemize} +% \end{itemize} \def\fork@parbox@option<#1>[#2]{% \let\box@dir\relax \if #1z\relax @@ -436,7 +470,6 @@ \else \let\box@dir\utod \fi \fi -%%% now almost same as \fork@array@option \ifnum\ltjgetparameter{direction}=4 % yoko \ifx\box@dir\yoko \if #2t\relax -- 2.11.0