与“ulem”对齐的问题

与“ulem”对齐的问题

我通过包定义了下划线样式,在每个字符下ulem添加一个=符号,如下:

\newcommand{\suline}{\bgroup\markoverwith{\raisebox{-0.6em}{=}}\ULon}

添加包后parskip,结果看起来不错:

在此处输入图片描述

但是,当下划线的文本居中或未parskip添加时,符号就=无法与文本正确对齐:

在此处输入图片描述

我该如何修复这个问题?

下面是 MWE。

\documentclass{article}

% \usepackage{parskip}
\renewcommand{\familydefault}{\ttdefault}

\usepackage{ulem}

\newcommand{\suline}{\bgroup\markoverwith{\raisebox{-0.6em}{=}}\ULon}

\begin{document}

\suline{Some text}
\begin{center}
    \suline{Some text}
\end{center}

\end{document}

答案1

这些下划线是用引线制作的。引线彼此对齐。因此,如果您移动文本,它们相对于文本的位置会发生变化:

\documentclass{article}

% \usepackage{parskip}
\renewcommand{\familydefault}{\ttdefault}

\usepackage{ulem}

\newcommand{\suline}{\bgroup\markoverwith{\raisebox{-0.6em}{=}}\ULon}

\begin{document}
\suline{Some text}

\hspace*{3pt}\suline{Some text}

\hspace*{4.5pt}\suline{Some text}

\hspace*{6pt}\suline{Some text}
\end{document}

在此处输入图片描述

如果不需要换行符,则可以将它们放在框中:

\mbox{\suline{Some text}}

\hspace*{3pt}\mbox{\suline{Some text}}

\hspace*{4.5pt}\mbox{\suline{Some text}}

\hspace*{6pt}\mbox{\suline{Some text}}

然后你会得到这个:

在此处输入图片描述

相关内容