如何修复在逐项环境中为方程式添加颜色时产生的额外空间?

如何修复在逐项环境中为方程式添加颜色时产生的额外空间?

我正在尝试为我在 itemize 环境中使用的数学着色。以下是我的 MWE。

\documentclass{article}

\usepackage{xcolor}

\begin{document}
\begin{itemize}
\item
    \color{red}
    \[
        y=x^2
    \]
    \color{black}
\item
    Blah blah blah.
\end{itemize}
\end{document}

生成结果:

在此处输入图片描述

如果我删除\color命令,我会得到:

在此处输入图片描述

因此,无论出于什么原因,当我进行颜色处理时,项目符号之间都会有额外的空间。我尝试使用\bgroup\egroup而不是使用 来更改颜色\color{black},但无法消除多余的空间。有人知道如何解决这个问题吗?

编辑:我原来的示例为了简洁而省略了一些内容。下面的代码和图像更能代表我所寻找的用法。特别是,我强烈希望不必在数学模式的外部和内部都设置颜色,因为这样似乎很难解决间距问题。

编辑 2:澄清一下,剩下的问题是等式后的间距比没有颜色时的间距要大。

\documentclass{article}

\usepackage{xcolor}

\begin{document}
\begin{itemize}
\item
    A few things I would like to say.
    \color{red}
    Some text here to say some things about the equation.
    \[
        y=x^2
    \]
    \color{black}
\item
    Blah blah blah.
\end{itemize}
\end{document}

在此处输入图片描述

答案1

正如文档 grfguide 所写:

所有驾驶员都会遇到不同类型的问题。由于某些技术困难,在颜色变化的地方,间距可能会受到影响。

在此处输入图片描述

颜色命令插入内容,在某些地方这非常麻烦。因此,如果可能的话,请尝试在段落中插入颜色变化。例如,在下一个项目中。您还必须调整项目符号的颜色:

\documentclass{article}

\usepackage{xcolor}

\begin{document}
\begin{itemize}
\item
    A few things I would like to say.
    
    \color{red}Some text here to say some things about the equation.
    \[
        y=x^2
    \]
\item[\textcolor{black}{\labelitemi}]
    \leavevmode\color{black}Blah blah blah.
\end{itemize}
\end{document}

grfguide有一个地方有点错误:这个问题不存在全部驱动程序。lualatex您可以使用 luacolor 包,这样您的示例就可以毫无问题地运行:

\documentclass{article}

\usepackage{xcolor}
\usepackage{luacolor}
\begin{document}
\begin{itemize}
\item
    A few things I would like to say.
    \color{red}Some text here to say some things about the equation.
    \[
        y=x^2
    \]\color{black}
\item
    Blah blah blah.
\end{itemize}
\end{document}

答案2

一个简单的解决方案\makebox

\documentclass{article}
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.3pt}
\usepackage{xcolor}

\begin{document}

\begin{itemize}
\item \makebox[\linewidth]{$ \color{red}\displaystyle y=x^2$}
\item Blah blah blah.
\end{itemize}

\end{document}

在此处输入图片描述

编辑:为了获得与相同的结果 \[ \],您可以加载nccmath并使用此代码:

\item \leavevmode\vspace{-\baselineskip}\useshortskip\[ \color{red}y=x^2 \]

相关内容