文本周围的圆角框

文本周围的圆角框
 \newcommand*\round[2]{%
\tikz[baseline=(char.base)]
\node[anchor=north west, draw,rectangle ,rounded corners, inner xsep=5.6cm,
 minimum size=5.5mm, height=3.6mm, fill=#2,#2,text=white,align= left](char){#1};
%
}

我明白了,但我需要文本左对齐并且圆形框大小相同。

答案1

我更改了您的一些参数,并将它们压缩到您需要的程度。请记住,这text width就是您所需要的(您不必使用它,align = left因为它默认设置为左侧)。

在此处输入图片描述

\documentclass{article}
\usepackage{tikz}
\newcommand\round[2]{\par
    \noindent\begin{tikzpicture}%
        \node[draw = #1, fill = #1, rectangle, rounded corners, 
              minimum size = 5.5mm, text = white, text width = 10cm](char){#2};
    \end{tikzpicture}\par%
}%
\begin{document}
    \round{blue}{First Title}
    some text\\
    \round{red}{Second Title}
    some text\\
\end{document}

答案2

欢迎使用 TeX-SE!我认为以下内容可以满足您的要求:

\documentclass{article}
\usepackage{tikz}
\newcommand*\round[2][blue]{%
\tikz[baseline=(char.base)]\node[shape=rectangle,
rounded corners, minimum width=\textwidth,text width=\textwidth-3em, 
minimum  height=2em,text depth=0.3em,
 fill=#1,text=white,align=left,font=\sffamily](char){#2};%
}
\begin{document}
\noindent
\round{Some text}

\noindent
\round[blue!70!black]{Some other text}

\end{document}

在此处输入图片描述

不过,我觉得你最好使用tcolorbox基于的tikz。使用这个答案你可以做

\documentclass{article}
\usepackage[most]{tcolorbox}

\newtcolorbox{rounded}[1][]{enhanced jigsaw,colback=blue,
boxrule=0pt,arc=2mm,auto outer arc,boxsep=0pt,coltext={white},fontupper=\sffamily,
#1}

\begin{document}

\begin{rounded}
Some text
\end{rounded}

\begin{rounded}[colback=blue!70!black]
Some more text
\end{rounded}
\end{document}

在此处输入图片描述

相关内容