将所有内容框起来

将所有内容框起来

我正在寻找为我拥有的一切创建一个边框的方法。

类似于standalone类,但有轮廓而不是裁剪。我还想管理边距、线条粗细及其颜色。

在序言中设置很重要,这样我就不需要使用,比如\begin{tikzpicture}...框架内容。它应该会自动框住所有内容。

它看起来应该是这样的

\documentclass{article}

%%% Кւԍ⌡₭ϝძη₲₭⫳ძ⨍∈ηԌ <=== something code for the frame

\begin{document}
$$ 2+2=4 $$
My beautiful text
\end{document}

在此处输入图片描述

答案1

按照@MadyYuvi 的建议使用该framed包但将其应用于整个文档。

% framedprob.tex  SE 546288

\documentclass{article}
\usepackage{framed}
\usepackage{lipsum}

\AtBeginDocument{\begin{framed}}
\AtEndDocument{\end{framed}}
\begin{document}
%\begin{framed}
\[
 2+2=4 
\]
My beautiful text.

\lipsum[1-7]
%\end{framed}

\end{document}

framed软件包确实允许您更改边框线的宽度(和颜色?),但这需要深入研究软件包内部。也许可以就此提出另一个问题;的创建者 Donald Arseneauframed是 SE 的贡献者。

答案2

如果我正确理解了你的问题,那么只需尝试使用该framed.sty包,结果MWE是:

\documentclass{article}
\usepackage{framed}


\begin{document}
\begin{framed}
\[
 2+2=4 
\]
My beautiful text
\end{framed}

\end{document}

如果我的理解错误,请纠正我......

答案3

我取消删除我的答案只是为了记录。我不明白你想要什么,但可以肯定的是tikztikzpagenodesatbegshi软件包将允许你做你想做的事(并且那里可以进行很多配置)。

以下是示例代码:

\documentclass{article}

\usepackage{xparse}
\usepackage{atbegshi}
\usepackage{tikz}
\usepackage{tikzpagenodes}

\NewDocumentCommand\StartFrame{}{
    \begin{tikzpicture}[remember picture, overlay]
    \draw (current page text area.north west) rectangle (current page text area.south east);
}

\NewDocumentCommand\EndFrame{}{
    \end{tikzpicture}
}

\AtBeginShipout{\AtBeginShipoutAddToBox{\StartFrame\EndFrame}}

\begin{document}

    \[ 2+2=4 \]
    My beautiful text

\end{document}

Tikz 框架

如果您想将框架限制在实际内容范围内,那么tcolorbox这可能是一个不错的选择,而且它具有高度(且容易)可定制性。

\documentclass{article}

\usepackage{xparse}
\usepackage{atbegshi}
\usepackage{tcolorbox}

\NewDocumentCommand\StartFrame{}{
    \begin{tcolorbox}
}

\NewDocumentCommand\EndFrame{}{
    \end{tcolorbox}
}

%\AtBeginShipout{\AtBeginShipoutAddToBox{\StartFrame\EndFrame}}
\AtBeginDocument{\StartFrame}
\AtEndDocument{\EndFrame}
\begin{document}

    \[ 2+2=4 \]
    My beautiful text

\end{document}

我希望您不介意我将这些选项添加到投票的答案中。

tcolorbox 框架

相关内容