
Я определил новую среду, которая помещает заголовок кадра в середину кадра.
\newenvironment{coloredframe}[2]{
\mdfsetup{
hidealllines=true,
leftline=true,topline=true,
frametitleaboveskip=-5pt,
linewidth=1.5pt,
frametitle={\colorbox{white}{\space#1\space}},
linecolor=#2
}
\begin{mdframed}
}{
\end{mdframed}
}
Дело в том, что выглядит он хорошо, но иногда страницы разрываются в странных местах, а если я убираю эту опцию, frametitleaboveskip=-5pt
страницы разрываются там, где и ожидалось.
Что можно сделать, чтобы сохранить позицию заголовка фрейма, но при этом избежать странных разрывов страниц?
Пример странного разрыва страницы:
И как это выглядит без frametitleaboveskip
, хорошие разрывы страниц, плохое расположение заголовка Diseño
фрейма:
РЕДАКТИРОВАТЬ: МВЭ
\documentclass[letterpaper, 12pt, oneside, spanish]{tesis}
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage{mdframed}
\usepackage{blindtext}
\newenvironment{coloredframe}[3][]{
\mdfsetup{
hidealllines=true,
leftline=true,topline=true,
frametitleaboveskip=-5pt,
frametitle={\colorbox{white}{\space#2\space}},
linecolor=#3,
#1
}
\begin{mdframed}
}{
\end{mdframed}
}
\newenvironment{investigationfr}[1][]
{\begin{coloredframe}[#1]{Investigación}{blue}}
{\end{coloredframe}}
\begin{document}
\section{Section}
\begin{investigationfr}
\blindtext\\
\blindtext\\
\blindtext\\
\blindtext\\
\end{investigationfr}
\end{document}
решение1
Я последовал совету использоватьtcolorboxи придумал это решение, оно работает безупречно:
\tcbuselibrary{skins}
\tcbuselibrary{breakable}
\newtcolorbox{coloredframe}[3][]{
empty,
breakable=true,
sharp corners=all,
top=4mm, left=4mm,
borderline west={1.5pt}{0pt}{#3}, borderline north={1.5pt}{0pt}{#3},
attach boxed title to top left={yshift=-1.75ex,xshift=6ex},
coltitle=black,
colback=white, colbacktitle=white,
fonttitle=\bfseries,
boxed title style={boxrule=0pt,colframe=white},
title=#2,
#1
}
И используйте это так:
\begin{coloredframe}{Investigation}{blue}
% paragraph
\end{coloredframe}