我需要解释 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}