尖角括号较少

尖角括号较少

我正在寻找一种方法来漂亮地显示 UML 刻板标题,包括尖括号,就像您在这里看到的那样:

我喜欢

$\mathtt{\ll metaclass\gg}$然而,正如你在这里看到的,我想到的是

不喜欢

括号太尖(我希望你明白我的意思)并且括号和表达式之间的间距太大。

简短版本:有人知道根据括号的命令吗?

答案1

使用T1字体编码访问\guillemotleft\guillemotright

在此处输入图片描述

\documentclass{article}
\usepackage[T1]{fontenc}% http://ctan.org/pkg/fontenc
\begin{document}
$\ll$~\texttt{metaclass}~$\gg$ \par
\guillemotleft~\texttt{metaclass}~\guillemotright \par
\guillemotleft$\;$\texttt{metaclass}$\;$\guillemotright \par
\guillemotleft\,\texttt{metaclass}\,\guillemotright \par
\guillemotleft\texttt{metaclass}\guillemotright
\end{document}

上面的序列列出了一些间距选项:~、、$\;$\,{}无)。

答案2

这是一个基于 TikZ 的解决方案:

例子

\documentclass{article}
\usepackage{tikz}
\newcommand\umlst[1]{%
  \kern.05em%
  \raisebox{-.025ex}{%
    \begin{tikzpicture}[scale=.20,line width=.15ex,join=round,cap=round]
      \draw ( 0,0) -- +(-.5,.5) -- +(0,1);
      \draw (.5,0) -- +(-.5,.5) -- +(0,1);
    \end{tikzpicture}%
  }%
  \kern.15em%
  \texttt{#1}%
  \kern.10em%
  \raisebox{-.025ex}{%
    \begin{tikzpicture}[scale=.20,line width=.15ex,join=round,cap=round]
      \draw ( 0,0) -- +(.5,.5) -- +(0,1);
      \draw (.5,0) -- +(.5,.5) -- +(0,1);
    \end{tikzpicture}
  }%
  \kern-.25em%
}

\begin{document}
\umlst{Metaclass}\par
\umlst{ObjectCreator}\par
\umlst{RegexLexerMeta}\par
\end{document}

答案3

我想到了三个解决方案:

\documentclass[12pt,a4paper]{article}

\usepackage{graphicx}

% These two packages contain the symbols I hacked (a bit) to get the desired effect:

\usepackage{MnSymbol}
\usepackage{skak}

% Here the symbols are hacked (rotated and shifted as needed):

\newcommand{\gmathleft}{\rotatebox{90}{$\sqdoublefrown$}}
\newcommand{\gmathright}{\rotatebox{90}{$\sqdoublesmile$}}

\newcommand{\gleft}{\qside}
\newcommand{\gright}{\kern-0.01em\raisebox{\depth-.35pt}{\rotatebox{180}{\qside}}}

\begin{document}

% This is the first solution: just switch to typewriter font:

\texttt{<<metaclass>>}

% Here's the solution with MnSymbol:

\gmathleft\texttt{metaclass}\gmathright

% Here's the skak-based solution:

\gleft\texttt{metaclassm}\gright

\end{document}

如您所见,符号MnSymbol仅在数学模式下有效,而skak符号是文本模式。

以下是三种解决方案:

在此处输入图片描述

相关内容