如何创建“垂直点填充”环境?

如何创建“垂直点填充”环境?

我想要通过包中的廉价方法突出显示文本中打算在第二次阅读时阅读的部分,我想设置一个环境,将点放在行的开头和结尾,最好放在环境的边缘。我显然希望能够在此环境中创建各种文本或数学对象,例如图形、定理、脚注……特别是使用 tcolorbox 和其他一些环境生成的框……所以我认为解决方案必须不基于任何包,尤其是不使用tcolorbox或另一个生成框的包!

我给出了一个我想要创建的示例,我\dotfill在文本的开头和结尾添加了 ,同时借助 在该行的开头和结尾添加了点\hfill在此处输入图片描述 我实际上想创建一个\vdotfill{text}环境,基于\dotvfill命令的想法,包含在以下问题的答案中垂直点填充 然后将我的文本放在\dotfill上下之间,以及\vdotfill左右之间。有什么想法吗?

答案1

是的,不要重新发明轮子:

姆韦

\documentclass{article}
\usepackage{lipsum}
\usepackage[most]{tcolorbox}
\newtcolorbox{dottedenvironment}{enhanced,
boxrule=0pt,boxsep=1em,colback=white, arc=3mm, frame hidden,
borderline={1pt}{2pt}{red!30!black,dotted}}
\begin{document}

\begin{dottedenvironment}
\lipsum[2]  
\end{dottedenvironment}

\end{document}

编辑:正如评论中所述,这似乎要求盒子即使是嵌套的也应该可打破。我不知道自动方法,我认为这不是一个好主意 (*),但你可以手动打破嵌套tcolorbox

(*) 注意enforce breakable选项有点疯狂

mwe2

\documentclass{article}
\usepackage[paperwidth=8cm,paperheight=8cm]{geometry}
\usepackage{ltablex}
\usepackage{lipsum}
\usepackage[most]{tcolorbox}
\newtcolorbox{dottedenvironment}{enhanced,enforce breakable, boxrule=0pt,boxsep=1em,colback=white, arc=3mm, frame hidden,
borderline={1pt}{2pt}{red!30!black,dotted}}
\def\dummytext{The key message for success is to keep it simple. }
\def\moretext{\dummytext\dummytext\par}
\begin{document}
\begin{dottedenvironment}
\moretext
\begin{dottedenvironment}
\dummytext
\tcbbreak
\moretext\end{dottedenvironment}
\tcbbreak
\end{dottedenvironment}
\end{document}

答案2

ConTeXt 可以使用 轻松实现这一点textbackground。您还可以包含浮点数(浮点数不会被点包围,因为它们可能出现在其他地方)。

\startuseMPgraphic{dottedframe}
begingroup;
  for i=1 upto nofmultipars :
    draw ( llcorner multipars[i]
      -- lrcorner multipars[i]
      -- urcorner multipars[i]
      -- ulcorner multipars[i]
      -- cycle )
      enlarged (EmWidth,EmWidth)
      dashed withdots ;
  endfor ;
endgroup;
\stopuseMPgraphic

\definetextbackground
  [DottedFrame]
  [mp=dottedframe,
   location=paragraph,
   before={\blank[2*big]}]

\starttext

\starttextbackground[DottedFrame]
Text and/or environments and/or equations

Text and/or environments and/or equations

Text and/or environments and/or equations

\startplacefigure[location=here,title={The famous Dutch cow}]
  \externalfigure[cow]
\stopplacefigure

Text and/or environments and/or equations

Text and/or environments and/or equations

Text and/or environments and/or equations
\stoptextbackground

\stoptext

在此处输入图片描述

相关内容