tikzpicture
環境内に環境を配置するとitemize
、箇条書きが画像に対して正しく配置されませんtikz
。この場合、「正しい」とは、箇条書きが画像に対して垂直方向に中央に配置されることを意味します。
これまでは手動で調整してbaseline
望みどおりの結果が得られましたが、調整は使用しているフォントなどによって異なります。魔法の数字ベースラインの調整で、使用しているフォントに自動的に調整されるようにします。これを実現する方法について何かアドバイスはありますか?
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item
\begin{tikzpicture}%[baseline = -2.5pt] % magic number tweak
\draw [very thick, ->] (0,0) -- (2,0);
\node[left] at (0,0) {XX};
\node[right] at (2,0) {YY};
\end{tikzpicture}
\end{itemize}
\end{document}
答え1
ノード内の既知の自然なポイントに揃える方がよいでしょう。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item
\begin{tikzpicture}[baseline=(A.base)] % magic number tweak
\draw [very thick, ->] (0,0) -- (2,0);
\node[left] at (0,0) (A) {XX};
\node[right] at (2,0) {YY};
\end{tikzpicture}
\item \( X \)
\end{itemize}
\end{document}
水平方向の配置を修正したい場合 (これはあなたが尋ねなかったが、Barbara Beeton が尋ねた)、もう少し努力する必要があるでしょう。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{itemize}
\item
\begin{tikzpicture}[baseline=(A.base)] % magic number tweak
\node at (0,0) (A) {XX};
\pgfkeysgetvalue{/pgf/inner xsep}{\myAxsep}
\node at (2,0) (B) {YY};
\pgfkeysgetvalue{/pgf/inner xsep}{\myBxsep}
\draw [very thick, ->] (A) -- (B);
\pgfresetboundingbox
\useasboundingbox ($(A.south west)+(\myAxsep,0)$) rectangle
($(B.north east)-(\myBxsep,0)$);
\end{tikzpicture}
and some text.
\item \( X \)
\end{itemize}
\end{document}
各ボックスの後の x 間隔の値をチェックすることに過度に注意していたかもしれませんが、より複雑なコードではこれが必要になる可能性があります。