Latex可以排版容易排版中国象棋, 围棋, 国际象棋棋谱和乐谱, 详情请见.

http://bbs.chinatex.org/forum.php?mod=viewthread&tid=4987&extra=page=1

这里以中国象棋棋谱为例:

中国象棋所需宏包:cchess(Chinese chess)\usepackage{cchess}

\normalboard 画出棋盘,然后用 position 环境置子,

纵线自左向右为:a, b, . . . , i,横线由下而上为:1, 2, . . . , 10

置子命令为

\piece {x}{y}{?}

x, y 为横纵坐标,如前所述,? 为棋子,符 号:

R車    N馬    B象    G士    K將    G士    B象    N馬    R車
                                                                           
         C砲                                                C砲        
P卒             P卒             P卒             P卒             P卒
                                                                           
       楚河                                             漢界           
                                                                            
p兵             p兵             p兵             p兵             p兵
         c炮                                                 c炮        
                                                                           
r車     n馬    b相    g仕    k 帥    g 仕   b相     n馬    r車
 

基本上红子就是黑子的小写字母版本

利用 \textpiece 命令可以排出具体的着法,比如:

\textpiece{c}八进四

命令可以达到 “炮八进四” 的效果

下面来看一个具体的源文件mychess.tex

 \documentclass{article}
\usepackage{cchess}
\begin{document}
\normalboard
\begin{position}
\piece{a}{}{r} \piece{i}{}{r}
\piece{b}{}{n} \piece{h}{}{n}
\piece{c}{}{b} \piece{g}{}{b}
\piece{d}{}{g} \piece{f}{}{g}
\piece{e}{}{c} \piece{e}{}{c}
\piece{a}{}{p} \piece{c}{}{p}
\piece{e}{}{p} \piece{g}{}{p}
\piece{i}{}{p} \piece{e}{}{k}
\piece{a}{}{R} \piece{i}{}{R}
\piece{a}{}{N} \piece{g}{}{N}
\piece{c}{}{B} \piece{g}{}{B}
\piece{d}{}{G} \piece{f}{}{G}
\piece{b}{}{C} \piece{h}{}{C}
\piece{a}{}{P} \piece{c}{}{P}
\piece{g}{}{P}
\piece{i}{}{P} \piece{e}{}{K}
\end{position}
\end{document}

注意一下编译的顺序: latex--- >dvips--- >ps2pdf

效果图:

一定要按这个步骤来编译, 不然得到的效果不好.

如果你的latex还没有chess宏包, (点击这 里).

或到:

http://www.ctan.org/tex-archive/macros/latex/contrib/cchess/

下载即可。

选自:http://quantumfield.spaces.live.com/blog/cns!f433639184bc15ec!322.entry

另外,还有xq.sty宏包,关于LaTeX排版象棋的详细讨论还可以查看CTeX论坛

