Проблема рендеринга с пакетом tikz-cd и классом документа gtpart.cls

Проблема рендеринга с пакетом tikz-cd и классом документа gtpart.cls

Мне нужно сделать несколько довольно сложных коммутативных диаграмм для математической работы, но по какой-то причине моя установка TeXShop испытывает трудности с отображением даже простой диаграммы. Вот минимальный рабочий пример плохого поведения:

\documentclass{gtpart}


\usepackage{tikz-cd}


\begin{document}

Examples from the \{tikzcd\} manual, section 1.2.

Example 1:

\begin{tikzcd}
A \arrow[rd] \arrow[r, "\phi"] & B \\
& C
\end{tikzcd}

Example 2: 

\begin{tikzcd}
A \arrow[r, "\phi"] \arrow[d, red]
& B \arrow[d, "\psi" red] \\
C \arrow[r, red, "\eta" blue]
& D
\end{tikzcd}

Example 4:

\begin{tikzcd}
T
\arrow[drr, bend left, "x"]
\arrow[ddr, bend right, "y"]
\arrow[dr, dotted, "{(x,y)}" description] & & \\
& X \times_Z Y \arrow[r, "p"] \arrow[d, "q"]
& X \arrow[d, "f"] \\
& Y \arrow[r, "g"]
& Z
\end{tikzcd}

\end{document}

А вот вывод в PDF-документе:

введите описание изображения здесь

Как видите, это вряд ли то, что я хотел бы видеть в статье, а для более сложных диаграмм ситуация становится еще хуже! Я удалил все дистрибутивы LaTeX и дважды переустановил MacTeX (все 4,6 ГБ), и я все еще получаю этот тип рендеринга. Я работаю на MacBook Pro на OS X 10.7.5. Кто-нибудь знает, что здесь может происходить? Дайте мне знать, что еще я могу предоставить, чтобы кто-то мне помог! Я бы очень хотел, чтобы tikz-cd работал, так как это, кажется, отличный пакет для сложных коммутативных диаграмм.

ПРИМЕЧАНИЯ: После создания минимального рабочего примера, похоже, что эта проблема — конфликт с тегом \documentclass{gtpart}; когда я использую \documentclass{article}, диаграммы отображаются правильно. Вотссылка на файл gtpart.cls.

Спасибо всем, кто это просмотрел!

решение1

Примитивный параметр TeX mathsurroundпочти никогда не изменяется и, tikz-cdочевидно, не ожидает, что он изменится, но этот класс устанавливает его в .8pt Возвращение его к 0 кажется самым простым. (Вы можете сделать это локально, просто вокруг tikz-cd)

\documentclass{gtpart}


\usepackage{tikz-cd}

\setlength\mathsurround{0pt}%<<<<<<<<<<<<<<<<<<<<<<<<


\begin{document}

Examples from the \{tikzcd\} manual, section 1.2.

Example 1:

\begin{tikzcd}
A \arrow[rd] \arrow[r, "\phi"] & B \\
& C
\end{tikzcd}

Example 2: 

\begin{tikzcd}
A \arrow[r, "\phi"] \arrow[d, red]
& B \arrow[d, "\psi" red] \\
C \arrow[r, red, "\eta" blue]
& D
\end{tikzcd}

Example 4:

\begin{tikzcd}
T
\arrow[drr, bend left, "x"]
\arrow[ddr, bend right, "y"]
\arrow[dr, dotted, "{(x,y)}" description] & & \\
& X \times_Z Y \arrow[r, "p"] \arrow[d, "q"]
& X \arrow[d, "f"] \\
& Y \arrow[r, "g"]
& Z
\end{tikzcd}

\end{document}

Связанный контент