2 luatexbase.module_warning=function()end
4 \ifdefined\fsize\else\def\fsize{10pt}\fi
5 \edef\head{\noexpand\documentclass[\fsize,xreal]{ltjsarticle}}
6 \head\usepackage{type1cm}
8 \let\ltj@selectfont@patch\relax
9 \newcount\cI\newcount\cF\newdimen\szd
10 \gdef\S@#1at#2at#3\@nil{%
12 \ifx\@tempa\@empty\else
13 \@tempdima=\dimexpr#2-\@tempdimb\relax
14 \ifdim\@tempdima<\z@ \@tempdima=\@tempdima\fi
15 \ifdim\@tempdima>\szd \global\szd=\@tempdima\fi
19 \setbox0\hbox{\fontsize{#1\js@mpt}{10}\selectfont
21 \edef\@tempa{\scantextokens\expandafter{\fontname\font}\space at\space at}%
22 \expandafter\S@\@tempa\@nil
25 \def\js@setfontsize#1#2#3{%
26 \edef\Fsize{\the\dimexpr\directlua{tex.sprint(#2*\js@magscale)}pt}%
27 \@setfontsize#1{#2\js@mpt}{#3\js@mpt}}
29 #1\message{^^J\string#1: \fontname\font\space (ideal: \Fsize)}%
32 \def\T@#1#2#3{\global\count@=}
34 \setbox0\hbox{\fontsize{#1\js@mpt}{10}\selectfont
35 \expandafter\T@\romannumeral-`0\fontname\font
38 \typeout{@FAIL: #1\string\js@mpt\space selects cmr\the\count@
39 \space(should be cmr#2)}\szd=1pt%
42 \begin{document}\errorstopmode
43 \typeout{^^J@part 1: optical size for cmr}
59 \ifdim\szd=0pt\typeout{--> @PASSED}\fi
61 \typeout{^^J@part 2: size difference}
62 \cI=1 \loop\ifnum\cI<50 {%
63 \cF=0 \loop\ifnum\cF<10
64 \edef\@tempa{\the\cI.\the\cF}\S{\@tempa}
65 \edef\@tempa{\the\cI.\the\cF5}\S{\@tempa}
69 \directlua{print('--> @max difference = ' .. tex.getdimen('szd') .. 'sp')}