我正在尝试制作一个自定义矩形来包围我的部分标题。这是一个常规矩形,其左上角和右下角被“切开”,因此它们是对角的。
我希望它看起来像这样:
我尝试修改 tcolorbox 第 201-202 页中的长示例,但只得到缺失的角落。
这是我的 MWE:
\documentclass[13pt]{extarticle}
\usepackage[paperwidth=9in, paperheight=6in, margin=0.3in, marginparwidth=0.6in]{geometry}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz}
\usepackage{tcolorbox}
\tcbuselibrary{skins,breakable}
\pagestyle{empty}
\begin{document}
\tcbset{nobeforeafter, colbacktitle=white, colback=white, coltitle=black, width=.5\linewidth}
\begin{tcolorbox}[enhanced, frame code={\path[tcb fill frame] (frame.south west)--([yshift=-5mm]frame.north west)
--([xshift=5mm]frame.north west)--(frame.north east)--([yshift=-5mm]frame.north east)
--([yshift=5mm]frame.south east)--([xshift=-5mm]frame.south east)--cycle;}]
Sample Text
\end{tcolorbox}
\end{document}
但它看起来像这样:
有人能帮我找出为什么它无法正确绘制吗?或者我应该使用其他东西而不是 tcolorbox?
答案1
在您的示例中,框架绘制正确,但随后框架上方填充了一个白色矩形,遮住了角落。尝试使用其他颜色,white
以便更轻松地查看发生了什么。
你想要这样的东西吗?
如果是这样,您必须隐藏interior
框的,否则它将被放置在框架上方,具有规则的角。因此,fill
将传递给 TiKZ 命令,并interior hidden
用于阻止框架的标准填充。
\documentclass[13pt]{extarticle}
\usepackage[paperwidth=9in, paperheight=6in, margin=0.3in, marginparwidth=0.6in]{geometry}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz}
\usepackage{tcolorbox}
\tcbuselibrary{skins,breakable}
\pagestyle{empty}
\begin{document}
\tcbset{
nobeforeafter,
colbacktitle=white,
colback=white,
coltitle=black,
coltext=white,
fontupper=\sffamily\bfseries\LARGE,
width=.5\linewidth,
}
\begin{tcolorbox}
[
enhanced,
interior hidden,
frame code={
\path [tcb fill frame] (frame.south west) -- ([yshift=-5mm]frame.north west) -- ([xshift=5mm]frame.north west) -- (frame.north east) -- ([yshift=5mm]frame.south east) -- ([xshift=-5mm]frame.south east) -- cycle;
},
]
Sample Text
\end{tcolorbox}
\end{document}
您可能还想查看sharp corners
包装手册中的选项,以防它提供更简单的方法。