飞扬围棋

 找回密码
 注册
搜索
查看: 11427|回复: 7
打印 上一主题 下一主题

如何用LaTeX画棋局

[复制链接]
跳转到指定楼层
1#
发表于 2018-6-24 21:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 小澳龍 于 2018-6-24 21:27 编辑

在飞扬上经常看到大神们用LaTeX制作的棋谱或死活题,最近在翻译一些GNU Go的文档(虽然过时了,主要是学习技术发展的思路),但是想用LaTeX+tikz画点局部的棋局时,google了几个sample,总觉得不太满意,比如想画出以下这种截图的效果。请问大神们可以贴出tex的源码借鉴下吗?感谢感谢!当然如果学会了,以后也可以自己编排棋谱分享给大家。



回复

使用道具 举报

推荐
发表于 2018-7-2 15:23 | 只看该作者
没错的话坛子里都是用word来重排的,
用LaTex的很少。

现在latex上已经有的是igo.sty,
说实在效果不太满意。

我的做法是用goWrite生成矢量图(eps)后直接\includegraphics.
为了美观goWrite生成矢量图时会选用跟正文相同的字体。
正文中的手数则是用另外一组自己写的macro,
基本上就是用tikz画圆把手数圈起来,
为了达到每个圆一样大小,
我用了\phatom{},
然后再在原地显示真正的手数,
以下是我为黑子写的macro,

\newcommand*\bs[1]{\  \tikz[baseline=(char.base)]{               
                \node (char) {\phantom{A}};               
                \ifthenelse{#1<10}               
                        {%       
                            \node at (char.center) {\phantom{A}};       
                            \node (char) {\phantom{A}};       
                            \node [shape=circle,draw,fill=black, inner sep=1.5pt] at (char.center) {\phantom{\scalebox{0.75}{A}}};       
                            \node [inner xsep=0pt] at (char.center) {\color{white}\scalebox{.9}[1]{{\myfont\small {#1}}}};       
                        }       
                        {\ifthenelse{#1<100}       
                                {%
                                    \node at (char.center) {\phantom{A}};
                                \node (char) {\phantom{A}};       
                                \node [shape=circle,draw,fill=black, inner sep=1.5pt] at (char.center) {\phantom{\scalebox{0.75}{A}}};       
                                    \node [inner xsep=0pt] at (char.center) {\color{white}\scalebox{.8}[1]{{\myfont\small {#1}}}};%
                                    }
                                {%
                                    \node at (char.center) {\phantom{A}};
                                \node (char) {\phantom{A}};       
                                \node [shape=circle,draw,fill=black, inner sep=1.5pt] at (char.center) {\phantom{\scalebox{0.75}{A}}};       
                                \node [inner xsep=0pt] at (char.center) {\color{white}\scalebox{0.6}[1]{{\myfont\small {#1}}}};}
                        }       
                }               
            }                


写得很乱,
哈哈哈哈,
话说我重排的东西似乎太监了
回复 支持 1 反对 0

使用道具 举报

3#
 楼主| 发表于 2018-7-2 22:08 | 只看该作者
hahihuhei 发表于 2018-7-2 15:23
没错的话坛子里都是用word来重排的,
用LaTex的很少。

好的,太感谢您了,我研究一下,以后多交流!
回复 支持 反对

使用道具 举报

4#
发表于 2018-7-4 12:07 | 只看该作者
互相学习吧,
我是因为围棋才接触LaTeX的,
从那时开始所有的个人报告就变成了LaTeX,
同事同学都觉得我这是没事找事呢
回复 支持 反对

使用道具 举报

5#
发表于 2018-7-4 17:05 | 只看该作者
高手
回复 支持 反对

使用道具 举报

6#
发表于 2019-1-7 11:25 | 只看该作者
hahihuhei 发表于 2018-7-2 15:23
没错的话坛子里都是用word来重排的,
用LaTex的很少。

这个怎么用?能否给个参考例子?谢谢!
回复 支持 反对

使用道具 举报

7#
发表于 2019-10-23 14:07 | 只看该作者
高手,上学时接触过一点Tex,高大上
回复 支持 反对

使用道具 举报

8#
发表于 2023-2-6 10:04 | 只看该作者
谢谢分享 !
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|Archiver|手机版|飞扬围棋网 ( 苏ICP备11029047号-1 )

GMT+8, 2024-11-26 12:48 , Processed in 0.140951 second(s), 21 queries .

since 2003飞扬围棋论坛 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表