具有居中自定义文本的 Tikzset 节点

具有居中自定义文本的 Tikzset 节点

好吧,我放弃了。我想要一个看起来像常见的 PI&D 涡轮机或压缩机符号的自定义节点:

\tikzset{TC/.style={
    minimum height=2cm,
    minimum width=2cm,
    path picture={
    \draw (-1,0.5) -- (1,1) -- ++ (0,-2) -- (-1,-0.5) -- cycle;
},
node contents={}
}
} 

在此处输入图片描述

我现在想在其中添加自定义文本,例如“HP\ Turb”。但是,它总是与边框重叠,并且永远不会对齐:

\tikzset{TC/.style={
    minimum height=2cm,
    minimum width=2cm,
    text height=0.8cm,
    text width=1.8cm,
    align=center,
    path picture={
    \draw (-1,0.5) -- (1,1) -- ++ (0,-2) -- (-1,-0.5) -- cycle;
},
node contents={#1}
}
} 

几乎所有东西都关闭了:

在此处输入图片描述

我做错了什么?编辑:我还想在每个角落和每条边的中间放置锚点。我该如何实现呢?

答案1

我建议您使用内置trapezium节点形状(需要shapes.geometric库)。

在此处输入图片描述

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{shapes.geometric}

\tikzset{mynode/.style={draw, trapezium, trapezium angle=70, trapezium stretches=true, minimum height=2cm, minimum width=2cm, shape border rotate=90, align=center}}

\begin{document}

\begin{tikzpicture}
\node[mynode] at (0,0){HP\\Turb};
\end{tikzpicture}

\end{document}

相关内容