修剪 tikz 节点中的尾随空格

修剪 tikz 节点中的尾随空格

我已经将几个tikz图形定义为自定义\myfig命令,我需要将它们放置在其他图形中并重新缩放。这个简单的任务是 真的很困难,因为由于某种原因,tikz盒子和节点没有被正确修剪。

我不明白图片中边距和尾随空格的一般功能tikz:例如,为什么在这个随机的蓝色路径下面有这么多空白?

\documentclass[a4paper, 12pt]{report}

\usepackage{tikz}
    \tikzset{x=1pt, y=1pt, z=1pt}

\begin{document}

Why

% a reusable figure
\def\myfig{\begin{tikzpicture}
        [inner sep=0, outer sep=0] % just in case
    \path[fill=blue] (0, 0) % a random path
        ..  controls (10, 10)
                 and (10, -10) ..
                     (20, 20) -- cycle;
\end{tikzpicture}}

% an actual figure
in \begin{tikzpicture}
    [inner sep=0, outer sep=0] % just in case
    \node
        [draw, inner sep=0, outer sep=0] % just in case
        () at (0, 0) {\resizebox{20pt}{!}{\myfig}};
\end{tikzpicture} the

\LaTeX?

\end{document}

在此处输入图片描述

.. 我该如何将其删除?

我觉得这与这个问题这个问题至今仍未得到解答。

[编辑]现在已经得到解答,这样我就可以用更通用的方式解决我的问题这个答案:)

感谢您的帮助。

答案1

您需要修剪您的身材。事实上,它们的曲线设计(不可见)点.. controls ..远低于可见形状。

在此处输入图片描述

    \documentclass[a4paper, 12pt]{report}
\usepackage{tikz}
    \tikzset{x=1pt, y=1pt, z=1pt}

\begin{document}
Why

% a reusable figure
\def\myfig{\begin{tikzpicture}
        [inner sep=0, outer sep=0] % just in case
    \clip (0,0) rectangle (20,20);% <--- added
    \path[fill=blue] ( 0,  0) % a random path
        ..  controls (10, 10)
                 and (10,-10) ..
                     (20, 20) -- cycle;
\end{tikzpicture}}

% an actual figure
in \begin{tikzpicture}
    [inner sep=0, outer sep=0] % just in case
    \node
        [draw, inner sep=0, outer sep=0] % just in case
        at (0, 0) {\myfig};
\end{tikzpicture} the

\LaTeX?
\end{document}

相关内容