我想写一个带有上下箭头和文字的方程式。下面是我的代码。当我编译此代码时,我收到错误,我不明白为什么。有人能帮忙吗?
\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
环境。
我建议一种更简单的编码方式:将等式的内容放在里面\[ \]
,并使用\boxed
from 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}