卡克托维克因纽皮克语数字

卡克托维克因纽皮克语数字

我如何插入这些数字符号

在此处输入图片描述

在 LaTeX 中?这些可以通过某些软件包获得吗?

答案1

你可以用 Ti 来建造它们Z,参见这里进行讨论。Z 不仅允许我们绘制这些东西,而且还提供了进行模数运算的所有方法,使这项任务变得有趣。(一可以使用库之类的技巧可以使其更“有趣”和更短turtle。但是,这篇文章是为了让您在没有这些花招的情况下开始。)这实现了数字 1-20。它们的字体大小和粗细会根据周围环境进行调整。

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\makeatletter
\DeclareRobustCommand{\checkbold}[1]{% https://tex.stackexchange.com/a/24635/121799
 \edef\@tempa{\math@version}\edef\@tempb{bold}%
 \ifx\@tempa\@tempb%
  \def#1{1}%
 \else
  \def#1{0}%
 \fi}
\makeatother 
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.5ex,0);}},
2/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.4ex,0)-- (0.8ex,1ex);}},
3/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.3ex,0)-- (0.6ex,1ex) -- (0.9ex,0ex);}},
4/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.25ex,0)-- (0.5ex,1ex) -- (0.75ex,0ex)-- (1ex,1ex) ;}},
5/.style={code={\draw (0,0) -- (1ex,0.4ex);}},
10/.style={code={\draw (0,0) -- (1ex,0.3ex) -- (0,0.6ex);}},
15/.style={code={\draw (0,0) -- (1ex,0.25ex) -- (0,0.5ex) --(1ex,0.75ex);}},
}
\newcommand{\InupiaqNo}[2][]{\checkbold\tmp%
\scalerel*{%
\begin{tikzpicture}[baseline=0em,line width={(1+0.45*\tmp)*0.06em},
    line cap=round,line join=round,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
  \fi   
 \fi
\fi
\end{tikzpicture}}{M}%
}
\begin{document}
\foreach \X [evaluate=\X as \Y using {int(\X+10)}] in {1,...,10}
{$\X:~\InupiaqNo{\X}\ifnum\X=10 \quad~\,\else\qquad\fi\Y:~\InupiaqNo{\Y}$\par}

{\Large $12:~\InupiaqNo{12}$} {\Large\boldmath $12:~\InupiaqNo{12}$} 
{\Huge $7:~\InupiaqNo{7}$} {\Huge\boldmath $17:~\InupiaqNo{17}$}
\end{document}

在此处输入图片描述

编辑:将它们变成单笔画字符,感谢@DavidCarlisle 的提醒。

可能只是我的感觉,但不知为何这些符号让我想起了一些事情……

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\makeatletter
\DeclareRobustCommand{\checkbold}[1]{% https://tex.stackexchange.com/a/24635/121799
 \edef\@tempa{\math@version}\edef\@tempb{bold}%
 \ifx\@tempa\@tempb%
  \def#1{1}%
 \else
  \def#1{0}%
 \fi}
\makeatother 
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.5ex,0);}},
2/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.4ex,0)-- (0.8ex,1ex);}},
3/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.3ex,0)-- (0.6ex,1ex) -- (0.9ex,0ex);}},
4/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.25ex,0)-- (0.5ex,1ex) -- (0.75ex,0ex)-- (1ex,1ex) ;}},
5/.style={code={\draw (0,0) -- (1ex,0.4ex);}},
10/.style={code={\draw (0,0) -- (1ex,0.3ex) -- (0,0.6ex);}},
15/.style={code={\draw (0,0) -- (1ex,0.25ex) -- (0,0.5ex) --(1ex,0.75ex);}},
}
\newcommand{\InupiaqNo}[2][]{\checkbold\tmp%
\scalerel*{%
\begin{tikzpicture}[baseline=0em,line width={(1+0.45*\tmp)*0.06em},
    line cap=round,line join=round,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
  \fi   
 \fi
\fi
\end{tikzpicture}}{M}%
}
\begin{document}
\Huge\noindent\pagecolor{black}\color{green}\foreach \X in {1,...,496}
{\pgfmathtruncatemacro{\myrnd}{1+20*rnd}\InupiaqNo{\myrnd}\space}

\end{document}

在此处输入图片描述

附录:只是为了好玩:玩了一下这个很酷的calligraphy库。还有很大的改进空间(当然,就我而言),但这只是为了尝试一下。它还将角色存储在保存箱中,如果您使用很多保存箱,这将非常有利。

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\usetikzlibrary{calligraphy}
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi to[bend right=10]  (0.5ex,0);}},
2/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi
to[bend right=10] (0.4ex,0) to[bend left=10] (0.8ex,1ex);}},
3/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi
to[bend right=10] (0.3ex,0) to[bend left=10] (0.6ex,1ex) to[bend right=10] (0.9ex,0ex);}},
4/.style={code={\calligraphy \ifnum\FiveDigits=0 (0,1ex) \else (0,1.2ex)\fi
to[bend right=10] (0.25ex,0) to[bend left=10] (0.5ex,1ex) to[bend right=10]
(0.75ex,0ex) to[bend left=10] (1ex,1ex) ;}},
5/.style={code={\calligraphy (0,0) to[bend right=10] (1ex,0.4ex);}},
10/.style={code={\calligraphy (0,0) to[bend right=10] (1ex,0.3ex) to[bend
left=10] (0,0.6ex);}},
15/.style={code={\calligraphy (1ex,0.75ex) to[bend left=10] (0,0.5ex)
 to[bend right=10] (1ex,0.25ex) to[bend left=10] (0,0);}},
}
\newcommand{\InupiaqNoTikZ}[2][]{%
\begin{tikzpicture}[baseline=0em,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \pen (-90:{0.06ex})  -- (90:{0.06ex});
   \calligraphy[light,looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \pen (-95:{0.08em})  -- (85:{0.08em});
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi;
   \pen (-180:{0.08em}) -- (0:{0.08em});
   \path \ifnum\FiveDigits=0 \else (0.08ex,1.28ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
   \ifnum\the\numexpr\SingleDigits*\FiveDigits>0
   \fi
  \fi   
 \fi
\fi
\end{tikzpicture}}
\foreach \X in {1,...,20}
{\expandafter\newsavebox\csname InupiaqBox\X\endcsname
\global\expandafter\sbox\csname InupiaqBox\X\endcsname{\InupiaqNoTikZ{\X}}}

\newcommand{\InupiaqNo}[1]{\scalerel*{\expandafter\usebox\csname InupiaqBox#1\endcsname}{M}%
}
\begin{document}
\Huge
\foreach \X in {1,...,20} {\X:\InupiaqNo{\X}\space}
\end{document}

在此处输入图片描述

答案2

这只是对讨论的一个小调整。上面表示 20 的符号实际上是 Kaktovik 使用的 20 进制数字系统中表示 0 的数字,而不是表示 20 的符号(见Bartley, Wm. Clark,《让旧方式发挥作用》Silva,Eduardo Marín;Miller,Kirk;Strand,Catherine“卡克托维克数字的统一码请求 (L2/21-058R)”。20 写为 1 的数字,后面跟着 0 的数字。

@user194703 对第一个(最简单的)LaTeX 解决方案的修订解决了这个问题

\documentclass{article}
\usepackage{scalerel}
\usepackage{tikz}
\makeatletter
\DeclareRobustCommand{\checkbold}[1]{% https://tex.stackexchange.com/a/24635/121799
 \edef\@tempa{\math@version}\edef\@tempb{bold}%
 \ifx\@tempa\@tempb%
  \def#1{1}%
 \else
  \def#1{0}%
 \fi}
\makeatother 
\tikzset{pics/InupiaqNo/.cd,
1/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.5ex,0);}},
2/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.4ex,0)-- (0.8ex,1ex);}},
3/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.3ex,0)-- (0.6ex,1ex) -- (0.9ex,0ex);}},
4/.style={code={\draw \ifnum\FiveDigits>0 (0,1.2ex) \else (0,1ex)\fi -- (0.25ex,0)-- (0.5ex,1ex) -- (0.75ex,0ex)-- (1ex,1ex) ;}},
5/.style={code={\draw (0,0) -- (1ex,0.4ex);}},
10/.style={code={\draw (0,0) -- (1ex,0.3ex) -- (0,0.6ex);}},
15/.style={code={\draw (0,0) -- (1ex,0.25ex) -- (0,0.5ex) --(1ex,0.75ex);}},
}
\newcommand{\InupiaqNo}[2][]{\checkbold\tmp%
\scalerel*{%
\begin{tikzpicture}[baseline=0em,line width={(1+0.45*\tmp)*0.06em},
    line cap=round,line join=round,#1]
\ifnum#2>0
 \ifnum#2<21
  \ifnum#2=20
   \pgfmathtruncatemacro{\SingleDigits}{1}%
   \pgfmathtruncatemacro{\FiveDigits}{0}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
   (0,0) (1ex,2ex);
   \begin{scope} [xshift=1ex,yshift=0ex]
   \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
   \path (0,0) (1ex,2ex);
   \end{scope}
  \else 
   \pgfmathtruncatemacro{\SingleDigits}{Mod(#2,5)}%
   \pgfmathtruncatemacro{\FiveDigits}{int(#2/5)*5}%
   \path \ifnum\SingleDigits=0 \else pic{InupiaqNo/\SingleDigits} \fi
   \ifnum\FiveDigits=0 \else (0,1.2ex) pic{InupiaqNo/\FiveDigits} \fi
    (0,0) (1ex,2ex);
  \fi   
 \fi
\else
 \draw[looseness=1.6] (0,1ex) to[out=-45,in=0] (0.5ex,0) to[out=180,in=-135] (1ex,1ex);
 \path (0,0) (1ex,2ex); 
\fi
\end{tikzpicture}}{M}%
}
\begin{document}
\foreach \X [evaluate=\X as \Y using {int(\X+10)}] in {1,...,10}
{$\X:~\InupiaqNo{\X}\ifnum\X=10 \quad~\,\else\qquad\fi\Y:~\InupiaqNo{\Y}$\par}

{\Large $12:~\InupiaqNo{12}$} {\Large\boldmath $12:~\InupiaqNo{12}$} 
{\Huge $7:~\InupiaqNo{7}$} {\Huge\boldmath $17:~\InupiaqNo{17}$}
\end{document}

相关内容