tikzcd 与独立文档类不兼容?

tikzcd 与独立文档类不兼容?

尝试tikz使用tikzcd独立文档中的包生成图表,以便图表周围不会添加多余的空白和页眉/页脚。

\documentclass[tikz, margin=1mm]{standalone}
\usepackage{tikz-cd}
\usetikzlibrary{arrows,arrows.meta}

\begin{document}
\tikzcdset{arrow style=tikz, diagrams={>=stealth}}
\begin{tikzpicture}
\begin{tikzcd}[column sep=normal]
                    & A \arrow[dl] & \\
  B \arrow[rr] \arrow[ur, "a", dashed, xshift=-2ex, yshift=0.5ex] &                            & C
\end{tikzcd}
\qquad
\begin{tikzcd}[column sep=normal]
& A \arrow[dr] & \\
B \arrow[rr] & & C \arrow[ul, "b", swap, dashed, xshift=2ex, yshift=0.5ex]
\end{tikzcd}
\end{tikzpicture}

\end{document}

但是,只生成了部分图表。将文档类更改为“文章”会生成完整图表。与“独立”类不兼容?如果是这样,我该如何创建不使用多余空白和页眉/页脚等的tikzcd图表?tikzcd

答案1

你永远不应该将 a 嵌套tikzpicture在另一个中tikzpicture; atikzcd就是 a tikzpicture。这standalone在尝试确定边界框时会造成彻底的混乱。

还删除尝试从文档主体中的tikz每个内容生成图像的选项。tikzpicture

编辑版本,其中\tikzcdset指令已移至前言,以免产生虚假空格;同样,\qquad移至 旁边\end{tikzcd}。还tikz-cd加载arrowsarrows.meta库。

\documentclass[margin=1mm]{standalone}
\usepackage{tikz-cd}

\tikzcdset{arrow style=tikz, diagrams={>=stealth}}

\begin{document}
\begin{tikzcd}[column sep=normal]
& A \arrow[dl] & \\
B \arrow[rr] \arrow[ur, "a", dashed, xshift=-2ex, yshift=0.5ex] & & C
\end{tikzcd}\qquad
\begin{tikzcd}[column sep=normal]
& A \arrow[dr] & \\
B \arrow[rr] & & C \arrow[ul, "b", swap, dashed, xshift=2ex, yshift=0.5ex]
\end{tikzcd}

\end{document}

在此处输入图片描述

相关内容