
平行線で美しいボックスを作りたいです。添付画像をご覧ください
私の最小限のコーディング:
\documentclass[a4paper,8pt]{article}
\usepackage[left=1.0cm,right=0.3cm,top=0.5cm,bottom=0.5cm]{geometry}
\usepackage[most]{tcolorbox}
%\usepackage{tikz}
\usepackage{adjustbox}
\tikzset{fancytitle/.style ={fill=red, text=white}}
\newtcolorbox{Mybox}[2][]{enhanced,
arc=4mm,
colframe=blue!80!red,colback=white,colbacktitle=blue!5!yellow!50!white,
fonttitle=\bfseries,coltitle=black,
title={#2},
#1}
\begin{document}
\begin{Mybox}[width=5.4cm,height=2.4cm]{Title}
\begin{center}
abc xyz
\end{center}
\end{Mybox}
\end{document}
答え1
これは大部分がここただし、\parshape
を使用すると自動的に挿入されますbefore upper
。 もちろん、必要に応じて寸法を調整し、それに応じて の行数を変更することもできます\parshape
。
\documentclass[a4paper,8pt]{article}
\usepackage[left=1.0cm,right=0.3cm,top=0.5cm,bottom=0.5cm]{geometry}
\usepackage[most]{tcolorbox}
\newtcolorbox{Mybox}[2][]{%
enhanced,top=0mm,left=2pt,right=2pt,
enlarge top by=\baselineskip/2+1mm,
enlarge top at break by=0mm,pad at break=2mm,
fontupper=\normalsize,
overlay unbroken and first={%
\draw[fill=yellow]
([xshift=6pt,yshift=12pt]frame.north west) -| ++ (1,-2)
-- ++ (-0.5,0.3) -- ++ (-0.5,-0.3) -- cycle;
\node[anchor=north west,text width=1cm-4pt,align=center] at ([xshift=6pt,yshift=12pt]frame.north west)
{#2};
},
breakable,arc=4mm,
colframe=blue!80!red,colback=white,
width=\textwidth,
before upper ={\parshape 5
1.2cm \dimexpr \hsize-1.2cm\relax
1.2cm \dimexpr \hsize-1.2cm\relax
1.2cm \dimexpr \hsize-1.2cm\relax
1.2cm \dimexpr \hsize-1.2cm\relax
0pt \hsize} ,#1}
\begin{document}
\begin{Mybox}[width=5.4cm]{abc xyz}
some text some text some text some text some text some text some text some text
some text some text some text some text some text some text some text some text
some text some text some text some text some text
\end{Mybox}
\end{document}
文字通り水平線が必要な場合は、 を使用できます。(ただし、この場合は を使用せず、単純な Ti で描画する方が\hrulefill
よい場合があります。tcolorbox
けZ.)
\documentclass[a4paper,8pt]{article}
\usepackage[left=1.0cm,right=0.3cm,top=0.5cm,bottom=0.5cm]{geometry}
\usepackage[most]{tcolorbox}
\newcounter{ic}
\newtcolorbox{Mybox}[2][]{%
enhanced,top=0mm,left=2pt,right=2pt,
enlarge top by=\baselineskip/2+1mm,
enlarge top at break by=0mm,pad at break=2mm,
fontupper=\normalsize,
overlay unbroken and first={%
\draw[fill=yellow]
([xshift=6pt,yshift=12pt]frame.north west) -| ++ (1.6,-1.3)
-- ++ (-0.8,0.3) -- ++ (-0.8,-0.3) -- cycle;
\node[anchor=north west,text width=1.6cm-4pt,align=center] at ([xshift=6pt,yshift=12pt]frame.north west)
{#2};
},
breakable,arc=4mm,
colframe=blue!80!red,colback=white,
width=\textwidth,#1}
\begin{document}
\begin{Mybox}[width=5.4cm]{abc xyz}
\vphantom{X}\hspace{1.8cm}\hrulefill{}\par
\hspace{1.8cm}\hrulefill{}\par
\hrulefill{}\par
\hrulefill{}\par
\hrulefill{}
\end{Mybox}
\end{document}