我定义了一个新环境,将框架标题放在框架的中间
\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
我按照建议使用彩色盒子并提出了这个解决方案,它完美地运行:
\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}