获取希伯来字母的高度和深度

获取希伯来字母的高度和深度

我见过这里在定义文档上对象之间的垂直距离时使用加减字母X以及字母的高度和深度。p

我的文档是希伯来语,我想计算一些希伯来语字母的长度。我尝试这样做

\newlength{\htX}    \settoheight{\htX}{ל}

然后在文档中打印长度

\the\htX

但我得到的分数是 0.0pt。你知道为什么吗?

平均能量损失

\documentclass{book}
\usepackage{fontspec}
\newfontfamily\englishfont{Times New Roman}[Script=Latin,Language=English]
\newfontfamily\hebrewfont{Arial}[Script=Hebrew]
\setmathrm{Latin Modern Roman}

\newlength{\htX}    \settoheight{\htX}{ל}
\newlength{\dtp}    \settodepth{\dtp}{ן}

\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\begin{document}
\the\htX~\the\dtp
\end{document}

答案1

感谢 Jasper Habicht 和 Qrrbrbirlbel 的评论。可以使用AtBeginDocument

\documentclass{book}
\AtBeginDocument{%
  \newlength{\htX}   \settoheight{\htX}{\hebrewfont ל}%
  \newlength{\dtp}   \settodepth{\dtp}{\hebrewfont ן}%
}
\usepackage{fontspec}
\newfontfamily\englishfont{Times New Roman}[Script=Latin,Language=English]
\newfontfamily\hebrewfont{Arial}[Script=Hebrew]
\setmathrm{Latin Modern Roman}

\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\begin{document}
\the\htX~\the\dtp

\framebox[\dimexpr 0.25in+2\htX+6\dtp]{\strut}
\end{document}

相关内容