texlive[72141] Master/texmf-dist: suanpan-l3 (30aug24)

commits+karl at tug.org commits+karl at tug.org
Fri Aug 30 23:09:00 CEST 2024


Revision: 72141
          https://tug.org/svn/texlive?view=revision&revision=72141
Author:   karl
Date:     2024-08-30 23:09:00 +0200 (Fri, 30 Aug 2024)
Log Message:
-----------
suanpan-l3 (30aug24)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/suanpan-l3/README.md
    trunk/Master/texmf-dist/doc/latex/suanpan-l3/suanpan-l3.pdf
    trunk/Master/texmf-dist/doc/latex/suanpan-l3/suanpan-l3.tex
    trunk/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty

Modified: trunk/Master/texmf-dist/doc/latex/suanpan-l3/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/suanpan-l3/README.md	2024-08-30 21:08:48 UTC (rev 72140)
+++ trunk/Master/texmf-dist/doc/latex/suanpan-l3/README.md	2024-08-30 21:09:00 UTC (rev 72141)
@@ -7,7 +7,7 @@
 
 At the same time, the `suanpan-l3` package offers customization options for abacus, including line width, draw color, fill color, bid space, rod space, etc. These can be configured through package options, `suanpan` environment options, or `\suanpanset` macro.
 
-For further details and examples, please refer to the manual(in Chinese).
+For further details and examples, please refer to the manual(in Chinese/English).
 
 Contributing
 ------------
