代码错误,pstricks

代码错误,pstricks

我想写一个带有上下箭头和文字的方程式。下面是我的代码。当我编译此代码时,我收到错误,我不明白为什么。有人能帮忙吗?

\documentclass[a4paper,12pt]{article}

\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{amsfonts}

\usepackage{pstricks-add,pst-bezier}

\usepackage{tcolorbox}

\newtcolorbox{question}[1]{arc=1mm,colframe=cyan,before
skip=11pt,after skip=11pt,breakable,colbacktitle=cyan,colback=white,coltitle=black,fonttitle=\bfseries,title=#1}

\begin{document}

        \begin{question}
            \begin{center}
                \begin{pspicture*}(-0.1,-1.4)(0.1,1.6)
                    \rnode{A}{\psframebox{$\alpha\beta + \alpha\gamma$}} $=$ \rnode{B}{\psframebox{$\alpha(\beta + \gamma$)}}
                    \ncbar[nodesep=5pt,angle=90]{->}{A}{B}
                    \naput{\text{{\small some text}}}
                    \ncbar[nodesep=5pt,angle=-90]{->}{B}{A}
                    \naput{\text{{\small some text}}}
                \end{pspicture*}
            \end{center}
        \end{question}

\end{document}

答案1

问题是在进入环境时添加\leavevmode。最好使用centering而不是环境center,以避免不必要的垂直空间。

您不必指定pspicture环境的尺寸(未加星号!),如果您使用auto-pst-pdf进行编译pdflatex,则可以改用postscript环境。

我建议一种更简单的编码方式:将等式的内容放在里面\[ \],并使用\boxedfrom amsmath,而不是不必要的\psframebox

这两个代码如下:

\documentclass[a4paper,12pt]{article}

\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{amsfonts}

\usepackage{pstricks-add,pst-bezier, auto-pst-pdf}

\usepackage{tcolorbox}

\newtcolorbox{question}[1]{arc=1mm,colframe=cyan,before
skip=11pt,after skip=11pt,colbacktitle=cyan,colback=white,coltitle=black,fonttitle=\bfseries,title=#1}%breakable,

\begin{document}

\begin{question}
    \leavevmode
    \centering
    \begin{postscript}%
        \rnode{A}{\psframebox{$α\beta + α\gamma$}} $=$ \rnode{B}{\psframebox{$α(β+ \gamma$)}}
        \ncbar[nodesep=5pt,angle=90]{->}{A}{B}
        \naput{\text{{\small some text}}}
        \ncbar[nodesep=5pt,angle=-90]{->}{B}{A}
        \naput{\text{{\small some text}}}
    \end{postscript}
\end{question}
\bigskip
\begin{question}
    \leavevmode%
    \setlength\fboxrule{0.8pt}
    \[%
        \begin{postscript}
            \rnode{A}{\boxed{α\beta + α\gamma}} = \rnode{B}{\boxed{α(β+ γ)}}
            \ncbar[nodesep=5pt,angle=90]{->}{A}{B}
            \naput{\text{{\small some text}}}
            \ncbar[nodesep=5pt,angle=-90]{->}{B}{A}
            \naput{\text{{\small some text}}}
        \end{postscript}
    \]%
\end{question}

\end{document} 

在此处输入图片描述

相关内容