宽公式上方的垂直空间过多

宽公式上方的垂直空间过多

这个问题与如何防止宽方程式有太大的垂直空间?,但那里的答案并未解决我的情况:

\documentclass[9pt]{beamer}
\usepackage[utf8]{inputenc}

\usefonttheme{serif}

\usepackage{tcolorbox}
\tcbuselibrary{magazine}

\tcbuselibrary{theorems}
\colorlet{greendark}{green!60!black}
\colorlet{bluelight}{blue!35!white}
\newtcbtheorem[number within=section]{mycomp}{Computation}%
{colframe=bluelight!60!greendark,enlarge top by=0.15cm,before
skip=3pt,after skip=6.5pt,fonttitle=\slshape,breakable}{comp}

\begin{document}

\begin{mycomp}{Mobius cancellation $G=\log \implies g = \frac 1t$}{mobiuscancellog}
   $$\frac{1}{1/x} = x\sum_{d\leq x} \mu(d) \frac {-\log(\frac dx)}d + O\left(\sum_{d\leq x} \mu(d) (\tfrac{1}{d/x}+1))\right).$$
  \end{mycomp}
  
\begin{mycomp}{Mobius cancellation $G=\log^2 \implies g = \frac {2\log t}{t}$}{mobiuscancellog2}
    $$\frac{2 \log(\frac 1x)}{1/x} = x\sum_{d\leq x} \mu(d) \frac {-\log^2(\frac dx)}d + O\Big(\sum_{d\leq x} \mu(d) \left[\tfrac{\log(\frac dx)}{d/x}+1\right]\Big)$$
   \end{mycomp}

\end{document}

beamer tcolorbox 宽方程式的垂直空间太大

请注意,第二个方程上方的垂直空间比下方更大(比较两张图片中从框顶部到求和符号顶部的距离,以及从求和符号底部到框底部的距离)。

我已确定它必须完全基于宽度:通过删除足够多的第二个方程,它变得更短,它突然看起来又正确了。

有人能提出解决办法吗?

答案1

等式前的垂直空间取决于其长度和前一行的长度。相应的跳过是\abovedisplayskip\abovedisplayshortskip

在你的情况下,设置

\setlength\abovedisplayshortskip{\abovedisplayskip}

为两个方程提供相同的间距。

出现问题的原因是,您用公式(框中的第一个材料)开始一个段落,而 LaTeX 不支持它。您可以在\noindent方程式之前解决它。

\documentclass[9pt]{beamer}
\usepackage[utf8]{inputenc}

\usefonttheme{serif}

\usepackage{tcolorbox}
\tcbuselibrary{magazine}

\tcbuselibrary{theorems}
\colorlet{greendark}{green!60!black}
\colorlet{bluelight}{blue!35!white}
\newtcbtheorem[number within=section]{mycomp}{Computation}%
{colframe=bluelight!60!greendark,enlarge top by=0.15cm,before
skip=3pt,after skip=6.5pt,fonttitle=\slshape,breakable}{comp}

\begin{document}

\begin{mycomp}{Mobius cancellation $G=\log \implies g = \frac 1t$}{mobiuscancellog}
  \noindent
  \[\frac{1}{1/x} = x\sum_{d\leq x} \mu(d) \frac {-\log(\frac dx)}d + O\left(\sum_{d\leq x} \mu(d) (\tfrac{1}{d/x}+1))\right).\]
  \end{mycomp}

\begin{mycomp}{Mobius cancellation $G=\log^2 \implies g = \frac {2\log t}{t}$}{mobiuscancellog2}
  \noindent
  \[\frac{2 \log(\frac 1x)}{1/x} = x\sum_{d\leq x} \mu(d) \frac {-\log^2(\frac dx)}d + O\Big(\sum_{d\leq x} \mu(d) \left[\tfrac{\log(\frac dx)}{d/x}+1\right]\Big)\]
   \end{mycomp}

\end{document}

在此处输入图片描述

$$按照\[...\]Mico 的建议进行了替换。

也可以看看: https://tex.stackexchange.com/a/600078/316068

答案2

当需要显示脱离上下文的单个方程式时,(La)TeX 确实不太方便。

我建议为这种情况定义一个特定的环境,这样您就可以通过设置强制“显示前的行”(实际上并不存在)变短\predisplaysize=0pt

\documentclass[9pt]{beamer}

\usefonttheme{serif}

\usepackage{tcolorbox}
\tcbuselibrary{magazine}
\tcbuselibrary{theorems}

\colorlet{greendark}{green!60!black}
\colorlet{bluelight}{blue!35!white}
\newtcbtheorem[number within=section]{mycomp}{Computation}{
  colframe=bluelight!60!greendark,
  enlarge top by=0.15cm,
  before skip=3pt,
  after skip=6.5pt,
  fonttitle=\slshape,
  breakable
}{comp}

\newenvironment{equation-}{\[}{\predisplaysize=0pt\]}

\begin{document}

\begin{mycomp}{Mobius cancellation $G=\log \implies g = \frac 1t$}{mobiuscancellog}
\begin{equation-}
\frac{1}{1/x} = x\sum_{d\leq x} \mu(d) \frac {-\log(\frac dx)}d
  + O\biggl(\,\sum_{d\leq x} \mu(d) (\tfrac{1}{d/x}+1))\biggr).
\end{equation-}
\end{mycomp}
  
\begin{mycomp}{Mobius cancellation $G=\log^2 \implies g = \frac {2\log t}{t}$}{mobiuscancellog2}
\begin{equation-}
\frac{2 \log(\frac 1x)}{1/x} = x\sum_{d\leq x} \mu(d) \frac {-\log^2(\frac dx)}d 
  + O\biggl(\,\sum_{d\leq x} \mu(d) \Bigl[\tfrac{\log(\frac dx)}{d/x}+1\Bigr]\biggr)
\end{equation-}
\end{mycomp}

\end{document}

请注意我为了避免分隔符尺寸不当和冲突而做出的细微改动(就顶部和底部间距而言,它们并不相关)。

在此处输入图片描述

如果需要进行对齐以作为脱离上下文的显示,请使用alignedinside equation-

相关内容