![水平空间问题](https://linux22.com/image/385341/%E6%B0%B4%E5%B9%B3%E7%A9%BA%E9%97%B4%E9%97%AE%E9%A2%98.png)
我现在注意到 hspace 存在空间问题,尤其是该命令:
\newcommand{\Div}[1]{\displaystyle \boldsymbol{\nabla}\hspace{-.1em}\cdot\hspace{-.1em} #1}
外部的笔记:
%<*notes012>
\footnote{ricordando che se $\Div{u}=0$ allora $\barbII{\tau}=-\textbf{p}\I+2\mu\barbII{e}$}
%</notes012>
L'equazione costitutiva per fluidi newtoniani \eqref{eq062}, può essere espressa nella sua forma per componenti\loadnote{012}:
\begin{equation}\label{eq063}
\begin{aligned}
\tau_{ij}=-\textbf{p}\delta_{ij}+2\mu\left( \eij-\Fra{1}{3}e_{kk}\delta_{ij}\right)
\text{dove $\delta_{ij}$ = }~\left\{\begin{array}{rcl}
1&\rightarrow& \text{se i = j;}\\
0&\rightarrow& \text{se i $\neq$ j};\\
\end{array}\right.\\
\end{aligned}
\end{equation}
\begin{tikzpicture}[right node/.style={rectangle,draw}]
node{%
$\begin{aligned}
\tikzmarknode{ex1}e_{kk}\tikzmarknode{ex2}=tr(\barbII{e})=\tikzmarknode{ex3}\Div{u}
\end{aligned}$};
\draw[->,>=latex]([shift={(-70pt,-5pt)}]pic cs:ex1-ex2) |- ++(80pt,-25pt) node[right,text width=6cm]
{ Considera la somma degli elementi della diagonale di $\barbII{e}$ e non coinvolge gli elementi ij;};
\draw[->,>=latex]([shift={(-8pt,-15pt)}]pic cs:ex3) |- ++(16pt,-52pt) node[right,text width=6cm]
{Velocità di Deformazione Volumetrica (Comprimibiltà);};
\end{tikzpicture}
有\nabla}\hspace{-.1em}\cdot\hspace{-.1em}
不同的距离。当将其插入命令时,\begin{tikzpicture}....
距离不受尊重
答案1
这可能不是一个答案(但考虑到您没有向我们提供一些可编译的代码,这是我目前能做的最好的事情)。这个版本
- 避免嵌套
tikzpicture
和 \tikzmarknode
以更合适的方式使用。
除此之外,我猜测ed 你的宏在做什么。我删除了冗余部分(你为什么aligned
在这里添加,你没有使用它)。
\documentclass[fleqn]{article}
\usepackage{amsmath,bbm}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\newcommand{\Div}[1]{\displaystyle \boldsymbol{\nabla}\!\cdot\! #1}
\newcommand{\eij}[0]{\ensuremath{e_{ij}}}
\newcommand{\Fra}[2]{\frac{#1}{#2}}
\newcommand{\barbII}[1]{\underset{=}{#1}}
\DeclareMathOperator{\tr}{tr}
\begin{document}
\begin{align}
\tau_{ij}&=-\boldsymbol{p}\delta_{ij}+2\mu\left( \eij-\Fra{1}{3}e_{kk}\delta_{ij}\right)
\text{dove $\delta_{ij}$ = }~\begin{cases}
1&\rightarrow \text{se}~i = j;\\
0&\rightarrow \text{se}~i\neq j;
\end{cases}\label{eq063}\\
\tikzmarknode{ex1}{e_{kk}}&=\tr(\barbII{e})=\Div{\tikzmarknode{ex3}{u}}
\end{align}
\bigskip\bigskip\bigskip\bigskip
\begin{tikzpicture}[right node/.style={rectangle,draw},overlay,remember picture]
\draw[-latex]([yshift=-1pt]ex1.south) |- ++(86pt,-25pt)
node[right,text width=6cm] (cons)
{ Considera la somma degli elementi della diagonale di $\barbII{e}$ e non coinvolge gli elementi ij;};
\draw[-latex,preaction={draw,white,ultra thick,-}]([yshift=-1pt]ex3.south) -- ++(0,-60pt) coordinate(aux)
-- (aux -| cons.west) node[right,text width=6cm]
{Velocit\'a di Deformazione Volumetrica (Comprimibilt\'a);};
\end{tikzpicture}
blah blah\footnote{ricordando che se $\Div{u}=0$ allora $\barbII{\tau}=-\boldsymbol{p}
\boldsymbol{I}+2\mu\barbII{e}$}
\end{document}
答案2
我猜你想要负空间是为了减少中心点和两边符号之间的距离。
使用该em
单位从一开始就是错误的,因为它取决于公式开始时的当前文本字体。在tikzpicture
字体中,em 单位可能\nullfont
对应于零,无论如何,它通常是不可预测的。
还要注意\displaystyle
“nabla+centered dot+variable”对排版没有实际用处和将会损害配方的其余部分。
我的选择是,同时加载bm
包后 amsmath
\boldsymbol
(该包提供了对的更好替代\bm
,但允许\boldsymbol
作为 的同义词\bm
,因此您的代码不需要更改):
\newcommand{\Div}{\bm{\nabla}\!\cdot\!}
该\!
命令使用“数学单位”插入一些负空间,这些单位与当前文本字体无关。无需使用参数;但是,\Div u
和\Div{u}
会执行相同的操作。
你还应该避免\textbf
在公式中数学符号:正确的命令是,\mathbf
因为它不会受到公式开始时的字体参数(例如形状)的影响。
顺便说一下,输入如下
\text{dove $\delta_{ij}$ = }~\left\{\begin{array}{rcl}
1&\rightarrow& \text{se i = j;}\\
0&\rightarrow& \text{se i $\neq$ j};\\
在很多方面都是不正确的。应该
\text{dove }\delta_{ij} =
\begin{cases}
1 & \text{se $i = j$;} \\
0 & \text{se $i \neq j$;}
\end{cases}
我从未见过案例值和条件值之间的箭头;不过,这不是重点。字母“i”和“j”表示与 下标中的相同对象\delta
,因此它们必须以相同的方式排版,即数学斜体。
作为一种风格化的评论,“克罗内克三角洲”是一种非常普遍的符号,因此不应将其作为更重要的解释的一部分进行解释:这非常分散注意力。事先定义符号并在不明确提及的情况下使用它。
语法注意事项:Velocit\'a
排版了一个尖音符,而它应该是坟重音。因此Velocit\`a
。或者,为什么不利用现代操作系统和类型Velocità
?