飞扬围棋
标题:
如何用LaTeX画棋局
[打印本页]
作者:
小澳龍
时间:
2018-6-24 21:24
标题:
如何用LaTeX画棋局
本帖最后由 小澳龍 于 2018-6-24 21:27 编辑
在飞扬上经常看到大神们用LaTeX制作的棋谱或死活题,最近在翻译一些GNU Go的文档(虽然过时了,主要是学习技术发展的思路),但是想用LaTeX+tikz画点局部的棋局时,google了几个sample,总觉得不太满意,比如想画出以下这种截图的效果。请问大神们可以贴出tex的源码借鉴下吗?感谢感谢!当然如果学会了,以后也可以自己编排棋谱分享给大家。
作者:
hahihuhei
时间:
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}}}};}
}
}
}
写得很乱,
哈哈哈哈,
话说我重排的东西似乎太监了
作者:
小澳龍
时间:
2018-7-2 22:08
hahihuhei 发表于 2018-7-2 15:23
没错的话坛子里都是用word来重排的,
用LaTex的很少。
好的,太感谢您了,我研究一下,以后多交流!
作者:
hahihuhei
时间:
2018-7-4 12:07
互相学习吧,
我是因为围棋才接触LaTeX的,
从那时开始所有的个人报告就变成了LaTeX,
同事同学都觉得我这是没事找事呢
作者:
天外肥羊
时间:
2018-7-4 17:05
高手
作者:
lswluck
时间:
2019-1-7 11:25
hahihuhei 发表于 2018-7-2 15:23
没错的话坛子里都是用word来重排的,
用LaTex的很少。
这个怎么用?能否给个参考例子?谢谢!
作者:
hunter_xie
时间:
2019-10-23 14:07
高手,上学时接触过一点Tex,高大上
作者:
九层楼
时间:
2023-2-6 10:04
谢谢分享 !
欢迎光临 飞扬围棋 (http://bbs.flygo.net/BBS/)
Powered by Discuz! X3.2