类似的问题,但针对的是垂直间距:tcolorboxes 之间不需要的垂直分隔
我想知道如何控制 tcolorboxes 之间的水平间距。
梅威瑟:
\documentclass{beamer}
\usepackage{tcolorbox}
\tcbset{colback=blue!75!white,colframe=blue!75!black}
\newtcolorbox{mybox}[1][]{
top=0mm,
bottom=0mm,
left=0mm,
right=0mm,
halign=center,
valign=center,
width=15mm,
height=15mm,
arc=0mm,
coltext=white,
before=,after=,
#1
}
\setlength{\parindent}{0pt}
\setlength{\parskip}{1mm}
\setlength{\lineskip}{0pt}
\begin{document}
\begin{frame}
\begin{mybox}
\bf N1
\end{mybox}
\begin{mybox}
\bf N2
\end{mybox}
\begin{mybox}
\bf N3
\end{mybox}
\begin{mybox}
\bf N4
\end{mybox}
\begin{mybox}
\bf N5
\end{mybox}
\begin{mybox}[after=\par]
\bf N6
\end{mybox}
\begin{mybox}[width=90mm]
\bf T
\end{mybox}
\end{frame}
\end{document}
答案1
每次之后\end{mybox}
,都有一个空格行结束,可以使用结尾的百分号来避免,例如\end{mybox}%
。如果您希望在框之间指定间距,可以添加\hspace{<length>}
,但请记住以 结尾以%
避免无意中出现空格。
\documentclass{beamer}
\usepackage{tcolorbox}
\tcbset{colback=blue!75!white,colframe=blue!75!black}
\newtcolorbox{mybox}[1][]{
top=0mm,
bottom=0mm,
left=0mm,
right=0mm,
halign=center,
valign=center,
width=15mm,
height=15mm,
arc=0mm,
coltext=white,
before=,after=,
#1
}
\setlength{\parindent}{0pt}
\setlength{\parskip}{1mm}
\setlength{\lineskip}{0pt}
\begin{document}
\begin{frame}
\begin{mybox}
\bf N1
\end{mybox}%
\begin{mybox}
\bf N2
\end{mybox}%
\begin{mybox}
\bf N3
\end{mybox}%
\begin{mybox}
\bf N4
\end{mybox}%
\begin{mybox}
\bf N5
\end{mybox}%
\begin{mybox}[after=\par]
\bf N6
\end{mybox}%
\begin{mybox}[width=90mm]
\bf T
\end{mybox}
\end{frame}
\end{document}
另一种方法如下,不需要%
:
\begin{mybox}[after=\ignorespacesafterend]
\bf N1
\end{mybox}
答案2
tcbitemize
环境是这些构造的有效替代方案。它可以控制框之间的空间并节省一些输入。
\documentclass{beamer}
\usepackage[most]{tcolorbox}
\tcbset{colback=blue!75!white,colframe=blue!75!black}
\begin{document}
\begin{frame}
\begin{tcbitemize}[raster width=90mm, raster columns=6, raster equal height=rows, raster column skip=0pt, raster row skip=1mm, raster height=31mm, arc=0mm, halign=center, valign=center, coltext=white]
\tcbitem N1
\tcbitem N2
\tcbitem N3
\tcbitem N4
\tcbitem N5
\tcbitem N6
\tcbitem[raster multicolumn=6] T
\end{tcbitemize}
\end{frame}
\end{document}