数学模式下括号封装几行

数学模式下括号封装几行

我希望能够在数学模式下生成包含多行文本的括号。上下文如下:在输入一组概率练习的答案时,我需要写下事件发生的概率,其中事件以口头描述。例如,掷三个骰子时得到 1、3 和大于 4 的数字的概率将表示为 $P(\text{得到 1、3 和大于 4 的数字)$,但正如您所见,文本太长了,对我来说,能够将其分成两行或三行并用括号包含所有文本会更美观,就像我手写时所做的那样。

这可能吗?请注意,在此之后我需要继续在同一行中写入。我尝试了\left(\right)并用分割行\text{first line}\\ \text{second line},但它不起作用。

答案1

问题出在换行符上\\

尤其是,\left\right不能在里面使用换行符。无论如何,它们并不总是提供最佳尺寸,通常\big,、\Big \bigg\Bigg变体更可取。在这里我建议\bigl( ... \bigr)

对于小型多行文本,您可以使用包\substack中的命令amsmath

 P \bigl(
  \substack{
    \text{getting 1, 3 and} \\
    \text{a number greater than 4}
  } 
\bigr)

如果您需要更多定制(例如左对齐),那么也可以使用subarray来自同一包的环境:

 P \bigl(
  \begin{subarray}{l}
    \text{getting 1, 3 and}\\
    \text{a number greater than 4}
  \end{subarray}
\bigr)

例子:

\documentclass{article}

\usepackage{amsmath}

\begin{document}

Inline equation: $P \bigl(\substack{\text{getting 1, 3 and} \\ \text{a number
    greater than 4}} \bigr)$.

\medskip

Display equation:
\[
  P \bigl(
  \substack{
    \text{getting 1, 3 and} \\
    \text{a number greater than 4}
  } \bigr)
\]

\end{document}

使用 \substack 实现多行

编辑:在括号内使用正常文本大小

我建议\substack宏与数学字体大小相适应。但是,如果您希望括号内的字体大小与普通文本相同,请使用经典的表格:

  P \Bigl(
  \begin{tabular}{
      @{\,} % shrink left sep
      c
      @{\,} % shrink right sep
    }
    getting 1, 3 and \\
    a number greater than 4
  \end{tabular}
  \Bigr)

我用来@{\,}将左右空格替换为细空格(看来表格定义中的><不能在数学模式下使用)。

文字较大

或者,如果你不介意使用其他包,你可以尝试宽度环境,正如@daleif所建议的:

  P \Bigl(
  \,% thin space before
  \begin{varwidth}{15cm}
    \centering
    getting 1, 3 and \\
    a number greater than 4
  \end{varwidth}
  \,% thin space after
  \Bigr)

相关内容