使用 TeX 的逻辑游戏

使用 TeX 的逻辑游戏

在我学习如何使用 LaTeX 的过程中,我遇到了这个logicpuzzle软件包,我发现它真的令人印象深刻,它可以真正生成各种网格而无需包含任何图片。

例如 :

在此处输入图片描述 在此处输入图片描述 在此处输入图片描述

于是我高兴地跳进了源代码就在这儿(所有内容似乎都位于 logicpuzzle.sty 中)而我所遇到的内容对我来说似乎很晦涩,以至于我什么也没学到。

在哪里或如何学习在 LaTeX 中做如此高级的事情?或者,至少,这如何更基本上完毕 ?

答案1

好的,以作者的身份跳上马头logicpuzzle.sty

正如 David 所写,logicpuzzle.sty大量使用TikZ。因此,您至少需要了解的基础知识TikZ

核心部分logicpuzzle是谜题环境,就像magnets上面其中一张图片中展示的那样:

\begin{magnets}
...
\end{magnets}

这将始终绘制基本网格。请参阅文档 ( texdoc logicpuzzle) 并查看有关推出您自己的逻辑谜题的部分。

然后总是有与拼图相关的命令来填充网格,它总是TikZ用于图形对象加上一些标准LaTeX,例如用于填充行的命令。

基本思想是网格从(1,1)(columns+1,rows+1)TikZ坐标为)。网格单元(1,1)是左下角,网格单元(columns,rows)是右上角。在扫雷拼图的\Mine网格单元中放置地雷( ) ,意味着将节点放置在网格单元 的中心,坐标为 。最后,将 中定义的图形对象放入节点中。这正是 eg所做的。(2,2)Tikz(2,2)(2.5,2.5)\Mine -> \LP@Mine\setcell{2}{2}{\Mine}

如果你想尝试了解发生了什么,我的建议是:

  1. 阅读“推出你自己的逻辑谜题”
  2. 看一个例子,并尝试理解一个又一个的宏
  3. 对于 (2.),你需要了解TikZ

我担心这并不容易!;-)

目前,我正在将文档转换为.dtx(文档化的源文件)。它尚未完成,也不会描述每个细节。您需要了解TikZ。所以您阅读TikZTikZ然后TikZ!;-) 如果您联系我,我可以向您发送一份包含(迄今为止)文档化的源代码的 PDF。

如果您找到了更简单的方法,请联系我!;-)

答案2

代码在 texlive 中(至少),因此大多数人不需要下载您链接到的 zip 文件。

其核心是

  \begin{tikzpicture}[scale=.07*\LP@scale]%
    \draw[fill=brown!95!black!95,line width=.1pt*\LP@scale]%
      (.75,-1) .. controls (.5,.5) and   (.5,3) .. (0.5,4) --%
      (-0.5,4) .. controls (-.5,3) and (-.5,.5) .. (-.75,-1);%
    \shade[top color=green!50!black!60,draw=black,line width=.1pt*\LP@scale,bottom color=green!50!black]%
      (0,10) .. controls  (0,8)     and (1,7)    .. (1.5,7)%

....

正如环境名称所示,这是 TikZ,一个用于 TeX 的绘图包。Tikz 有一个非常详尽的手册(texdoc tikz应该显示它),或者您可以浏览标记为在这个网站上,这在某种程度上是问题最常见的标签。

相关内容