求助:如何修改LaTeX代码在公式左侧添加侧边注释箭头
嘿,我来帮你把箭头挪到公式左侧~
你参考的那个方案默认是把注释放在公式右侧的,要改到左侧其实很简单,只需要调整TikZ节点的锚点和箭头方向就行。这里给你两种实用的修改思路:
方法1:修改命令默认行为(适合大部分注释在左侧的场景)
直接把命令的默认方向从right换成left,以后调用时不用额外参数:
\documentclass{article} \usepackage{amsmath,tikz} \usetikzlibrary{arrows.meta} % 将默认方向改为left,箭头指向公式左侧 \newcommand{\sidecomment}[2][left]{% \tikz[overlay,remember picture,baseline]{% \node[inner sep=0pt,anchor=left] (tmp) {$\vphantom{#2}$}; \draw[-Latex] (tmp) -- ++(left:1em) node[anchor=right] {#2}; }% } \begin{document} \[ E = mc^2 \sidecomment{质能方程核心公式} \] \end{document}
方法2:调用时手动指定左侧(保留原命令灵活性)
如果需要偶尔切换左右方向,可以保留原命令的默认设置,调用时传left参数即可:
\documentclass{article} \usepackage{amsmath,tikz} \usetikzlibrary{arrows.meta} % 保留原命令默认right,支持手动切换方向 \newcommand{\sidecomment}[2][right]{% \tikz[overlay,remember picture,baseline]{% \node[inner sep=0pt,anchor=#1] (tmp) {$\vphantom{#2}$}; % 自动匹配注释节点的锚点方向 \draw[-Latex] (tmp) -- ++(#1:1em) node[anchor={\ifx#1left\right\else\left\fi}] {#2}; }% } \begin{document} % 左侧注释示例 \[ E = mc^2 \sidecomment[left]{质能方程核心公式} \] % 右侧注释示例(保留原功能) \[ F = ma \sidecomment{牛顿第二定律} \] \end{document}
关键注意点
overlay和remember picture:确保箭头不会挤占公式的水平排版空间,避免公式错位baseline:让箭头的垂直位置和公式中心对齐,视觉上更协调- 注释节点锚点:箭头方向和注释节点锚点要对应(比如箭头向左时,注释用
right锚点贴紧箭头末端)
这样修改后,箭头就会准确出现在公式左侧啦~
内容的提问来源于stack exchange,提问作者jolien
相关产品推荐
相关产品推荐

