summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/csplain/base/csfontsm.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/csplain/base/csfontsm.tex')
-rw-r--r--Master/texmf-dist/tex/csplain/base/csfontsm.tex31
1 files changed, 19 insertions, 12 deletions
diff --git a/Master/texmf-dist/tex/csplain/base/csfontsm.tex b/Master/texmf-dist/tex/csplain/base/csfontsm.tex
index a8d78de7f40..840912f1903 100644
--- a/Master/texmf-dist/tex/csplain/base/csfontsm.tex
+++ b/Master/texmf-dist/tex/csplain/base/csfontsm.tex
@@ -20,11 +20,24 @@
% The \regfont adds a new `registered' font-selector to the \resizeall macro
% The font-loading macros can register their fonts by \regfont.
-\def\sizespec{} % by default: fonts are loaded in their implicit sizes
+% You can use: \letfont \titlefont = \tenbf at15pt
+
+\def\letfont#1#2{\ifx#2=\expandafter\letfont\expandafter#1\else
+ \expandafter\font\expandafter#1\expandafter
+ \rfontskipat\fontname#2 \relax\space \fi}
+
+ % XeTeX expands \fontname to "name with spaces":
+\def\rfontskipat#1{\ifx#1"\expandafter\rfskipatX
+ \else\expandafter\rfskipatN\expandafter#1\fi}
+\def\rfskipatX #1" #2\relax{"\whichtfm{#1}"}
+\def\rfskipatN #1 #2\relax{\whichtfm{#1}}
+
+\def\whichtfm#1{#1} % User can redefine it in order to select proper
+ % dessign size of the font, see ams-math.tex for
+ % example.
+\def\resizefont#1{\letfont#1#1\sizespec}
-\def\resizefont #1{\expandafter
- \font\expandafter#1\expandafter\resizefontskipat\fontname#1 \relax}
-\def\resizefontskipat#1 #2\relax{#1 \sizespec\relax}
+\ifx\resizeall\undefined \else \endinput \fi
\font\tenbi=csbxti10 % it may be usable to have
% the quartet \rm \it \bf \bi preloaded
@@ -34,15 +47,9 @@
\resizeall \resizefont#1}}
\def\resizeall{}
+\regfont\tenrm \regfont\tenit \regfont\tenbf \regfont\tenbi \regfont\tentt
-\regfont\tenrm \regfont\tenit \regfont\tenbf \regfont\tenbi
-\regfont\tentt
-
-% You can use: \letfont \titlefont = \tenbf at15pt
-
-\def\letfont #1{%
- \def\tmp##1 {\let\tmp\sizespec \def\sizespec{##1}\resizefont#1\let\sizespec\tmp}%
- \afterassignment\tmp \let#1}
+\def\sizespec{} % by default: fonts are loaded in their implicit sizes
\endinput %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%