A tikz
solution is obtained by modifying the answer https://tex.stackexchange.com/a/41628/15925
\documentclass[border=0.5cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes}
\tikzset{
dot hidden/.style={},
line hidden/.style={},
dot colour/.style={dot hidden/.append style={color=#1}},
dot colour/.default=black,
line colour/.style={line hidden/.append style={color=#1}},
line colour/.default=black
}
\usepackage{xparse}
\NewDocumentCommand{\drawdie}{O{}m}{%
\begin{tikzpicture}[x=1em,y=1em,radius=0.1,#1]
\draw[rounded corners=0.5,line hidden] (0,0) rectangle (1,1);
\ifodd#2
\fill[dot hidden] (0.5,0.5) circle;
\fi
\ifnum#2>1
\fill[dot hidden] (0.2,0.2) circle;
\fill[dot hidden] (0.8,0.8) circle;
\ifnum#2>3
\fill[dot hidden] (0.2,0.8) circle;
\fill[dot hidden] (0.8,0.2) circle;
\ifnum#2>5
\fill[dot hidden] (0.8,0.5) circle;
\fill[dot hidden] (0.2,0.5) circle;
\ifnum#2>7
\fill[dot hidden] (0.5,0.8) circle;
\fill[dot hidden] (0.5,0.2) circle;
\fi
\fi
\fi
\fi
\end{tikzpicture}%
}
\begin{document}
\drawdie{0}
\drawdie{1}
\drawdie[radius=0.5pt]{3}
\drawdie{7}
\drawdie[line colour=blue,thick]{8}
\drawdie[scale=0.5,dot colour=green,very thin,line hidden/.append style={fill=red}]{9}
\end{document}
The changes I have made are to add an extra case for numbers >7
(7
worked already) and removed the thick
default for the border, allowing it to be set to other values in smaller sizes. I have also removed the external dotsize variable and given an example of filling.
ifsym
package the dice are created in metafont (so the symbols are characters in a font), and inepsdice
the dice are created in PostScript and the symbols are images clipped from a multipage file. So if you want to extend those packages you have to use either metafont or PostScript. As for "If not," you are bound to get several TikZ solutions soon.ifsym
, adjustingepsdice
or using TikZ?