
数式に矢印を追加して (特に制限内で)、制限を解くときに特定の項に値が割り当てられていることを示すようにしようとしています。cancel パッケージとそのコマンド \cancelto{}{} を見つけましたが、2 つの問題があります。1. 項をキャンセルするかのように取り消し線が引かれます (当然のことですが)。2. 矢印は上向きにしか引かれません (上向きですが、右側の部分は気になりません)。一方、分数の分母の傾向を示す場合は、矢印を下向きに引く必要があるかもしれません。
ここで検索して、目的の作業を実行するカスタム コマンド (少し変更しました) を見つけ、実行してみましたが、残念ながら半分しか機能しません。残りの半分は、方程式内の他の要素のベースラインがすべて乱れるだけです。コマンドのコード (これも私のものではありません) と、誰かが助けてくれることを願って、私が抱えているエラーを残しておきます。私はまだ Tikz を学習中なので、自分では解決できませんが、そこに問題の答えがあるのではないかと考えています。
私が変更したコード:
\usetikzlibrary{calc}
\newcommand*\canc[1]{%
\mathchoice
{\scriptstyle#1}
{\scriptstyle#1}
{\scriptscriptstyle#1}
{\scriptscriptstyle#1}
}
\newcommand*\dtendto[2][0]{%
\kern9pt%
\begin{tikzpicture}[baseline=(current bounding box.center).anchor=east]
\node[anchor=east] (a) {$#2$};
\draw[->, color = red] ($(a.south)$) -- ($(a.south)-(-4pt,8pt)$) node
at ($(a.south)-(-8pt,12pt)$) {$\canc{#1}$};
\end{tikzpicture}
}
\newcommand*\utendto[2][0]{%
\kern9pt%
\begin{tikzpicture}[baseline=(current bounding box.south).anchor=east]
\node[anchor=east] (a) {$#2$};
\draw[->, color = red] ($(a.north)$) -- ($(a.north)+(4pt,8pt)$) node
at ($(a.north)+(8pt,12pt)$) {$\canc{#1}$};
\end{tikzpicture}
}
問題のある部分 (以前の部分ではこれが機能していましたが、正しいコードを使用すれば、それらでも確実に機能するはずです)。
\lim_{x\to\infty} \frac{\bcancel{x^5}\cdot(\utendto[2]{2}
-\utendto[0]{\frac{3}{x^2}} +
\utendto[0]{\frac{2}{x^4}})}{\bcancel{x^5}\cdot\left(4 + \frac{5}{x}
-\frac{100}{x^5}\right)}
表示方法のスナップショットです。私が望んでいるのは、方程式が矢印の存在を認識していないかのように、矢印が上部に追加されることです。今では、私が追加したものに反応して、+ 記号と - 記号 (\left( と \right) を使用した場合は括弧も) を中央に配置しようとし、通常の外観を歪めているようです。
そして、これが私が望む見た目をフォトショップで加工したバージョンです:
基本的に私が望んでいるのは、数式が矢印を無視し、矢印が存在しないかのようにタイプセットされることです (もちろん、垂直方向のスペースが上部または下部の他の線や数式と重ならないようにすることは除きます)。
矢印が北東ではなく南東に向かうことを除いて同じことを実行する \dtendto[]{} という新しいコマンドを作成しましたが、解決策はどちらも同じだと思うので、投稿が長くならないように省略しました。
前もって感謝します、
答え1
備考
inner xsep=0pt
とを追加しouter sep=0pt
、境界ボックスも制限しました。
calc
私の編集では、ライブラリは実際には必要ないので削除しました。さらに、数字と矢印の間のスペースを維持し、数字の下の余分なスペースをキャンセルするために、inner sep=0pt
ノードとshorten <=.3333em
矢印を設定しました。
ex
すべての値をスケーラブルな単位(および)に置き換えましたem
。
また、実装では\canc
常にデフォルトになるため、マクロは必要ありません。\scriptstyle
実装
\documentclass{article}
\pagestyle{empty}
\usepackage{tikz,cancel}
\renewcommand{\CancelColor}{\color{red}}
\newcommand*\dtendto[2][0]{%
\begin{tikzpicture}[baseline=(a.base),every node/.style={inner sep=0pt,outer sep=0pt}]
\node (a) {$#2$};
\path[red] (a.south) node (b) at +(0.5em,-3ex) {$\scriptstyle #1$};
\draw[->,red,shorten <=.3333em,shorten >=.3333em] (a) -- (b);
\pgfresetboundingbox
\path[use as bounding box] (a.north west) rectangle (a.south east |- b.south);
\end{tikzpicture}
}
\newcommand*\utendto[2][0]{%
\begin{tikzpicture}[baseline=(a.base),every node/.style={inner sep=0pt,outer sep=0pt}]
\node (a) {$#2$};
\path[red] (a.north) node (b) at +(0.5em,3ex) {$\scriptstyle #1$};
\draw[->,red,shorten <=.3333em,shorten >=.3333em] (a) -- (b);
\pgfresetboundingbox
\path[use as bounding box] (a.south west) rectangle (a.north east |- b.north);
\end{tikzpicture}
}
\begin{document}
\fbox{
$\displaystyle
\lim_{x\to\infty} \frac{\bcancel{x^5}\cdot(\utendto[2]{2}
-\utendto[0]{\frac{3}{x^2}} +
\utendto[0]{\frac{2}{x^4}})}{\bcancel{x^5}\cdot\left(\dtendto[4]{4} + \frac{5}{x}
-\frac{100}{x^5}\right)}
$
}
\end{document}
出力
実際の出力では、境界ボックスは強調表示されません。説明のために緑色に着色しただけです。