写了几个中国象棋相关的小程序 xiangqi-tools

游戏讨论
回复
头像
careone
帖子: 804
注册时间: 2007-12-17 21:41
送出感谢: 71 次
接收感谢: 24 次

写了几个中国象棋相关的小程序 xiangqi-tools

#1

帖子 careone » 2018-03-09 9:06

写了几个中国象棋相关的小程序 xiangqi-tools
DEB包名称: xiangqi-tools
包含有3个程序

下载网址:
https://sourceforge.net/projects/emacsl ... s/xiangqi/
说明:另外在这里,还放了一些象棋相关的其它软件包和棋谱文件
技术说明:
出于安全性考虑,下面3个程序都放在 /usr/games/ 目录下,而不是 /usr/bin/ 目录。
即:普通用户可以运行这几个命令;但是 root 用户是找不到这几个命令,也无法运行

* 1 xiangqi-fen2pic
输入中国象棋的FEN格式串(象棋局面数据), 生成棋局图片(默认为JPG格式)

* 2 xiangqi-fen2text
输入中国象棋FEN格式串(象棋局面数据), 转换成文字形式的布局图

* 3 xiangqi-ubb2fen
输入东萍象棋UBB开局代码,转换成中国象棋FEN格式串(象棋局面数据)。
* 1 xiangqi-fen2pic
输入中国象棋的FEN格式串(象棋局面数据), 生成棋局图片(默认为JPG格式)

命令: xiangqi-fen2pic -h
输入中国象棋的FEN格式串(象棋局面数据), 生成棋局图片(默认为JPG格式)
Usage: xiangqi-fen2pic [OPTION]
xiangqi-fen2pic --fen FEN数据
xiangqi-fen2pic --file FEN/PGN棋谱文件
xiangqi-fen2pic --resize 百分比(或者图片宽度)
(百分比范围:20%-1000%; 宽度范围:100-2000像素)

标准开局FEN数据:
rnbakabnr/9/1c5c1/p1p1p1p1p/9/9/P1P1P1P1P/1C5C1/9/RNBAKABNR

Options:
-f, --file 文件名 从单个PGN/FEN文件中读取一组(或多组)FEN数据,并生成图片
-n, --fen FEN 从给出的一组FEN数据, 生成图片
-r, --resize X% 缩小或放大生成的图片(百分比范围: 20% - 1000%),
或者直接指定图片宽度(宽度范围: 100 - 2000 像素)
-s, --suffix [jpg/gif/png] 指定生成图片的格式。默认为 jpg

-e, --event "棋局备注" 在棋盘下方添加棋局备注文字
--no-fen 不在图片下方添加FEN格式串文字 (只要棋子尺寸
大于或等于40x40像素, 默认在图片下方添加FEN)

-p, --preview [1/0] 是否显示生成的图片。1=显示(默认),0=不显示;
如果一次性生成多张图片,则只显示第1张和最后1张

-t, --theme 主题 指定棋子棋盘主题。如果未指定主题,则显示可用的主题名。
支持的主题名称和数字序号:
1: mono-40 主题。黑白棋子/棋盘; 棋子大小: 40x40
* 2 (默认主题): ccbridge-52 主题。红黑单色棋子/黑白棋盘; 棋子大小: 52x52
3: xiangqi-xuanfeng-40 主题。木纹红黑棋子/木纹棋盘; 棋子大小: 40x40
4: xiangqi-xuanfeng-26 主题。木纹红黑棋子/木纹棋盘; 棋子大小: 26x26

-m, --random 随机生成一张象棋残局图片(选自《适情雅趣》残局谱550+1例)
-lf, --list-fen 列出象棋FEN示例文件 (目录: /usr/share/xiangqi/fen/ )
-a, --about-fen 显示中国象棋FEN棋子字母代码含义, 和标准开局FEN数据
-x, --extra 显示额外的其它选项
-v, --version 显示版本信息并退出
-h, --help 显示帮助信息并退出

See also:
命令: xiangqi-fen2text, xiangqi-ubb2fen, xiangqi-fen2pic
效果图
xiangqi-fen2pic-1.1.gif
-------------
2 * xiangqi-fen2text
输入中国象棋FEN格式串(象棋局面数据), 转换成文字形式的布局图

命令: xiangqi-fen2text
fen2text 0.2
TEXT_STYLE=newsmth ROW_TAIL_STYLE=2

技巧:如果需要在空位标注下一步或者上一步的走棋位置,或者表示
让子的棋局,可以在FEN格式串中,使用特殊的棋子代码
(提醒:以下代码并不是标准FEN格式,仅适用于本程序)
0, X 大写字母X,或者数字0:(红方) 下一步或上一步的走棋位置
x 小写字母x: [黑方] 下一步或上一步的走棋位置

请输入中国象棋FEN格式串(象棋局面数据)。按[回车键]使用标准开局:
rnbakabnr/9/1c5c1/p1p1p1p1p/9/9/P1P1P1P1P/1C5C1/9/RNBAKABNR

 1..2..3..4..5..6..7..8..9
 ========************========
        黑方

 [车][马][象][士][将][士][象][马][车] 9
  -..-..-..-..-..-..-..-..- 8
  - [炮] -..-..-..-..- [炮] - 7
 [卒] - [卒] - [卒] - [卒] - [卒] 6
  -..-..-..-..-..-..-..-..- +
  -..-..-..-..-..-..-..-..- +
 (兵) - (兵) - (兵) - (兵) - (兵) 3
  - (炮) -..-..-..-..- (炮) - 2
  -..-..-..-..-..-..-..-..- 1
 (车)(马)(相)(仕)(帅)(仕)(相)(马)(车) 0

        红方
 ========************========
 九..八..七..六..五..四..三..二..一
3 * xiangqi-ubb2fen
输入东萍象棋UBB开局代码,转换成中国象棋FEN格式串(象棋局面数据)。

命令: xiangqi-ubb2fen
ubb2fen 0.1.1
请输入中国象棋 DhtmlXQ_binit 象棋局面数据。按[回车键]使用标准开局:
8979695949392919097717866646260600102030405060708012720323436383

r n b a k a b n r 9
1 1 1 1 1 1 1 1 1 8
1 c 1 1 1 1 1 c 1 7
p 1 p 1 p 1 p 1 p 6
1 1 1 1 1 1 1 1 1 +
1 1 1 1 1 1 1 1 1 +
P 1 P 1 P 1 P 1 P 3
1 C 1 1 1 1 1 C 1 2
1 1 1 1 1 1 1 1 1 1
R N B A K A B N R 0

FEN: rnbakabnr/9/1c5c1/p1p1p1p1p/9/9/P1P1P1P1P/1C5C1/9/RNBAKABNR
魁拔不死,天下不宁。
魁拔既死,天下不平。
--------------
Careone <emacslocale^126.com>
https://sourceforge.net/projects/emacslocale/files/
头像
bzimage
帖子: 672
注册时间: 2006-03-14 10:25
送出感谢: 1 次
接收感谢: 5 次

Re: 写了几个中国象棋相关的小程序 xiangqi-tools

#2

帖子 bzimage » 2018-03-09 20:33

mark :Music
回复

回到 “游戏和游戏模拟器”