tikz 環境内で箇条書きの箇条書きを揃える

tikz 環境内で箇条書きの箇条書きを揃える

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 間隔の値をチェックすることに過度に注意していたかもしれませんが、より複雑なコードではこれが必要になる可能性があります。

関連情報