1

This question was answered a few years ago, but does not seem to work completely - or rather, it works for displaying everything except the numbers. If I use this solution:

How to install and use the key fonts for a TI-Calculator in pdflatex or xelatex

and specifically this code:

\documentclass{standalone}
\usepackage{fontspec}
\usepackage{ifluatex,ifxetex}
\newfontfamily{\TIfont}{TI83____.TTF}
\DeclareTextFontCommand{\tifont}{\TIfont}

\ifluatex
\def\TI#1{\tifont{\directlua{fonts.otf.char("#1")}}}
\fi
\ifxetex
\def\TI#1{\tifont{\XeTeXglyph\the\XeTeXglyphindex"#1"}}
\fi

\begin{document}

A sample text \\
\TI{A}\TI{B}\TI{C}\TI{D}\TI{E}\TI{F}\TI{G}\TI{H}

\end{document}

then I can indeed get results for these buttons (log, ln etc). XeLatex seems more reliable. But if is use (e.g.) \TI{1} (which I think should return a "3"), I just get an empty square. Any ideas what's going on - and how to solve this?

2
  • Is there a public place where to download the font?
    – egreg
    Mar 16, 2018 at 17:58
  • I'm not sure how permanent it is, but education.ti.com/en/software/details/en/… looks like the official source from TI (it's a Windows self-extracting zip archive but you can extract it with regular tools on Linux/Mac).
    – Marijn
    Mar 16, 2018 at 18:37

2 Answers 2

1

The numbers in the TI83 font don't seem to have regular names. You can use the index number instead. Unfortunately they are not numbered sequentially but according to their position on the keyboard, therefore it may be useful to define a macro for the numbers.

MWE (with a lookup table for the indexes):

\documentclass{article}
\usepackage{fontspec}
\usepackage{pgffor}
\newfontfamily{\TIfont}{TI-83 Symbols}
\DeclareTextFontCommand{\tifont}{\TIfont}

\def\TI#1{\tifont{\XeTeXglyph\the\XeTeXglyphindex"#1"}}

\def\TInum#1{%
\ifcase#1\relax%
\tifont{\XeTeXglyph 172}%
\or%
\tifont{\XeTeXglyph 162}%
\or%
\tifont{\XeTeXglyph 163}%
\or%
\tifont{\XeTeXglyph 164}%
\or%
\tifont{\XeTeXglyph 152}%
\or%
\tifont{\XeTeXglyph 153}%
\or%
\tifont{\XeTeXglyph 154}%
\or%
\tifont{\XeTeXglyph 142}%
\or%
\tifont{\XeTeXglyph 143}%
\or%
\tifont{\XeTeXglyph 144}%
\fi%
}

\begin{document}
A sample text

\TI{A}\TI{B}\TI{C}\TI{D}\TI{E}\TI{F}\TI{G}\TI{H}

\TInum{0}\TInum{1}\TInum{2}\TInum{3}\TInum{4}\TInum{5}\TInum{6}\TInum{7}\TInum{8}\TInum{9}

\vspace{1cm}
\parindent=0pt
\foreach \x in {1,...,223}
   {\x\thinspace\tifont{\XeTeXglyph\x} }

\end{document}

Result:

enter image description here

0
2

This is a table that should contain all characters in the font, with a map to their character code:

\documentclass{article}
\usepackage[margin=0.5in]{geometry}
\usepackage{multicol}
\usepackage{fontspec}
\usepackage{ifluatex,ifxetex}
\newfontfamily{\TIfont}{TI84PlusCEKeys}[% <- Use the name on your system
  Path=./,% the right path, if needed
  Extension=.ttf,% fix for your system
]
\DeclareTextFontCommand{\tifont}{\TIfont}

\newcommand{\TI}[1]{\tifont{#1}}

\begin{document}

A sample text

\TI{A}\TI{B}\TI{C}\TI{D}\TI{E}\TI{F}\TI{G}\TI{H}

\begin{multicols}{4}
\TIfont

\count255=0
\loop\ifnum\count255<10000
\iffontchar\font\count255
  \hbox{\makebox[2.5em][r]{\normalfont\the\count255\quad}\TIfont\char\count255}
\fi
\advance\count255 1
\repeat

\end{multicols}

\end{document}

enter image description here

Once you have the table, you can input the symbols with easier to remember strings; the conversion table is not complete, but straightforward and extensible.

\documentclass{article}
\usepackage[margin=0.5in]{geometry}
\usepackage{multicol}
\usepackage{fontspec}

\newfontfamily{\TIfont}{TI84PlusCEKeys}[% <- Use the name on your system
  Path=./,% the right path, if needed
  Extension=.ttf,% fix for your system
]
\DeclareTextFontCommand{\tifont}{\TIfont}

\newcommand{\TI}[1]{\tifont{#1}}

\ExplSyntaxOn
\NewDocumentCommand{\TIs}{m}
 {
  \TIfont
   {
    \clist_map_inline:nn { #1 }
     {
      \symbol { \str_case:nV { ##1 } \c_tikeys_translation_tl }
     }
   }
 }
\tl_const:Nn \c_tikeys_translation_tl
 {
  {to}{33}
  {scatter}{34}
  {grey}{35}
  {black}{36}
  {barplot}{38}
  {space}{39}
  {graph}{40}
  {regression}{41}
  {boxplotdots}{42}
  {boxplot}{43}
  {statplot}{44}
  {tablset}{45}
  {format}{46}
  {calc}{47}
  {table}{48}
  {>}{49}
  {>>}{50}
  {>>|}{51}
  {e}{52}
  % ...
  {atan}{65}
  {pi}{66}
  {sqrt}{67}
  {EE}{68}
  {lbrace}{69}
  {rbrace}{70}
  {10^x}{71}
  {lbrack}{72}
  {rbrack}{73}
  % ...
  {+}{195}
  {-}{185}
  {0}{202}
  {1}{192}
  {2}{193}
  {3}{194}
  {4}{182}
  {5}{183}
  {6}{184}
  {7}{172}
  {8}{170}
  {9}{174}
  % ...
}
\ExplSyntaxOff

\begin{document}

A sample text

\TI{A}\TI{B}\TI{C}\TI{D}\TI{E}\TI{F}\TI{G}\TI{H}

\TIs{atan,pi,sqrt,EE,lbrace,rbrace,10^x,lbrace}

\TIs{1,2,3,+,4,5,6,7,-,8,9,0}

\end{document}

enter image description here

1
  • I'll add later a better interface for inputting the glyphs. I only found the TI-84 font, but it should be the same with your font file (the codes can be different).
    – egreg
    Mar 16, 2018 at 17:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .