% \iffalse meta-comment % % Copyright (C) 1993-2024 % The LaTeX Project and any individual authors listed elsewhere % in this file. % % This file is part of the LaTeX base system. % ------------------------------------------- % % It may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c % of this license or (at your option) any later version. % The latest version of this license is in % https://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2008 or later. % % This file has the LPPL maintenance status "maintained". % % The list of all files belonging to the LaTeX base distribution is % given in the file `manifest.txt'. See also `legal.txt' for additional % information. % % The list of derived (unpacked) files belonging to the distribution % and covered by LPPL is defined by the unpacking scripts (with % extension .ins) which are part of the distribution. % % \fi % \iffalse %%% File: exscale.dtx %% Copyright (C) 1992-1997,2007 Frank Mittelbach and Rainer Sch\"opf, %% all rights reserved. %\NeedsTeXFormat{LaTeX2e} %\ProvidesPackage{exscale} %\ProvidesFile{OMXcmex.fd} % [2018/09/24 v2.1i % Standard LaTeX package exscale] % exscale package font definitions] %<*driver> \documentclass{ltxdoc} \usepackage{exscale} \GetFileInfo{exscale.sty} \begin{document} \title{The \texttt{exscale} package\thanks {This file has version number \fileversion, dated \filedate.}\\ for use with \LaTeX2e} \author{Frank Mittelbach \and Rainer Sch\"opf} \date{\filedate} \MaintainedByLaTeXTeam{latex} \maketitle \DocInput{exscale.dtx} \end{document} % % \fi % % % \changes{v2.1g}{1997/06/16}{Documentation fix.} % \changes{v2.1d}{1994/05/09}{Added setting \cs{big}... sizes.} % \changes{v2.1c}{1994/05/08}{Changed to new documentation standards.} % \changes{v2.1a}{1993/12/12}{Update for \LaTeXe} % % \def\MF{\textsf{Metafont}} % \def\dst{{\normalfont\scshape docstrip}} % % % \section{Introduction} % % On popular request, this package implements scaling of the % math extension font `cmex'. If this package is used the site needs % scaled versions of the \texttt{cmex10} in the sizes 10.95pt, 12pt, % 14.4pt , 17.28pt, 20.74pt, and 24.88pt which corresponds to standard % magsteps using |\magstephalf|, and |\magstep1| through |\magstep5|. % Additionally `cmex' variants for the sizes 7pt to 9pt are necessary. % These fonts are part of the AMS font package and can be found on % many servers. % % We don't think that using a scalable `cmex' font improves the % appearance of the document very much because the linear scaling of % the font introduces changes to font dimen parameters of the font % that are used all over the place in \TeX's math placement routines % and definitely shouldn't be scaled linearly. As a positive result, % however, symbols from this font will come out in approximately the % right size when used with a large basis font size. % % We therefore strongly recommend the generation of designed fonts for % the larger sizes and hope that the corresponding \MF{} sources will % be available in the near future. % % % \section{Usage} % % This file can be used either as a package by placing its name % in the argument of % |\usepackage|, or by generating from it a |.fd| file which then % replaces the normally used |.fd| file |OMXcmex.fd|. % % For the second solution you should prepare a small \dst{} command % file containing the following statements: % \begin{quote} % |\def\batchfile{|\meta{name-of-your-command-file}|}| \\ % |\input docstrip.tex| \\ % |\generateFile{OMXcmex.fd}{t}{\from{exscale.dtx}{fd}}| % \end{quote} % and then run this file through \LaTeX. % This would mean however, that your documents may look different if % they are printed on another installation whereas when using the % package file they would come out the same on both sites. % % \MaybeStop{} % % % \section{Implementation} % % % In case this should produce a font definition file we write % a message to the transcript file only. % The explicit spaces are necessary in an % |.fd| file and the |\string| guards against situations where |`|, % |<| or |>| is active. % \changes{v2.1f}{1995/11/27}{Use \cs{ProvidesFile}} % \begin{macrocode} %\ProvidesFile{OMXcmex.fd}[]% moved to top of the file % \end{macrocode} % % We now define to which external fonts the font/shape Computer Modern % Extension Medium Normal. For the sizes 7--10pt we use fonts that are % designed for the corresponding size and for the higher sizes we use % scaled versions of the 10pt font since for these sizes no designed % fonts are easily available. % \begin{macrocode} %<*fd|package> \DeclareFontShape{OMX}{cmex}{m}{n}{% % \end{macrocode} % According to Michael Downes `cmex5' and `cmex6' are not % distributed currently. Therefore we use `cmex7' in those size but % we omit a warning. % \begin{macrocode} <-8>sfixed * cmex7 <8> cmex8 <9> cmex9 <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88>cmex10 }{} % % \end{macrocode} % % We also redeclare the symbol font for large symbols. This is % already done when the base format also uses CM math fonts, but it % doesn't hurt either. % \begin{macrocode} %<*package> \DeclareSymbolFont{largesymbols}{OMX}{cmex}{m}{n} % \end{macrocode} % % Finally we redefine the primitive commands |\big|, |\Big|, |\bigg| % and |\Bigg| to change size with main size changes. To this end we % need a new dimen register |\big@size|. % \begin{macrocode} \newdimen\big@size % \end{macrocode} % This dimen is set with every size change to $1.2$ times the height % of a left parenthesis. % \changes{v2.1e}{1994/11/06}{Renamed \cs{every@size} to % \cs{every@math@size}} % \changes{v2.1e}{1994/11/06}{Update \cs{big@size} globally} % \changes{v2.1h}{2001/10/29}{Use box 0 within group to avoid changing this % scratch register} % \begin{macrocode} \addto@hook\every@math@size{% \begingroup \setbox\z@\vbox{\hbox{$($}\kern\z@}% \global\big@size 1.2\ht\z@ \endgroup} % \end{macrocode} % Now we can define the macros. Note: |\n@space| sets the internal % variables |\nulldelimiterspace| and |\mathsurround| to zero length. % % Older kernels (e.g in roll back didn't have LR-mode with the % these commands) so we test for the support comment. This only works % if the rollback request is before loading this package but that is % where it should be. % \changes{v2.1i}{2018/09/24}{Start LR-mode if necessary (git/49)} % \begin{macrocode} \ifx\leavevmode@ifvmode\@undefined \def\bBigg@#1#2{% {\hbox{$\left#2\vcenter to#1\big@size{}\right.\n@space$}}} \else \def\bBigg@#1#2{\leavevmode@ifvmode {\hbox{$\left#2\vcenter to#1\big@size{}\right.\n@space$}}} \fi \def\big{\bBigg@\@ne} \def\Big{\bBigg@{1.5}} \def\bigg{\bBigg@\tw@} \def\Bigg{\bBigg@{2.5}} % \end{macrocode} % % \begin{macrocode} % % \end{macrocode} % % \Finale % \endinput