经过研究,mathabx 是唯一在 tex 中支持玛雅数字的包。
例如,输入$\maya{2013}$
结果为:
现在的问题是......数字被侧面旋转了(奇怪的是,表示零的海螺壳没有旋转)。
也就是说,组正确地垂直堆叠,但在每个组内,数字本身会横向旋转
与之比较维基百科 19 的示例
我理解原因是字体编码的数字是旋转的,但我真的不明白我应该编辑什么才能得到水平数字
我了解到这些数字是在 fonts\source\public\mathabx\maydigit.mf 中创建的,但打开它显示的是 metafont 而不是 tex,而且 metafont 看起来像中文(玛雅?)
有人能帮助我理解如何将数字旋转回水平模式吗?
編輯>
最小示例:
\documentclass{minimal}
\usepackage{mathabx}
\newcommand\mathbfont{\usefont{U}{mathb}{m}{n}}
\begin{document}
\mayadigit{17}
\[
\maya{2013},
\maya{123},
\maya{45}
\]
\end{document}
它产生:
我尝试实现的目标(在图形程序中编辑):
\maya
由于它运行正常,我不需要修复。
它选择正确的数字并将其放在适当的位置。我需要的是旋转“数字符号”
所以我继续尝试编辑源 maydigit.mf。我想我可以尝试修复“two”(两个点),这样它就不会显示“:”,而是显示“..”
相关代码是
beginchar("2",fig_width#+2appr#,fig_height#,0);
"Maya numeral 2 (ca)";
% italcorr fig_height#*slant-0.5u#;
pickup fine.nib;
adjust_dot1((0.5w,0.25h),dtsz,false,false);
dot(1,1');
adjust_dot2((0.5w,0.75h),dtsz,false,false);
dot(2,2');
endchar;
我认为交换这些坐标 (0.5w,0.25h) 和另一个坐标会成功。我这样做了,保存了源代码,重新编译了我的 .tex 示例……但没有任何效果(就好像字体已经“编译”过了,更改源代码不会更新使用的字体本身)。
我开始明白了。将代码改为
beginchar("2",fig_width#+2appr#,fig_height#,0);
"Maya numeral 2 (ca)";
% italcorr fig_height#*slant-0.5u#;
pickup fine.nib;
adjust_dot1((0.25h,0.5w),dtsz,false,false);
dot(1,1');
adjust_dot2((0.75h,0.5w),dtsz,false,false);
dot(2,2');
endchar;
有效(间距很奇怪,但至少两个点现在是水平的)。我不仅要交换坐标,还要交换后缀(h,w)。
结果如下:
我会继续努力
答案1
以下似乎按预期工作:
\documentclass{article}
\usepackage{graphicx,mathabx}% http://ctan.org/pkg/{graphicx,mathabx}
\newcommand\mathbfont{\usefont{U}{mathb}{m}{n}}
\begin{document}
\mayadigit{17}
\[
\maya{2013}, \maya{123}, \maya{45}
\]
\noindent\hrulefill
\def\mayaexpansion{%
\mayacntc=\mayacnta\mathbfont
\ifnum\mayacntc=0 0\else
\rotatebox[origin=c]{-90}{%
\loop\ifnum\mayacntc>5\advance\mayacntc by -5\repeat
\the\mayacntc\mayacntc=\mayacnta
\loop\ifnum\mayacntc>5\advance\mayacntc by -5 5\repeat}%
\fi}%
\mayadigit{17}
\[
\maya{2013}, \maya{123}, \maya{45}
\]
\end{document}
的定义\mayaexpansion
取自mathabx.dcl
.插入的是graphicx
围绕物体中心旋转 -90 度c
。仅当物体不为零时才执行此操作。
答案2
注意:以下内容不适用于
pdfLaTeX
。
在网站上,MayaPS:使用 TeX/LaTeX 输入 Maya您将找到一个字体包,它使您能够使用多个玛雅字形(例如,用于书写数字)来满足您的要求。以下是 MWE:
\documentclass[letterpaper]{article}
\input mayaps
\begin{document}
\mayaSize{0.5cm}
\begin{minipage}{1cm}
\maya{905}\\
\maya{900}\\
\maya{913}
\end{minipage}
\end{document}
您在此处看到的数字 905、900 和 913 是分配给字形的数字。您可以在第 10 页和第 11 页找到这些数字法典地图文件。要编译该文档,您需要将文件mayaps.tex
、mayaps.pro
、codex.mpf
、red89.tex
(如果需要)和mpfmap.tex
(如果需要)复制到当前目录(文件夹)。您可以在软件包文档的第 5 页找到此文件(参考手册)。