我可以画水平括号来注释句子的部分内容吗?

我可以画水平括号来注释句子的部分内容吗?

我需要解释 URL 的结构。我想用括号来解释。要生成以下内容

http://www.example.com/page.html?foo=bar&bar=foo
--v---|-------v-------|----v----|-v-|-v-|-v-|-v-|
service     address      page    parameter

---v--- 表示括号。我尝试通过猜测从哪里开始的坐标来做到这一点,但当我需要以图形方式绘制括号时已经失败了。我甚至没有能够相应地定位括号。

有没有一种简单的方法可以实现这一点,而无需对支架进行精确定位?

答案1

这是一个不使用 的解决方案tikz,简单又快捷。我\vphantom{p}在最后两个括号中添加了 ,以便具有相同的垂直对齐方式。

\documentclass{article}
\usepackage{amsmath}

\begin{document}
\[
\underbrace{\texttt{http://}}_{\text{service}}
\underbrace{\texttt{www.example.com/}}_{\text{address}}
\underbrace{\texttt{page.html?}}_{\text{page}}
\underbrace{\texttt{\vphantom{p}foo=bar}}_{\text{par}}\texttt{\&}
\underbrace{\texttt{\vphantom{p}bar=foo}}_{\text{par}}
\]
\end{document}

在此处输入图片描述

如果您有很多这样的描述,您还可以定义一个命令以使事情更加有序:

\documentclass{article}
\usepackage{amsmath}

\newcommand\linkdesc[2][]{%
    \underbrace{\texttt{#2}}_{\text{#1}}
}

\begin{document}
\[
\linkdesc[service]{http://}
\linkdesc[address]{www.example.com/}
\linkdesc[page]{page.html?}
\linkdesc[par]{\vphantom{p}foo=bar}\texttt{\&}
\linkdesc[par]{\vphantom{p}bar=foo}
\]
\end{document}

相关内容