tikz 中多部分節點的節點文字基線

tikz 中多部分節點的節點文字基線

我基本上有完全相同的問題問題,僅適用於多部分節點:我有一個由 3 部分組成的節點,每個部分都包含文字。我想讓文字按基線對齊。我嘗試使用text heightand來實現此目的text depth,它適用於普通節點,但不適用於多部分節點。如下圖所示,只有節點的第一部分獲得了我想要實現的正確對齊方式,其他兩個部分則透過延伸到基線以下的字元「向上推」。

問題

這是我的乳膠代碼:

\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}

我發現另一個帖子關於有人有同樣的透明度問題,僅適用於第一部分,但其解決方案對我來說不起作用。我不關心多行文本,實際上只關心節點第二部分的對齊方式,我只是包含了其他兩個文本進行演示。似乎無論我嘗試什麼,它都只應用於第一部分。

編輯:

以我的螢幕截圖為例:我希望第二個和第三個框與第一個框的高度對齊。我不想將第一個框與第二個和第三個框的高度對齊,因為它相當高,並且如果我的文本沒有低於基線的字符,看起來會很奇怪。間距會顯得非常不均勻。

答案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}

在此輸入影像描述

相關內容