マルチパートノードの tikz におけるノードテキストベースライン

マルチパートノードの tikz におけるノードテキストベースライン

私も基本的に同じ問題を抱えていますこれ質問、マルチパート ノードの場合のみ: 3 つの部分から構成されるノードがあり、各部分にはテキストが含まれています。テキストをベースラインで揃えたいと考えています。 と を使用してこれを実現しようとしましたがtext heighttext depth通常のノードでは問題なく機能しますが、マルチパート ノードでは機能しません。下の画像でわかるように、ノードの最初の部分のみが目的の正しい配置を受け取り、他の 2 つはベースラインの下に拡張された文字によって「押し上げ」られます。

問題

これは私の LaTeX コードです:

\documentclass[tikz, 11pt,landscape]{article}

\usepackage[default,osfigures,scale=0.95]{opensans}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{tgbonum}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usetikzlibrary{calc}
\usetikzlibrary{arrows.meta}

\usepackage[a3paper]{geometry}

\begin{document}
\thispagestyle{empty}

\tikzset{normal/.style = {rectangle split, rectangle split horizontal, rectangle split parts=3, very thick, draw=black, minimum height=0.6cm,text height=1.5ex, text depth=0.25ex}}

\begin{tikzpicture}[remember picture, overlay]
    \node[normal] at (current page.center) {\nodepart{one} ag \nodepart{two} ag \nodepart{three} ag};
\end{tikzpicture}    
\end{document}

私は見つけた別の投稿透明度が最初の部分にのみ適用されるという同じ問題を抱えている人がいるようですが、その解決策は私にはうまくいきませんでした。私は複数行のテキストには関心がなく、実際に気にしているのはノードの 2 番目の部分の配置だけです。他の 2 つのテキストはデモンストレーションのために含めただけです。何を試しても、最初の部分にのみ適用されるようです。

編集:

私のスクリーンショットを例に挙げると、2 番目と 3 番目のボックスを 1 番目のボックスの高さに揃えたいのですが、1 番目のボックスを 2 番目と 3 番目のボックスの高さに揃えたくありません。これは、ベースラインより下に文字がないテキストがあると、高さがかなり高くなり、見た目がおかしくなるためです。間隔が非常に不均一に見えます。

答え1

@CarlaTex の優しさと、この質問に本当に必要なことを理解させてくれた彼女の説明に心から感謝します (今回は間違っていないことを願っています!)

回避策としては、\rule正しい垂直寸法 (高さと奥行き) を持つ非表示のものを使用することです。

\documentclass[tikz, 11pt,landscape]{article}

\usepackage[default,osfigures,scale=0.95]{opensans}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{tgbonum}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usetikzlibrary{calc}
\usetikzlibrary{arrows.meta}

\usepackage[a3paper]{geometry}

\begin{document}
\thispagestyle{empty}

\tikzset{
    normal/.style = {
       rectangle split, 
       rectangle split horizontal, 
       rectangle split parts=3, 
       very thick, draw=black, 
       minimum height=2cm,
       text height=1.5cm, 
       text depth=0.25cm
                    }
        }

\begin{tikzpicture}[remember picture, overlay]
    \node[normal] at (current page.center) {\nodepart{one} ag 
            \nodepart{two} \rule[-0.25cm]{0pt}{1.75cm}ag 
             \nodepart{three} \rule[-0.25cm]{0pt}{1.75cm}ag};
\end{tikzpicture}    
\end{document}

ここに画像の説明を入力してください

関連情報