集成支架高度不够

集成支架高度不够

考虑以下乳胶代码:

V = \int_0^2(4-x^2)dx = 4\int_0^2dx - \int_0^2x^2dx 
= 4\left[x\right]_0^2 - \left[\frac{x^3}{3}\right]_0^2

注意渲染的第一对括号4\left[x\right]_0^2不够高。看起来一点也不好看。

有没有办法让公式更美观?我希望积分括号的高度始终与积分符号相同。

查看为什么我要求更高的括号,见下面的截图。下标和上标在垂直方向上靠得太近了:

在此处输入图片描述

答案1

您不应该一开始就使用\leftand 。相反,我建议您对两个术语都使用and ,如下所示:\right\bigl[\bigr]

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
V = \int_0^2(4-x^2)\,dx 
= 4\int_0^2\!dx - \int_0^2\!x^2\,dx 
= 4\bigl[x\bigr]_0^2 - \bigl[\tfrac{1}{3}x^3\bigr]_0^2
\]
\end{document}

附录:比较和对比四种不同的被求积函数的排版方式可能会很有启发,如下面屏幕截图中间的四行所示。在我看来,-\bigg尺寸的方括号没有必要那么大;事实上,它们在视觉上占据主导地位,以至于它们所包含的材料被方括号本身所掩盖。- 尺寸的\big方括号可以实现更好的排版平衡;参见屏幕截图中的倒数第二行。在使用单个垂直线的两种解决方案中,我认为 -\Big尺寸的解决方案远优于\bigg- 尺寸的解决方案。换句话说,我完全看不出括号(或竖线)应该与积分符号一样高(排版)的任何理由。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath} % for 'align*' environment and `\tag*` macro
\begin{document}
\begin{align*}
V &= \int_0^2(4-x^2)\,dx = 4\int_0^2\!dx - \int_0^2\!x^2\,dx \\[1ex]
  &= 4\biggl[x\biggr]_0^2 - \biggl[\frac{1}{3}x^3\biggr]_0^2 
     \tag*{pair of \texttt{bigg} square brackets}\\[2ex]
  &= 4 x\biggr\rvert_0^2 - \frac{1}{3} x^3\biggr\rvert_0^2
     \tag*{single \texttt{bigg} vertical bar}\\[2ex]
  &= 4 x\Bigr\rvert_0^2 - \tfrac{1}{3} x^3\Bigr\rvert_0^2
     \tag*{single \texttt{Big} vertical bar}\\[2ex]
  &= 4\bigl[x\bigr]_0^2 - \tfrac{1}{3}\bigl[x^3\bigr]_0^2
     \tag*{pair of \texttt{big} square brackets}\\[1ex]
  &= 4(2-0)-\tfrac{1}{3}(8-0)=\tfrac{1}{3}(24-8)=16/3.
\end{align*}
\end{document}


第二附录,由 OP 的后续评论提示,如果“在数学模式中出现一对括号,[并且] 右括号 [后面跟着] 上标和下标 [项],那么它应该自动使用大括号样式呈现。”

说得客气一点,编写 pdfLaTeX 程序以自动识别[ ... ] _ {...} ^ {...}文档中的所有实例并根据您的偏好进行处理将是一项艰巨的工作。但是,如果您可以运行 LuaLaTeX,您的目标可能会更容易实现:只需设置一个 Lua 函数,利用 Lua 强大的字符串处理功能即可。(主要的语法约定是下标和上标术语必须是括在花括号中。下标和上标项可以为空,即,[x]_{}^{}将被 Lua 函数识别并正确处理。)Lua 函数被分配给某个 Lua 回调,使其像输入上的预处理器一样运行。这样,TeX 本身就永远不会“看到”输入文件中的原始代码;而只会看到包含\biggl[\biggr]指令的内容。

话虽如此,我认为您最好设置一个专用的 LaTeX 宏,例如,,\inteval并编辑数学材料以利用此宏。这种方法的一个好处是,虽然方括号的默认大小是“\bigg , one could provide an option to override the default and to specify a size of\big ,\Big , or\Bigg”。以下屏幕截图和相关代码检查了这两种可能性。无论您采用哪种方式,我建议您在封闭的方括号内添加一些空格填充,并将下标和上标项紧贴在右侧方括号上。

在此处输入图片描述

% !TeX program = lualatex
\documentclass{article}
%% LaTeX macro called "\inteval
\newcommand\inteval[4][bigg]{%
  \csname #1l\endcsname [ \mkern1.5mu #2 \mkern1.5mu%
  \csname #1r\endcsname]_{\mkern-2mu#3}^{\mkern-2mu#4}%
}
\usepackage{amsmath} % for 'align*' environment

\usepackage{luacode}
%% Lua-side code: Set up a Lua function called 'int_eval'
\begin{luacode}
function int_eval ( s ) 
    return ( string.gsub ( s , 
             "(%b[])%s-_%s-(%b{})%s-%^%s-(%b{})" ,
             function ( a, b, c)
               a = "\\biggl[\\mkern1.5mu" .. string.sub(a,2,-2) 
                     .. "\\mkern1.5mu\\biggr]"
               b = "_{\\mkern-2mu" .. string.sub(b,2,-2) .. "}"
               c = "^{\\mkern-2mu" .. string.sub(c,2,-2) .. "}"
               return (a..b..c)
             end ) ) 
end
\end{luacode}
%% TeX-side code: Assign the Lua function to the 'process_input_buffer' 
%% callback to make it operate like a preprocessor on the entire input.
\AtBeginDocument{\directlua{luatexbase.add_to_callback(
    "process_input_buffer", int_eval , "int_eval" )}}

\begin{document}
\begin{align*}
\int_0^2\!(4-x^2)\,dx
  &= 4[x]_{0}^{1} - [\frac{x^3}{3}] _ {0} ^ {2} \\[1ex]
  &= 4\inteval{x}{0}{2} - \inteval{\frac{x^3}{3}}{0}{2}
   = 4\inteval[big]{x}{0}{2} % note use of "big" option
    - \inteval{\frac{x^3}{3}}{0}{2} \\[2ex]
\int_0^X \!\!\frac{1}{3+t}\,dt
  &= [\ln(3+t)] _{0} ^ {X} \\[1ex]
  &= \inteval{\ln(3+t)}{0}{X} % no optional sizing argument
   = \inteval[Big]{\ln(3+t)}{0}{X} % note use of "Big" option
\end{align*}
\end{document}

答案2

最简单和最紧密的方法可能是使用bmatrix环境:

\documentclass{article}
\usepackage{amsmath}

\begin{document}

\begin{alignat*}{2}
V = \int_0^2(4-x^2)\,\mathrm d x &= 4\int_0^2dx - \int_0^2x^2\,\mathrm d x
          & & = 4\bigl[x\bigr]_0^2 - \begin{bmatrix}\dfrac{x^3}{3}\end{bmatrix}_0^2 \\%
   \text{ or simply} & & & = \begin{bmatrix}4x-\dfrac{x^3}{3}\end{bmatrix}_0^2
\end{alignat*}

\end{document} 

在此处输入图片描述

相关内容