在beamer中作公式标注

在beamer中作标注

tikzmark这个宏包很好用,语法也很简洁.

一个小例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
\usepackage{tikz}
\usetikzlibrary{tikzmark}

\begin{frame}{Thermal Resistance Model}
\vspace{1cm}
$$
\frac{R_t}{R_{1d\_0}} = \tikzmark{markrf} \frac{R_F}{R_{1d\_0}}\cdot \tikzmark{markr1d} \frac{R_{1d}}{R_{1d\_0}}\cdot \tikzmark{markrw} \left[ \frac{R_t}{R_{1d}}\left( \frac{R_F}{R_{1d\_0}} \right)^{-1} \right]
$$

$$
\begin{aligned}
& \frac{R_F}{R_{1d\_0}} = 1 + (\frac{w}{w_g})^2(\frac{w}{t})\sum_{n=1}^{\infty} \frac{8 \sin ^{2}\left(\frac{w_g n\pi}{2w}\right) * \cos^2(\frac{n\pi}{2})}{(n\pi)^3 \coth(\frac{tn\pi}{w} )} \\
& \frac{R_{1d}}{R_{1d\_0}} = 1 + 2/3 Kn_t \\
& \left[ \frac{R_t}{R_{1d}}\left( \frac{R_F}{R_{1d\_0}} \right)^{-1} \right] = r_w = 1 + A_w\left( w_g/w, w/t \right) \\
\end{aligned}
$$
\begin{tikzpicture}[
remember picture,
overlay,
expl/.style={draw=orange,rounded corners,text width=3cm},
arrow/.style={red!80!black,thick,->,>=latex}
]
\node[expl]
(RF)
at (1.5, 6.3)
{Thermal spreading part};
\node[expl]
(R1D)
at (5.5, 6.3)
{Cross-plane ballistic part};
\node[expl]
(rw)
at (9.5, 6.3)
{Heat source ballistic part};

\draw[arrow] (RF.south east) to[out=-20, in=90] ([xshift= 1ex, yshift=3ex]{pic cs:markrf});
\draw[arrow] (R1D.south) to[out=-90, in=20] ([xshift= 3ex, yshift=3ex]{pic cs:markr1d});
\draw[arrow] (rw.south west) to[out=-160, in=80] ([xshift= 8ex, yshift=3ex]{pic cs:markrw});
\end{tikzpicture}
\end{frame}

一些说明

  • 在想要注释的地方加上\tikzmark{<name>}用来标记这个点的位置,\tikzmark{<name>}本身不需要放在tikzpicture中.
  • 标注放在tikzpicture环境中,环境中需要加入remember picture参数. 加上这个参数是因为TikZ picture内部使用的是相对于其原点的相对坐标系,因此在改变TikZ picture的原点的位置时,整个环境会发生整体平移,内部的相对位置保持不变. 但是\tikzmark{<name>}标注的这个点是在picture外面的,而我们进行标注时,指定的是picture内部某一点和标注点之间的位置关系。因此picture本身不仅需要知道标注点在页面上的绝对位置,还需要知道自己在页面上的绝对位置,因此必须加入remember picture参数.
  • overlay参数也必须加上,这是为了控制当前tikzpicture的边界框。否则,它会把标注点也包进当前的picture中..这个位置就会发生错乱..(?)
  • \tikzmark使用的是pic坐标系,因此在tikzpicture中引用标注点时,需要加入pic cs:<marker>的前缀.
  • draw的箭头的弧度..正右向为弧度的0度,顺时针为负,逆时针为正,out为箭头出发时的弧度,in为箭头结束时的弧度.