Linha vertical ao lado de um bloco, entre quebras de página

Linha vertical ao lado de um bloco, entre quebras de página

Gostaria de marcar exemplos, em um exampleambiente do texto, desenhando uma barra vertical ao longo da margem. Encontrei um trecho de código que usa o framedpacote para fazer isso, mas como o conteúdo do ambiente está em uma caixa, isso não quebra entre as páginas.

Para mostrar que o exemplo continuará na próxima página, a linha deve se estender um pouco mais verticalmente antes/depois da quebra de página. Isso não deve ser um problema ao usar o tikz, se conseguirmos colocar coordenadas nas primeiras/últimas linhas do ambiente e nas linhas antes/depois de cada quebra de página. PareceMartin Scharrerestava trabalhando em algo assim, mas não descobri se isso acabou em um pacote agora…

No meu caso, preciso de suporte para no máximo uma quebra de página por ambiente.

Responder1

ComoDavis Carlislemenciona em um comentário, omdframedpackage oferece uma boa solução possível, através de seu \newmdtheoremenvcomando; um pequeno exemplo interagindo com um estilo de teorema de amsthm:

\documentclass{article}
\usepackage[a5paper]{geometry}% just for the example
\usepackage{xcolor}
\usepackage{amsthm}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{lipsum}% just to generate text for the example

\theoremstyle{remark}
\newmdtheoremenv[
  skipabove=\topsep,
  skipbelow=\topsep,
  innertopmargin=0pt,
  innerbottommargin=0pt,
  leftmargin=-13pt,
  splitbottomskip=2ex,
  splittopskip=3ex,
  linecolor={cyan!80!black},
  topline=false,
  leftline=true,
  bottomline=false,
  rightline=false,
  innerrightmargin=0pt,
  innerlinewidth=3pt
  font=\normalfont
]{example}{Example}

\begin{document}

\lipsum[1]
\begin{example}
\lipsum[1-4]
\end{example}
\lipsum[1]

\end{document}  

insira a descrição da imagem aqui

informação relacionada