我想要一个双行文本,其周围有一个椭圆框。我这样做
{\huge \Ovalbox{\textcolor{darkred}{Two lined \\ text}}}
LaTex 忽略了\\
符号,如何实现?
答案1
使用tikz
是一种可能的解决方案。将椭圆形状定义为ell
样式。
代码
\documentclass{beamer}
\usepackage{tikz,xcolor}
\usetikzlibrary{shapes}
\tikzset{%
ell/.style={draw,ellipse,minimum height=3em,text width=10em,line width=2pt, align=center},
}
\begin{document}
\begin{frame}
\begin{tikzpicture}
\node[ell] {\textcolor{red}{\huge Two lined \\ text}};
\end{tikzpicture}
\end{frame}
\end{document}
编辑:例如,如果需要移动这个椭圆框,
使用[remember picture,overlay] with shift={(x,y)}
技能,如下所示
\begin{frame}
\begin{itemize}
\item abc
\item This is a tikz node
\begin{tikzpicture}[remember picture,overlay]
\node[ell,shift={(4cm,0cm)}] {\textcolor{red}{\huge Two lined \\ text}};
\end{tikzpicture}
\item def
\end{itemize}
\end{frame}
答案2
您也可以使用包装来实现这stackengine
一点,fancybox
或者,pstricks
如果您想要更复杂的盒子。以下是三个示例:
\documentclass[svgnames, pdf]{report}
\usepackage{fancybox}
\usepackage{beamerarticle}
\usepackage{stackengine}
\usepackage{pst-node}
\setstackEOL{\\}
\begin{document}
\begin{tabular}{l@{\qquad}l}
With \texttt{fancybox}:&
\Ovalbox{\color{DarkRed}\huge\Centerstack{Two lined \\ text}}
\bigskip\\
With \texttt{pstricks}: \\
& \psset{linecolor = Coral!75, linewidth = 1.2pt, linearc=.4, cornersize = absolute}
\psframebox[framesep = 1pt]{\psframebox[linewidth=0.6pt, linearc = .325]{\color{DarkRed}\huge\Centerstack{Two lined \\ text}}}
\bigskip \\
& \psovalbox[linecolor = Coral!75, linewidth=0.8pt, doubleline = true]{\color{DarkRed}\huge\Centerstack{Two lined \\ text}}
\end{tabular}
\end{document}
答案3
回答你的问题最困难的部分是找出哪个包定义了\Ovalbox
...如果你发布了完整的 MWE,它真的会帮助我们帮助你...事实证明它\Ovalbox
是由花式盒子。
做你想做的事情的最简单的方法可能是将你的 tet 放入\parbox
:
\documentclass{beamer}
\usepackage{fancybox}
\begin{document}
\begin{frame}{A fame}
{\huge \Ovalbox{\parbox{40mm}{\centering\textcolor{red}{Two lined \\ text}}}}
\end{frame}
\end{document}
利用这个我得到:
我将添加到\centering
,\parbox
因为我确实希望文本位于椭圆的中心。
正如你的问题所提到的,beamer
我把所有东西都放在了一个框架内......