@@ -14,9 +14,9 @@
 
 1. gitee repository:
    (1). repository: [suanpan](https://gitee.com/nwafu_nan/suan-pan)
-   (2). Issues and PR: [issue](https://gitee.com/nwafu_nan/suanpan-/issues) or [pull request](https://gitee.com/nwafu_nan/suan-pan/pulls).
-   
-   基于l3draw的中国传统7珠算盘LaTeX排版宏包
+   (2). Issues and PR: [issue](https://gitee.com/nwafu_nan/suan-pan/issues) or [pull request](https://gitee.com/nwafu_nan/suan-pan/pulls).
+
+基于l3draw的中国传统7珠算盘LaTeX排版宏包
 =======
 
 `suanpan-l3`是一个基于l3draw绘图宏包,用Expl3开发的中国传统7珠圆珠算盘排版宏包,它能够实现普通上珠、下珠和使用底珠、顶珠和悬珠的算盘排版。
@@ -33,11 +33,11 @@
 1. gitee仓库:
     (1). 仓库地址: [suanpan](https://gitee.com/nwafu_nan/suan-pan)
     (2). Issues and PR: [issue](https://gitee.com/nwafu_nan/suan-pan/issues) or [pull request](https://gitee.com/nwafu_nan/suan-pan/pulls).
-    
+
 Copyright and Licence
 ---------------------
 
-    Copyright (C) 2020-2022 by Nan Geng <nangeng at nwafu.edu.cn>
+    Copyright (C) 2020-2024 by Nan Geng <nangeng at nwafu.edu.cn>
     ----------------------------------------------------------------------
 
     This work may be distributed and/or modified under the

Modified: trunk/Master/texmf-dist/doc/latex/suanpan-l3/suanpan-l3.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/suanpan-l3/suanpan-l3.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/suanpan-l3/suanpan-l3.tex	2024-08-30 21:08:48 UTC (rev 72140)
+++ trunk/Master/texmf-dist/doc/latex/suanpan-l3/suanpan-l3.tex	2024-08-30 21:09:00 UTC (rev 72141)
@@ -7,19 +7,19 @@
 
 \IndexPrologue
   {
-    \section*{索引}
-    \markboth{索引}{索引}
-    \addcontentsline{toc}{section}{索引}
-    斜体数字说明了对应索引内容出现的页码,
-    带有下划线的数据给出了索引内容的定义,
-    其它的数字给出了索引内容引用的位置。
-    % \section*{Index}
-    % \markboth{Index}{Index}
-    % \addcontentsline{toc}{section}{Index}
-    % The~italic~numbers~denote~the~pages~where~the~
-    % corresponding~entry~is~described,~
-    % numbers~underlined~point~to~the~definition,~
-    % all~others~indicate~the~places~where~it~is~used.
+    % \section*{索引}
+    % \markboth{索引}{索引}
+    % \addcontentsline{toc}{section}{索引}
+    % 斜体数字说明了对应索引内容出现的页码,
+    % 带有下划线的数据给出了索引内容的定义,
+    % 其它的数字给出了索引内容引用的位置。
+    \section*{Index}
+    \markboth{Index}{Index}
+    \addcontentsline{toc}{section}{Index}
+    The~italic~numbers~denote~the~pages~where~the~
+    corresponding~entry~is~described,~
+    numbers~underlined~point~to~the~definition,~
+    all~others~indicate~the~places~where~it~is~used.
   }
 
 \newcommand\tikzmark[1]{\tikz \coordinate[overlay, remember picture] (#1);}
@@ -58,6 +58,7 @@
     top=2cm,
     bottom=2cm
   }
+  \PrintChanges
   \PrintIndex
 }
 
@@ -89,7 +90,7 @@
   \end{itemize}
 } {  }
 
-\keys_define:nn { cchess/doc } {
+\keys_define:nn { suanpan/doc } {
   opt .tl_set:N = \l_opt_tl,
   desc .tl_set:N = \l_desc_tl,
   init .tl_set:N = \l_init_tl,
@@ -98,7 +99,7 @@
 
 \box_new:N \l__option_box
 \NewDocumentEnvironment { option } { m +b } {
-  \keys_set:nn { cchess/doc } { #1 }
+  \keys_set:nn { suanpan/doc } { #1 }
   \hbox_set:Nw \l__option_box
     \small \ttfamily
     \begin{minipage}[t]{\textwidth}
@@ -110,13 +111,12 @@
       {~}\l_desc_tl
       \hfill(
       \tl_if_eq:NnTF \l_init_tl { init-none } { no~value }
-        { 初始值:~\texttt{\l_init_tl} }
+        { init: ~\texttt{\l_init_tl} }
       )
     \end{minipage}
   \hbox_gset_end:
   \box_use_drop:N \l__option_box
   #2
-  % \vspace*{-4ex}
   \medskip
 } {  }
 
@@ -124,20 +124,21 @@
   { \__codedoc_cmd:no {#1} { #2 } }
 \ExplSyntaxOff
 
-\def\vers{\texttt{v1.1.0} }
+\def\vers{\texttt{v1.1.1} }
 
+\changes{v1.0.0}{2024/08/20}{first version.}
+
 \begin{document}
 \title{
-  \pkg{suanpan}---算盘(Abacus)排版宏包
-  % \rlap{\makebox[4cm][r]{
-    % \normalsize $\Longrightarrow$ \color{red}
-    % \protect\hyperlink{en}{English Version}
-    % \protect\hypertarget{zh}{}
-  % }}
+  \pkg{suanpan-l3}---算盘(Abacus)排版宏包
+  \rlap{\makebox[4cm][r]{
+    \normalsize $\Longrightarrow$ \color{red}
+    \protect\hyperlink{en}{English Version}
+    \protect\hypertarget{zh}{}
+  }}
 }
 \author{\textit{耿楠} \texttt{<nangeng at nwafu.edu.cn>}}
 \date{\the\year 年\the\month 月\the\day 日\qquad \vers
-% \thanks{\url{https://github.com/registor/suanpan}}
 \thanks{\url{https://gitee.com/nwafu_nan/suan-pan}}
 }
 
@@ -144,7 +145,7 @@
 \maketitle
 
 \begin{abstract}
-  \pkg{suanpan}是一个基于\pkg{l3draw}绘图宏包,用\pkg{Expl3}%
+  \pkg{suanpan-l3}是一个基于\pkg{l3draw}绘图宏包,用\pkg{Expl3}%
   开发的中国传统7珠圆珠算盘排版宏包,它能够实现使用普通上珠、下珠
   和底珠、顶珠及悬珠的算盘排版。该宏包提供了唯一的一个
   \env{suanpan}算盘排版环境及仅在该环境中使用的 \tn{rod}、
@@ -189,7 +190,7 @@
 
 \section{引言}
 
-\pkg{suanpan}宏包是一个基于\pkg{l3draw}绘图宏包,用\pkg{Expl3}%
+\pkg{suanpan-l3}宏包是一个基于\pkg{l3draw}绘图宏包,用\pkg{Expl3}%
 开发的中国传统7珠圆珠算盘排版宏包,它利用\pkg{l3draw}的绘图功能,
 利用简单线条实现了算盘的排版。
 
@@ -218,7 +219,7 @@
   在\oarg{外观选项}中可以通过key-value的方式设置线宽、颜色、
   缩放比例等外观属性。
 
-  通过\oarg{外观选项}设置的外观参数仅对当前命令局部有效,
+  通过\oarg{外观选项}设置的外观参数仅对\env{suanpan}环境局部有效。
 
 \begin{SideBySideExample}[frame=single,numbers=left,%
     xrightmargin=.48\linewidth,gobble=2]
@@ -303,6 +304,7 @@
   \end{suanpan}
 \end{SideBySideExample}
 
+\changes{v1.0.1}{2024/08/26}{rename \tn{bidclr} to \tn{bid}.}
 \subsubsection{\tn{bid}算珠着色命令}
 
 \begin{function}{\bid}
@@ -340,6 +342,7 @@
   \end{suanpan}
 \end{SideBySideExample}
 
+\changes{v1.1.0}{2024/08/28}{adde \tn{bids} macro.}
 \subsubsection{\tn{bids}内珠或外珠着色命令}
 
 \begin{function}{\bids}
@@ -414,7 +417,7 @@
   操作有效。
 
   \begin{notezh}
-    由于\pkg{suanpan}宏包涉及大量绘图操作,因此建议尽量减少在每个
+    由于\pkg{suanpan-l3}宏包涉及大量绘图操作,因此建议尽量减少在每个
     \env{suanpan}排版环境的可选项中使用\oarg{外观选项}设置,以
     节约编译时间。如需要更改算盘外观,可以在引用宏包时,通过为宏包
     添加选项实现,也可以执行\tn{suanpanset}命令进行必要的
@@ -423,20 +426,20 @@
 
 \section{宏包选项}
 
-在\pkg{suanpan}宏包中,算盘颜色、线条宽度、档位及算珠间距等
+在\pkg{suanpan-l3}宏包中,算盘颜色、线条宽度、档位及算珠间距等
 算盘外观属性可以在引入宏包时通过\oarg{宏包选项}进行设置,
 也可以在\env{suanpan}环境的\oarg{外观选项}中进行局部设置,
 还可以通过\cs{suanpanset}命令进行全局或局部设置。
 
 强烈建议在引用宏包时通过\oarg{宏包选项}为一个文档统一全局设置
-算盘外观属性,以节约编译时间。应避免频繁在命令和环境中使用
+算盘外观属性,以节约编译时间。应避免频繁\env{suanpan}环境中使用
 \oarg{宏包选项}或使用\cs{suanpanset}命令设置算盘外观属性。
 
-\pkg{suanpan}宏包选项是一个英文逗号分隔的选项列表,其
+\pkg{suanpan-l3}宏包选项是一个英文逗号分隔的选项列表,其
 选项是\marg{key}|=|\marg{value}形式。部分选项的\marg{value}可以省略。
 对于同一选项,后续设置会覆盖以前设置。
 
-\pkg{suanpan}宏包采用\LaTeX3风格的键值设置,支持不同类型以及多种层次的
+\pkg{suanpan-l3}宏包采用\LaTeX3风格的键值设置,支持不同类型以及多种层次的
 选项设定。键值列表中,``|=|''左右的空格不影响设置。但需注意,参数列表中%
 \textsf{不可以出现空行}。
 
@@ -646,29 +649,519 @@
   \end{suanpan}
 \end{SideBySideExample}
 
-%
-% \bigskip
+\bigskip
 
-% \bigskip
+\changes{v1.1.1}{2024/08/30}{add English documentation.}
 
-% \title{
-%   \pkg{suanpan} package for writing Chinese chess
-%   \rlap{\makebox[4cm][r]{
-%     \normalsize $\Longrightarrow$ \color{red}
-%     \protect\hyperlink{zh}{中文版本}
-%     \protect\hypertarget{en}{}
-%   }}
-% }
-% \author{Nan Geng \texttt{<nangeng at nwafu.edu.cn>}}
-% \date{\today\qquad \vers}
-% \maketitle
-%
-% \section{Introduction}
-%
-% \section{Interface}
-%
-% \section{options}
+\title{
+  \pkg{suanpan-l3} package for traditional Chinese 7-bids suanpan(abacus)
+  \rlap{\makebox[4cm][r]{
+    \normalsize $\Longrightarrow$ \color{red}
+    \protect\hyperlink{zh}{中文版本}
+    \protect\hypertarget{en}{}
+  }}
+}
+\author{Nan Geng \texttt{<nangeng at nwafu.edu.cn>}}
+\date{\today\qquad \vers}
 
+\maketitle
+
+\section{Introduction}
+
+\pkg{suanpan-l3} is a traditional Chinese 7-bids suanpan drawing package
+utilizes \pkg{l3draw} and is developed with \pkg{Expl3}. It can
+effectively manage both upper and lower bids, while also considering
+bottom bid, top bid, and hanging bid.
+
+This package offers a unique environment for drawing suanpan,
+denoted as \env{suanpan}. Within this environment, 7 specialized macros
+are available for the creation of suanpan. The \tn{rod} macro is used
+to lay out a single rod, while the \tn{rod*} macro draws a counting point
+on this rod’s beam. The \tn{rods} macro is capable of laying out a set of rods.
+The \tn{bid} macro colors the specified bid. The \tn{bids} macro colors
+all inner bids that are near the beam, while the \tn{bids*} macro colors
+all outer bids that are far from the beam. Lastly, the \tn{lrframe} macro
+is used to lay out the left and right frames of an abacus.
+
+At the same time, the package offers customization options for suanpan,
+including line width, draw color, fill color, bid space, rod space, etc.
+These can be configured through package options, \env{suanpan} environment
+options, or the \tn{suanpanset} macro.
+
+\begin{center}
+  \begin{suanpan}[framedraw = brown2, scale = 0.45, bidsep=1.5pt,
+                  roddraw = brown3, rodfill = brown4]
+    % rod's val list
+    \rods{0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20}
+    % counting point
+    \rod*{4}{3}
+    \rod*{18}{17}
+    % top bid
+    \bid{12}{9}{azure7}
+    \bid{13}{9}{azure7}
+    \bid{14}{9}{azure7}
+    \bid{15}{9}{azure7}
+    \bid{16}{9}{azure7}
+    % hanging bid
+    \bid{17}{11}{red8}
+    \bid{18}{11}{red8}
+    \bid{19}{11}{red8}
+    \bid{20}{11}{red8}
+    \bid{21}{11}{red8}
+    % bottom bid
+    \bid{11}{3}{olive7}
+    \bid{16}{3}{olive7}
+    \bid{21}{3}{olive7}
+    \lrframe{1}{21}
+  \end{suanpan}
+\end{center}
+
+\section{Interface}
+
+\subsection{\env{suanpan} environment}
+
+\begin{function}{suanpan}
+  \begin{syntax}
+    \tn{begin}|{suanpan}|\oarg{options}
+    .....
+    \tn{end}|{suanpan}|
+  \end{syntax}
+\end{function}
+
+  Typesetting 7-bids Chinese suanpan with \oarg{options}.
+
+  Within the \env{suanpan} environment, \tn{rod}, \tn{rod*}, \tn{rods}, \tn{bid},
+  \tn{bids}, \tn{bids*} and \tn{lrframe} 7 specialized macros
+  are available for the creation of suanpan.
+
+  \oarg{options} is a key-value list for line width, draw color, fill color,
+  bid space, rod space, etc.
+
+  \oarg{options} is environment's local setting.
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+    xrightmargin=.48\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}
+    \rod{1}{0}
+    \rod{2}{3}
+    \rod{3}{0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{\env{suanpan}'s specialized macros}
+
+\subsubsection{\tn{rod}---single rod}
+
+\begin{function}{\rod}
+  \begin{syntax}
+    \cs{rod} \marg{num} \marg{val}
+  \end{syntax}
+\end{function}
+
+  The \tn{rod} macro is used to lay out a single rod.
+
+  The \marg{num} argument numbers the rods from left to right.
+  The \marg{val} is the number to be represented on the rod from
+  0 to 20. For number within [0, 9], it is represented using 4 lower deck
+  bids and 1 upper deck bid. Numbers within [10, 15] are represented additionally
+  using bottom bid and top bid. For numbers within [16, 20], hanging bid is also
+  required for representation.
+
+  The starred version \tn{rod*} will draw a counting point on this rod's beam.
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+    xrightmargin=.48\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}
+    \rod{1}{1}   % normal rod
+    \rod{2}{6}
+    \rod*{3}{10} % counting point and
+                 % bottom bid
+    \rod{4}{12}  % top bid
+    \rod{5}{18}  % hanging bid
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsubsection{\tn{rods}---a set of rods}
+
+\begin{function}{\rods}
+  \begin{syntax}
+    \cs{rods} \marg{val list}
+  \end{syntax}
+\end{function}
+
+  The \tn{rods} macro is used to lay out a set of rods.
+
+  The \marg{val list} is a value list of each rod seperated by commas.
+  Each rod number is automatically numbered from left to right.
+
+  Each value in \marg{val list} is the number to be represented on the rod from
+  0 to 20. For number within [0, 9], it is represented using 4 lower deck
+  bids and 1 upper deck bid. Numbers within [10, 15] are represented additionally
+  using bottom bid and top bid. For numbers within [16, 20], hanging bid is also
+  required for representation.
+
+  \begin{noteen}
+    The starred version \tn{rods*} for counting point is not provided.
+    Use the \tn{rod*} macro to overlay the specified rod for drawing.
+  \end{noteen}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+    xrightmargin=.48\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}
+    \rods{0, 6, 12, 18, 0}
+    \rod*{3}{12}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsubsection{\tn{bid}---color bid}
+
+\begin{function}{\bid}
+  \begin{syntax}
+    \cs{bid} \marg{num}\marg{pos}\marg{color}
+  \end{syntax}
+\end{function}
+
+  The \tn{bid} macro fills the specified bid.
+
+  The \marg{num} is the same as for \tn{rod}; the \marg{color} argument
+  defines the fill color and the \marg{pos} argument tells which bid has to
+  be colored in \marg{num} rod.
+
+  This macro also blends \marg{color} by 40\% black to be used for bid
+  drawing color.
+
+  The \marg{pos} in a rod is numbered from the bottom up in the order
+  $1, 2, \cdots, 11$. The lower deck bids occupies position
+  $1, 2, \cdots, 7$, the upper deck bids occupies position $8, 9, 10$,
+  and the hanging bead occupies position $11$ between $9$ and $10$ .
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+    xrightmargin=.48\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}
+    \rods{0, 0, 7, 11, 8, 19}
+    \bid{1}{1}{gray7}
+    \bid{2}{5}{gray7}
+    \bid{3}{6}{red8}
+    \bid{4}{7}{red8}
+    \bid{4}{8}{azure6}
+    \bid{4}{9}{yellow9}
+    \bid{5}{10}{violet5}
+    \bid{6}{11}{teal4}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsubsection{\tn{bids}---color inner/outer bids}
+
+\begin{function}{\bids}
+  \begin{syntax}
+    \cs{bids} \marg{num}\marg{val}\marg{color}
+  \end{syntax}
+\end{function}
+
+  The \tn{bids} macro fills all inner bids that are near the beam.
+
+  \marg{num} and \marg{color} are the same as for \tn{bid};
+  the \marg{val} argument is the same as for \tn{rod}.
+
+  The \marg{color} is fill color for inner bids. it also blends
+  \marg{color} by 40\% black to be used for inner bids drawing color.
+
+  The starred version \tn{bids*} is used to color outer bids of \marg{num} rod.
+
+  \begin{noteen}
+    This macro can only select the inner bids or the outer bids for coloring,
+    you can't select both the inner and outer bids at the same time.
+  \end{noteen}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+    xrightmargin=.48\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}
+    \rods{0, 0, 7, 11, 8, 19}
+    \bids{3}{7}{teal4}
+    \bids*{5}{8}{azure6}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsubsection{\tn{lrframe}---left and right frame}
+
+\begin{function}{\lrframe}
+  \begin{syntax}
+    \cs{lrframe} \marg{first num}\marg{last num}
+  \end{syntax}
+\end{function}
+
+  The \tn{lrframe} macro is used to lay out the left and right frames of
+  a suanpan.
+
+  The \marg{first num} argument tells which rod is the first rod and
+  the \marg{last num} argument tells which rod is the last rod.
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+    xrightmargin=.48\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}
+    \rods{0, 6, 12, 18, 0}
+    \lrframe{1}{5}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{\tn{suanpanset}}
+
+\begin{function}{\suanpanset}
+  \begin{syntax}
+    \cs{suanpanset} \marg{options}
+  \end{syntax}
+\end{function}
+
+  The \tn{suanpanset} macro offers customization options for suanpan,
+  including line width, draw color, fill color, bid space, rod space, etc.
+
+  The \marg{options} is a key-value list.
+
+  The \marg{options} seted by the \cs{suanpanset} are valid for
+  all subsequent \env{suanpan} environments.
+
+\section{options}
+
+The \pkg{suanpan-l3} package offers customization options for abacus,
+including line width, draw color, fill color, bid space, rod space, etc.
+These can be configured through package \oarg{options}, \env{suanpan}
+environment \oarg{options}, or the \tn{suanpanset} macro.
+
+It is strongly recommended that suanpan options be set globally
+for a document uniformly via \oarg{options} of packages to save compilation time.
+Frequent use of \oarg{options} in \env{suanpan} environments or
+use of the \tn{suanpanset} command to set suanpan options should be avoided.
+
+The \oarg{options} is a comma-seperated list of options in the form
+\marg{key}|=|\marg{value}. The \marg{value} can be omitted for some options.
+For the same option, subsequent settings will override the previous one.
+
+The \pkg{suanpan-l3} package uses \LaTeX3 style key settings,
+supporting different types and levels of options. In the key list,
+spaces around ``='' do not affect the settings.
+However, it is important to note that blank lines are not allowed in the list.
+
+The ``|=true|'' in the \marg{option}|=true| for Boolean types can be omitted.
+
+\subsection{draft}
+
+\begin{option}{ opt = draft, desc = {= \meta{draft}}, init=false }
+  Draft mode.
+\end{option}
+
+The \oarg{draft} option speeds up compilation by canceling
+  bids rounded corner effect.
+
+  \begin{noteen}
+    Suanpan layout in draft mode may differ from the desired layout.
+  \end{noteen}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.53\linewidth,gobble=2]
+  % \usepackage[draft]{suanpan}
+  \centering
+  \suanpanset{scale = 0.65}
+  \begin{suanpan}[draft]
+    \rods{0, 6, 12, 18, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{line width}
+
+\begin{option}{ opt = linewd, desc = {= \meta{linewd}}, init=2pt }
+  Drawing line width.
+\end{option}
+
+  The \oarg{linewd} is used to set the line width of the frame inner,
+  and will also set the line width the frame outer to 7.00 times linewd,
+  and the rod and bid line widths to 1.00 times linewd.
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.40\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, linewd = 3pt}
+  \begin{suanpan}
+    \rods{0, 6, 12, 18, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{rod spacing}
+
+\begin{option}{ opt = rodsep, desc = {= \meta{rodsep}}, init=3.0pt }
+  The spacing between suanpan rods.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.40\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, rodsep = 15pt}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+  \begin{noteen}
+    The \oarg{rodsep} will change the width of the suanpan.
+  \end{noteen}
+
+\subsection{bid spacing}
+
+\begin{option}{ opt = bidsep, desc = {= \meta{bidsep}}, init=1.8pt }
+  The spacing between suanpan bids.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.40\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, bidsep = 4pt}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+  \begin{noteen}
+    The \oarg{bidsep} does not change the size of the suanpan.
+    But the height of each bid will be changed.
+    In addition, too small an bid height will cause distortion
+    of the rounded corners of the bid.
+  \end{noteen}
+
+\subsection{scale}
+
+\begin{option}{ opt = scale, desc = {= \meta{scale}}, init=1.0 }
+  Scaling factor of whole suanpan.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.40\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 1.20}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{frame color}
+
+\begin{option}{ opt = framedraw, desc = {= \meta{framedraw}}, init=black }
+  Frame drawing color.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, framedraw = brown3}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+  \begin{noteen}
+    Frame colors include inner and outer of frame and beam colors.
+  \end{noteen}
+
+\subsection{rod drawing color}
+
+\begin{option}{ opt = roddraw, desc = {= \meta{roddraw}}, init=black }
+  Rod drawing color.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, roddraw = brown4}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{rod filling color}
+
+\begin{option}{ opt = rodfill, desc = {= \meta{rodfill}}, init=white }
+  Rod filling color.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, rodfill = brown6}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{outer bids drawing color}
+
+\begin{option}{ opt = outerdraw, desc = {= \meta{outerdraw}}, init=black }
+  The outer bids\footnote{The outer bid is that is not counted away from the beam.}drawing color.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, outerdraw = yellow4}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{outer bids filling color}
+
+\begin{option}{ opt = outerfill, desc = {= \meta{outerfill}}, init=white }
+  The outer bids filling color。
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, outerfill = yellow9}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{inner bids drawing color}
+
+\begin{option}{ opt = innerdraw, desc = {= \meta{innerdraw}}, init=black }
+  The inner bids\footnote{The inner bid is that is counted near to the beam.}drawing color.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, innerdraw = red8}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
+\subsection{inner bids filling color}
+
+\begin{option}{ opt = innerfill, desc = {= \meta{innerfill}}, init=black}
+  The inner bids filling color.
+\end{option}
+
+\begin{SideBySideExample}[frame=single,numbers=left,%
+                xrightmargin=.37\linewidth,gobble=2]
+  \centering
+  \suanpanset{scale = 0.65, innerfill = red9}
+  \begin{suanpan}
+    \rods{0, 6, 0}
+  \end{suanpan}
+\end{SideBySideExample}
+
 \end{documentation}
 
 \end{document}

Modified: trunk/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty	2024-08-30 21:08:48 UTC (rev 72140)
+++ trunk/Master/texmf-dist/tex/latex/suanpan-l3/suanpan-l3.sty	2024-08-30 21:09:00 UTC (rev 72141)
@@ -8,7 +8,8 @@
 \NeedsTeXFormat{LaTeX2e}[2020/10/01]
 \RequirePackage{expl3}
 % \ProvidesExplPackage{suanpan}{2024-08-20}{v1.0.0} % 初稿
-\ProvidesExplPackage{suanpan-l3}{2024-08-28}{v1.1.0} % 代码优化(统一尺寸计算,添加空白占位)
+% \ProvidesExplPackage{suanpan}{2024-08-28}{v1.1.0} % 优化(统一尺寸计算,添加空白占位)
+\ProvidesExplPackage{suanpan-l3}{2024-08-30}{v1.1.1} % 更名为suanpan-l3
   {draw suanpan(abacus) with LaTeX3}
 
 \RequirePackage{l3keys2e}



More information about the tex-live-commits mailing list.