我有两个节点组成了方框。其中一个是标题,另一个使用 包含信息\itemize
。由于左边框和项目符号之间有很大空间,所以我缩小了左边距。我想对顶部边距做同样的事情,但不知道怎么做。也许有人可以帮忙?
如果有更流畅的方式来创建盒子的图片,我会很高兴在这里。
\documentclass{article}
\usepackage{tikz}
\begin{tikzpicture}
% Define block styles used later
\tikzstyle{hl} = [draw, text width=14em, fill=blue!80, text centered,
minimum height=3em, drop shadow]
\tikzstyle{info} = [draw, text width=14em, fill=blue!20,
minimum height=3em, drop shadow, text centered, align = left
,execute at begin node={\setlength{\leftmargini}{1.1em}}]
\node at (0,0) [hl] (hl_tsd) {Headline Text in Box};
\node at (0,-2.3) [info] (info_tsd) {\begin{itemize} \footnotesize
\item Text item 1
\item Text item 2
\item Text item 3
\end{itemize}};
\end{tikzpicture}
\end{document}
答案1
也许您可以考虑tcolorbox
这种类型的构造来代替TiKZ
。
\documentclass{article}
\usepackage[most]{tcolorbox}
\usepackage{enumitem}
\setlist{noitemsep, topsep=0mm, leftmargin=*}
\begin{document}
\begin{tcolorbox}[sharp corners, width= 5cm,
colbacktitle=blue!80, colback =blue!20, top=1mm, bottom=1mm, left=1mm,
title={Headline Text in Box}]
\begin{itemize}
\item Text item 1
\item Text item 2
\item Text item 3
\end{itemize}
\end{tcolorbox}
\end{document}
答案2
纯 Ti钾Z 解决方案。我假设您正在寻找类似以下内容的东西?
上图是在shapes.multipart
Ti的帮助下制作的钾Z 库和enumitem
包:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes.multipart}
\usepackage{enumitem}
\newlist{tikzitem}{itemize}{1} % <-- defined new list
\setlist[tikzitem]{nosep, % <-- new list setup
leftmargin=*,
label=$\bullet$,
after=\vspace{1ex}
}
\begin{document}
\begin{tikzpicture}[
mpnv/.style = {% vertical multi part node
rectangle split, rectangle split, rectangle split parts=2,
draw, text width=14em,
rectangle split part fill = {blue!30, white} }
]
\node [mpnv] {\nodepart{one} Headline Text in Box\\
\nodepart{two} %\footnotesize
\begin{tikzitem}
\item Text item 1
\item Text item 2
\item Text item 3
\end{tikzitem}
};
\end{tikzpicture}
\end{document}
注意:正如您所见,上面的 MWE 与您的有很大不同。