用垂直括号括起来的文本块

用垂直括号括起来的文本块

对于我的投影仪幻灯片,我喜欢有一个命令,将一个文本块居中并用括号将其包围,括号的垂直尺寸随着文本行数的增加而增加。

我目前有以下情况:

\NewEnviron{remarkblock}[1][]{%
  \scalebox{1}{%
     $\scaleleftright{(}{\parbox{0.95\linewidth}{\centering \small\BODY}}{)}$
  }
}

(不要问我解释,这是我从 stackexchange 位中整理出来的)

这几乎没问题。我唯一想改进的是,当文本少于一行时,我希望括号实际上不是相隔 0.95 个行宽,而是像居中文本周围的普通括号一样(可能稍大一点)。

https://en.wikibooks.org/wiki/LaTeX/Boxes我读到\parbox用替换\pbox应该可以实现我想要的效果。但是,我遇到了两个问题:

  1. 如果文本包含手动换行符,则会收到错误: Somthings's broken -- Perhaps a missing \item

  2. 如果我没有手动换行,它可以工作,但 pbox 会左对齐,即使我把\centering前面的\scaleleftright和前面的放在一起\pbox

编辑:根据要求,这是一个最小工作示例。在这个版本中,我得到了错误;如果我删除,\\我得到左对齐,如果我在 的位置放置一个长文本test并删除 ,则\\一切都如预期。

\documentclass{article}
\usepackage{pbox}
\usepackage{scalerel}
\begin{document}
\scalebox{1}{$\centering\scaleleftright{(}{\centering\pbox{0.95\linewidth}{\centering \small test \\ test}}{)}$}
\end{document}

答案1

根据 jbfu 的评论进行编辑,以修复列表中的结果。

\documentclass{article}
\usepackage[pass,showframe]{geometry}
\usepackage{pbox,scalerel,stackengine}
\usepackage[nopar]{lipsum}
\newcommand\myblock[1]{\noindent\hfill\belowbaseline[-\ht\strutbox]{{%
  \scaleleftright[.025\linewidth]{(}{%
  \pbox{\dimexpr0.95\linewidth}{\small\strut #1\strut}}{)}}}\hfill\mbox{}}
\begin{document}
\myblock{test}

\myblock{test\\test}

\myblock{test\\test\\test}

\myblock{\lipsum[1]}

\begin{enumerate}
\item \myblock{test\\test\\test}
\item \myblock{\lipsum[4]}
\item \lipsum[3]
\end{enumerate}
\end{document}

在此处输入图片描述

答案2

varwidth包可能会有帮助:

\documentclass{article}
\usepackage{pbox}
\usepackage{scalerel}
\usepackage{varwidth}


\begin{document}
\centering

$\scaleleftright{(}{
\begin{varwidth}{0.95\linewidth}
\small test
\end{varwidth}
}{)}$

$\scaleleftright{(}{
\begin{varwidth}{0.95\linewidth}
\small test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test
\end{varwidth}
}{)}$
\end{document}

在此处输入图片描述

相关内容