使用,如何确定结果文本的宽度?这是一个不起作用的 MWE microtype
:\textls
\documentclass{article}
\usepackage[log-functions=false]{expl3}
\usepackage[log-declarations=false]{xparse}
\usepackage[stretch=10]{microtype}
\ExplSyntaxOn
\newcommand{\cftpartfont}[1]{\normalfont\textls*[80]{\uppercase{#1}}}
\newlength{\lswidth}
\settowidth{\lswidth}{\cftpartfont{VIII\space}}
\typeout{\the\lswidth}
\settowidth{\lswidth}{VIII\space}
\typeout{\the\lswidth}
\hbox_set:Nn \l_tmpa_box { \cftpartfont{VIII\space} }
\typeout{\the\box_wd:N \l_tmpa_box}
\show\show
\begin{document}
\end{document}
输出为:
22.22pt
22.22pt
22.22pt
> \show=\show.
该怎么办?
答案1
25.28894pt
22.22226pt
25.28894pt
只需移动\begin{document}
:
\documentclass{article}
\usepackage[log-functions=false]{expl3}
\usepackage[log-declarations=false]{xparse}
\usepackage[stretch=10]{microtype}
\begin{document}
\ExplSyntaxOn
\newcommand{\cftpartfont}[1]{\normalfont\textls*[80]{\uppercase{#1}}}
\newlength{\lswidth}
\settowidth{\lswidth}{\cftpartfont{VIII\space}}
\typeout{\the\lswidth}
\settowidth{\lswidth}{VIII\space}
\typeout{\the\lswidth}
\hbox_set:Nn \l_tmpa_box { \cftpartfont{VIII\space} }
\typeout{\the\box_wd:N \l_tmpa_box}
\show\show
\end{document}