tikz 中多部分节点的节点文本基线

tikz 中多部分节点的节点文本基线

我基本上有同样的问题问题,仅适用于多部分节点:我有一个由 3 个部分组成的节点,每个部分都包含文本。我想让文本按其基线对齐。我尝试使用 和 来实现这一点text heighttext depth这对普通节点来说很好,但对多部分节点则不行。如下图所示,只有节点的第一部分获得了我想要实现的正确对齐,其他两个部分被延伸到基线以下的字符“推高”。

The Problem

这是我的乳胶代码:

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

enter image description here

相关内容