关于如何将一段文字放在带有边框的框内的建议

关于如何将一段文字放在带有边框的框内的建议

我有一句“XYZ 定律”名言,我想将其显示在页面上的某个地方,垂直居中,放在一个带有某种简单边框的框中。基本上,我试图实现 LaTeX 等效于诺维格定律显示于http://norvig.com/norvigs-law.html页面上有一些居中且放置在带边框的框内的文本。有人能就如何创建这样的外观提出建议吗?

在此处输入图片描述

如果我使用这个词,我深表歉意盒子此处与 LaTeX 特有的另一种用法重叠。我见过术语盒子在 LaTeX 中出现过很多次,所以我不知道它在 LaTeX 领域中是否具有特殊含义,而我在这里无意中与之重叠了。

答案1

为了帮助您入门,请关注Jan 的建议使用花式盒子,你可以定义一个环境,例如

\usepackage{fancybox}

\newenvironment{boxedlaw}[1]
  {\begin{Sbox}\begin{minipage}{#1}\centering}
  {\end{minipage}\end{Sbox}\begin{center}\shadowbox{\TheSbox}\end{center}}

...

\begin{boxedlaw}{5cm}
XYZ's Law
\end{boxedlaw}

并且真正查看这个包中的文档以获得进一步的建议以及其他风格的盒子。

答案2

先前的答案提供了绘制框架和彩色框的几种选择,但是tcolorbox缺失了。接下来是使用它的示例。

\documentclass{article}

\usepackage{lipsum}% For dummy text to show centering
\usepackage{xcolor}
\usepackage[most]{tcolorbox}

\begin{document}

\lipsum[1]

{\par\centering
 \begin{tcolorbox}[enhanced, width=.75\linewidth, 
            colback=blue!50!green!20,
            arc=0pt, outer arc=0pt, 
            borderline={1.5pt}{0pt}{black!90},
            borderline={0.25pt}{3pt}{black!70, sharp corners},
            drop fuzzy shadow]
    \centering
{\LARGE Norvig's Law
\par\medskip}
\normalsize\itshape
Any technology that surpasses 50\% penetration\\
will \textbf{never} double again\\
(in any number of months)
\end{tcolorbox}\par}

\lipsum[2]

\end{document}

在此处输入图片描述

更新:最近的tcolorbox版本引入了vignette产生所需 3D 效果的库:

\begin{tcolorbox}[enhanced, width=.75\linewidth, 
            colback=blue!50!green!20,
            arc=0pt, outer arc=0pt, 
            borderline={0.5pt}{3pt}{black!70, sharp corners},
            underlay vignette
            ]
    \centering
{\LARGE Norvig's Law
\par\medskip}
\normalsize\itshape
Any technology that surpasses 50\% penetration\\
will \textbf{never} double again\\
(in any number of months)
\end{tcolorbox}

在此处输入图片描述

答案3

首先,你可能想看看花式盒子包装。有关如何制作更精美的盒子的一些想法,请查看这个 tikz 例子

答案4

您可以使用adjustbox以下键来实现此目的:

  • minipage=<width>用于段落框。
  • margin=<amount>添加一些填充。
  • bgcolor=<color>设置背景颜色。
  • frame在其周围绘制边框(注意:可以使用选项值进行调整)。如果您想要彩色边框,
    也可以使用(同样加上可选值)。cframe=<color>
  • center使电流居中\linewidth
  • margin=0pt <vskip>在上方和下方添加一些垂直跳跃。

请注意,按键的顺序是有意义的。

\documentclass{article}

\usepackage{lipsum}% For dummy text to show centering
\usepackage{xcolor}
\usepackage{adjustbox}

\begin{document}

\lipsum[1]

\begin{adjustbox}{minipage=200pt,margin=10pt,bgcolor=blue!25,frame,center,margin=0pt \medskipamount}
    \centering\sffamily
{\LARGE Norvig's Law
\par\medskip}
\normalsize
Any technology that surpasses 50\% penetration\\
will \textbf{never} double again\\
(in any number of months)
\end{adjustbox}

\lipsum[2]

\end{document}

结果

相关内容