似乎無法繪製非常小的 TikZ 形狀?

似乎無法繪製非常小的 TikZ 形狀?

我正在嘗試繪製適合圓圈的小標籤,或至少與它們成比例。但出於某種原因,我似乎無法讓它們比這個更小:

例子

我知道物體的尺寸可能有物理限制,但我覺得它應該低於圖片上的尺寸。

這是代碼:

\documentclass{article}

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

\newlength{\step}

\tikzset{
  buffer/.style={
    draw,
    shape border rotate=0,
    regular polygon,
    regular polygon sides=3,
    fill=red,
    node distance=1pt,
    minimum height=1pt
  }
}

\begin{document}
  \begin{tikzpicture}
    \setlength{\step}{\dimexpr 10cm / 18 \relax}

    \draw[step=\step] (0, 0) grid (10, 10);

    \draw[draw = white, fill = black, line width = 0.1mm]
      (2 * \step, 3 * \step)
      circle [radius = 0.2575cm]
      node[color = white, font={\fontsize{0.1pt}{12}\selectfont}] {1};
    \draw[draw = black, fill = white, line width = 0.1mm]
      (3 * \step, 3 * \step)
      circle [radius = 0.2575cm]
      node[color = black] {2};
    \draw[draw = white, fill = black, line width = 0.1mm]
      (4 * \step, 3 * \step)
      circle [radius = 0.2575cm];
    \draw (3 * \step, 3 * \step) node[
      minimum size=1pt,
      draw] {};
    \draw node[buffer] at (4 * \step, 3 * \step) {};
  \end{tikzpicture}
\end{document}

順便問一下,為什麼 TikZ 形狀設定為minimum size?不應該還有一個嗎maximum size?為什麼不一樣size呢?

答案1

  • 節點的內容和圍繞其繪製的形狀之間有一些填充。可以透過修改inner sep參數來調整

  • 如果您想使用極端的字體大小(小或大),使用可縮放字體通常更容易,例如透過載入lmodern套件


\documentclass[border=0.2cm]{standalone}

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

\tikzset{
  buffer/.style={
    draw,
    shape border rotate=0,
    regular polygon,
    regular polygon sides=3,
    fill=red,
    node distance=1pt,
    minimum height=1pt
  }
}

\usepackage{lmodern}

\begin{document}
  \begin{tikzpicture}[inner sep=0pt]
    \node[fill=black,font={\fontsize{0.1}{12}\selectfont}] at (0,0) {1};
    \node[draw] at (1,0) {};
    \node[buffer] at (2,0) {};
  \end{tikzpicture}
\end{document}

在此輸入影像描述

相關內容