% This code is by Chris Staecker. You are welcome to do anything with it. \documentclass{article} \usepackage{tikz} \usepackage{nopageno} \usepackage{geometry} \geometry{ letterpaper, total={7in,10in}, % left=1in, % right=.75in, % inner=.75in, % outer=.75in, % top=.25in, } \newcommand{\w}{1.2} \newcommand{\aspect}{.1} % w/h \newcommand{\h}{\w / \aspect} %\newcommand{\toppad}{.1*\h} \newcommand{\toppad}{0} \newcommand{\cellh}{(\h - 2*\toppad)/9} \newcommand{\headscale}{1.7*\w} \newcommand{\textscale}{\w} \newcommand{\pad}{.1*\w} \newcommand{\rod}[1]{ \draw (0,0) rectangle (\w, \h); \draw[shift={(0,\toppad)}] (0,0) -- (\w,0); \draw[shift={(0,{\toppad+3*\cellh})}] (0,0) -- (\w,0); \draw[shift={(0,{\toppad+6*\cellh})}] (0,0) -- (\w,0); \draw[shift={(0,{\toppad+9*\cellh})}] (0,0) -- (\w,0); % top row: only 2 digits, bigger \pgfmathsetmacro{\b}{int(Mod((#1)/10,10))} \pgfmathsetmacro{\c}{int(Mod((#1),10))} \node[scale=\headscale] () at (\w/2, {\h - \toppad - \cellh/2}) {\b\c}; % other rows \foreach \i in {2,...,9} { \pgfmathsetmacro{\a}{int(Mod((#1)*\i/100,10))} \pgfmathsetmacro{\b}{int(Mod((#1)*\i/10,10))} \pgfmathsetmacro{\c}{int(Mod((#1)*\i,10))} \pgfmathsetmacro{\y}{\h - \toppad - (\i-1) * \cellh - .5*\cellh} \node[scale=\textscale] () at (.25*\w, \y ) {\a}; \node[scale=\textscale] () at (.5*\w, \y ) {\b}; \node[scale=\textscale] () at (.75*\w, \y ) {\c}; } } \newcommand{\makerow}[1]{ \begin{tikzpicture} \foreach \j in {0,...,9} { \begin{scope}[shift={({\j*(\w+\pad)},{-#1*(\h+\pad)})}] \pgfmathsetmacro{\rodnum}{int(10*(#1)+\j)} \rod{\rodnum} \end{scope} } \end{tikzpicture} } \begin{document} \begin{centering} \makerow{0} \makerow{1} \newpage \makerow{2} \makerow{3} \newpage \makerow{4} \makerow{5} \newpage \makerow{6} \makerow{7} \newpage \makerow{8} \makerow{9} \end{centering} \end{document}