LaTeX技巧009:中国象棋的LaTeX排版的更多相关文章

  1. LaTeX技巧472:定义一个LaTeX参考文献不带编号且有缩进的方法

    LaTeX_Fun的博客 LaTeX技巧381:参考文献项第二行缩进如何定义? \makeatletter\renewenvironment{thebibliography}[1]{\section* ...

  2. LaTeX技巧203:如何实现等号对齐_LaTeX_Fun_新浪博客

    LaTeX技巧203:如何实现等号对齐_LaTeX_Fun_新浪博客 我们在进行公式的输入排版的时候,通常希望公式比较齐整,所以需要一些等号对齐,或者左对齐,关于公式的左对齐前文已经介绍了方法.htt ...

  3. LaTeX技巧561:LaTeX如何让每一章带有目录?

    转自: http://blog.sina.com.cn/s/blog_5e16f1770102ds8b.html LaTeX技巧561:LaTeX如何让每一章带有目录? [问题描述] 当前章节列出该章 ...

  4. LaTeX技巧96:LaTeX 图片控制命令,位置控制

    LaTeX技巧96:LaTeX 图片控制命令,位置控制 2012-04-05 17:25:44 zd0303 阅读数 28512更多 分类专栏: Latex   LaTeX 控制图片的位置,就是加感叹 ...

  5. LaTeX技巧23:BIBTeX制作参考文献

    23BibTeX 是一种格式和一个程序,用于协调LaTeX的参考文献处理.BibTeX 使用数据库的的方式来管理参考文献. BibTeX 文件的后缀名为 .bib . 先来看一个例子 @article ...

  6. Latex技巧:插入参考文献

    LaTeX插入参考文献,可以使用BibTex,也可以不使用BibTex. 方法一:不使用BibTeX 先在文章文章末尾写好需要插入的参考文献,逐一写出,例如: \begin{thebibliograp ...

  7. Luogu P2051 [AHOI2009]中国象棋(dp)

    P2051 [AHOI2009]中国象棋 题面 题目描述 这次小可可想解决的难题和中国象棋有关,在一个 \(N\) 行 \(M\) 列的棋盘上,让你放若干个炮(可以是 \(0\) 个),使得没有一个炮 ...

  8. BZOJ 1801中国象棋 DP

    1801: [Ahoi2009]chess 中国象棋 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1426  Solved: 826[Submit][ ...

  9. C#中国象棋+游戏大厅 服务器 + 客户端源码

    来源:www.ajerp.com/bbs C#中国象棋+游戏大厅 服务器 + 客户端源码 源码开源 C#版中国象棋(附游戏大厅) 基于前人大虾的修改版 主要用委托实现 服务器支持在线人数,大厅桌数的设 ...

随机推荐

  1. Ubuntu 18.04 MATLAB 安装及配置

    转载请注明出处,谢谢 原创作者:Mingrui 原创链接:https://www.cnblogs.com/MingruiYu/p/12367846.html 本文要点: Ubuntu 18.04 安装 ...

  2. 在Django中连接MySQL数据库(Python3)

    我的环境:      python3.6,      Django2.1.5,      MySQL8.0.15,      win10,      PyCharm, 要求:已经安装了MySQL数据库 ...

  3. 前端vue开发中的跨域问题解决,以及nginx上线部署。(vue devServer与nginx)

    前言 最近做的一个项目中使用了vue+springboot的前后端分离模式 在前端开发的的时候,使用vue cli3的devServer来解决跨域问题 上线部署则是用的nginx反向代理至后台服务所开 ...

  4. jvm 内存结构

    jvm 内存结构 graph TB A(jvm)-->E(类加载器系统) A-->B(运行时数据区) A-->D(本地库接口) A-->C(执行引擎) B-->虚拟机栈 ...

  5. JavaScript之BOM基础

    BOM(Browser Object Model)也叫浏览器对象,它提供了很多对象,用于访问浏览器的功能.但是BOM是没有标准的,每一个浏览器厂家会根据自己的需求来扩展BOM对象.本文主要以一些简单的 ...

  6. export和export default的区别

    export和export default的区别一.export的使用1.直接输出export let words = ‘hello world!!!’export function output() ...

  7. python基础入门之三 —— 字符串

    1.格式 一对引号和三对引号可以表示字符串 (三引号保留换行) 2.下标 从0开始循序向下分配 str1='abcdefg' print(str1) print(str1[0]) print(str1 ...

  8. ACM模板_axiomofchoice

    目录 语法 c++ java 动态规划 多重背包 最长不下降子序列 计算几何 向量(结构体) 平面集合基本操作 二维凸包 旋转卡壳 最大空矩形 | 扫描法 平面最近点对 | 分治 最小圆覆盖 | 随机 ...

  9. [APIO2018] New Home 新家 [线段树,multiset]

    线段树的每个点表示当前点的前驱,即这个颜色上一次出现的位置,这个玩意multiset随便写写就完了. 重要的是怎么查询答案,无解显然先判掉. 线段树上二分就可以了 #include <bits/ ...

  10. 指数ETF基金的组合分析方法初探

    本文在Creative Commons许可证下发布 试想一下,大多数基金“推荐”的配置策略都假设某种股票/债券组合.如果我们想寻求成本最小收益最高的组合(以yahoo finance上的数据来分析,因 ...