代码中存在什么问题?

代码中存在什么问题?

请参阅下面给出的代码。实际上,我正在寻找数字 36 的树。

有人能让我知道我做错了什么吗?

\documentclass[12pt, a4paper]{article}
\usepackage[a4paper,top=1 in,bottom=1 in,left=0.7 in,right=0.7 in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[misc]{ifsym}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{pst-tree}
\psset{levelsep=1,treesep=1,nodesep=2pt}
\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage{lastpage}
\lhead{}
\rhead{}
\chead{}
\rfoot{Page \thepage \hspace{1pt} of \pageref{LastPage}}
\lfoot{}
\cfoot{}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
\begin{document}
\preview
\psTree{\TR{36}}
\Tcircle{2}
\psTree{\TR{18}}
\Tcircle{2}
\psTree{\TR{9}}
\Tcircle{3}
\Tcircle{3}
\endpsTree
\endpsTree
\endpsTree
\endpreview
\end{document}

答案1

我的水晶球报告说你遇到的第一个错误是

! Undefined control sequence.
<recently read> \c@lor@to@ps 

然后出现多个如下形式的错误

! Undefined control sequence.
\XC@usec@lor ...string \color@ #1#2\endcsname \@@ 
                                                  \fi \space 
l.25 \Tcircle{2}

这里的 Tcircle 只是错误的位置(第 25 行),未定义的命令是,\@@但使用 TeX 时最好忽略除第一个错误之外的所有错误。

您使用的 pstricks 需要 latex 和 dvips,而不是 pdflatex。如果您使用 pdflatex,则会收到所示的错误,

如果将发布的代码与 latex 一起使用,则运行时不会出现错误,然后您需要使用 dvips 和 ps2pdf 来获取 PDF 输出。

答案2

不要使用环境preview。如果使用以下命令运行,请使用包auto-pst-pdf和环境:postscriptpdflatex --shell-escape <file>

\documentclass[12pt, a4paper]{article}
\usepackage[a4paper,top=1 in,bottom=1 in,left=0.7 in,right=0.7 in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[misc]{ifsym}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{auto-pst-pdf}
\ifpdf
  \usepackage{tikz}
\else
  \usepackage{pst-tree}
  \psset{levelsep=1,treesep=1,nodesep=2pt}
\fi

\begin{document}
\begin{postscript}
    \psTree{\TR{36}}
    \Tcircle{2}
    \psTree{\TR{18}}
    \Tcircle{2}
    \psTree{\TR{9}}
    \Tcircle{3}
    \Tcircle{3}
    \endpsTree
    \endpsTree
    \endpsTree
\end{postscript}
\end{document}

使用xelatex而不是 可以pdflatex让生活变得更轻松。那么您不需要包auto-pst-pdf和环境postscript

\documentclass[12pt, a4paper]{article}% xelatex <file>
\usepackage[a4paper,top=1 in,bottom=1 in,left=0.7 in,right=0.7 in]{geometry}
\usepackage[misc]{ifsym}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{fontspec}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{pst-tree}
\psset{levelsep=1,treesep=1,nodesep=2pt}

\begin{document}
    \psTree{\TR{36}}
    \Tcircle{2}
    \psTree{\TR{18}}
    \Tcircle{2}
    \psTree{\TR{9}}
    \Tcircle{3}
    \Tcircle{3}
    \endpsTree
    \endpsTree
    \endpsTree

\end{document}

相关内容