我正在使用 xskak 和 chessboard 来排版游戏。我如何才能将棋步的打印限制在棋盘的范围内?我基本上是想限制文本框的宽度。在下图中,您可以看到棋步延伸到棋盘区域的左侧和右侧。
以下是这款游戏的 MWE:
\documentclass{article}
\usepackage[pdftex,active,tightpage]{preview}
\setlength\PreviewBorder{5mm}
\usepackage{xskak}
\usepackage{chessboard}
\begin{document}
\begin{preview}
\newchessgame
\mainline{1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be3 e6
7. g4 e5 8. Nf5 g6 9. g5}\\
\chessboard[label=False]
\end{preview}
\end{document}
谢谢!
答案1
您只需将动作放入\parbox
所需宽度即可:
代码如下:
\documentclass{article}
\usepackage[pdftex,active,tightpage]{preview}
\setlength\PreviewBorder{5mm}
\usepackage{xskak}
\usepackage{chessboard}
\begin{document}
\begin{preview}
\newchessgame
\parbox{60mm}{
\mainline{1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be3 e6
7. g4 e5 8. Nf5 g6 9. g5}
}
\chessboard[label=False]
\end{preview}
\end{document}
编辑 鉴于以下评论,也许您想使用类似这样的内容:
\documentclass{article}
\usepackage{xskak}
\begin{document}
\newchessgame
\hspace*{7mm}\mainline{1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6}\\
\hspace*{7mm}\mainline{5. Nc3 a6 6. Be3 e6 7. g4 e5 8. Nf5 g6 9. g5}
\par\leavevmode\vspace*{-60mm}
\chessboard[label=False]
\end{document}
得出的结果为:
请注意,我已删除了预览并使用两个\mainline
命令来控制行距。