使用 TikZ 对齐无衬线文本

使用 TikZ 对齐无衬线文本

考虑以下 MWE

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}

\node[anchor=west, inner sep=0pt, draw, very thin, rectangle] (a) at (0,0) {\scalebox{15}{\sffamily LARGE}};

\node[anchor=west, inner sep=0pt, draw, very thin, rectangle] (b) at (0,-4) {\scalebox{3}{\sffamily smaller text}};

\draw[blue] (a.west) ++ (0,-2cm) -- ++(0,4cm);
\draw[red] (a.west) ++ (-0.2cm,0) -- ++(0.4cm,0);
\draw[red] (a.west) ++ (0,-0.2cm) -- ++(0,0.4cm);

\draw[blue] (b.west) ++ (0,-2cm) -- ++(0,4cm);
\draw[red] (b.west) ++ (-0.2cm,0) -- ++(0.4cm,0);
\draw[red] (b.west) ++ (0,-0.2cm) -- ++(0,0.4cm);

\end{tikzpicture}
\end{document}

其结果如下:

MWE的结果

为什么“边界框”和字母 L 之间有一些空格?我想精确删除文本周围的空白,以便 L 的垂直线和下方较小的文本完美对齐。

此外,我想缩放较小的文本,使其宽度与顶部文本完全相同。这怎么可能呢?

答案1

它与 tikz 无关。tikz 只能使用字体指标,它看不到墨水,并且字母有侧边距:

\documentclass{article}
\usepackage{tikz}
\usepackage[showframe]{geometry}
\parindent=0pt
\begin{document}

\fontsize{1cm}{1.3cm}\selectfont \sffamily
LARGE

TEST

XXX

\tikz[overlay]\draw[red](0,0)--++(0,5);
\end{document}

在此处输入图片描述

相关内容