diff options
author | Karl Berry <karl@freefriends.org> | 2012-08-19 22:24:49 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-08-19 22:24:49 +0000 |
commit | b1ee70c8a339b99f2ad80faf3a97f28be20411be (patch) | |
tree | 6e6d076f2764a0e37c70d0fc509ba04a4025c6bd /Master/texmf-dist | |
parent | b930041db48f2f319759f365ac4a7cb55cc116b6 (diff) |
tpslifonts non-update
git-svn-id: svn://tug.org/texlive/trunk@27464 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/doc/latex/tpslifonts/00readme.txt | 126 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tpslifonts/01install.txt (renamed from Master/texmf-dist/doc/latex/tpslifonts/0install.txt) | 41 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tpslifonts/Makefile | 38 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tpslifonts/__TPslifonts.tex | 1233 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tpslifonts/slifontsexample.tex | 1328 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/tpslifonts/tpslifonts.dtx | 1621 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/tpslifonts/tpslifonts.ins | 64 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/tpslifonts/tpslifonts.sty | 600 |
8 files changed, 3195 insertions, 1856 deletions
diff --git a/Master/texmf-dist/doc/latex/tpslifonts/00readme.txt b/Master/texmf-dist/doc/latex/tpslifonts/00readme.txt index c94d5135baa..6d46258caa1 100644 --- a/Master/texmf-dist/doc/latex/tpslifonts/00readme.txt +++ b/Master/texmf-dist/doc/latex/tpslifonts/00readme.txt @@ -4,7 +4,7 @@ Configure presentation fonts alpha version (v0.6) - This readme file last changed on May 29, 2003 + This readme file last changed on July 27, 2004 Author: Stephan Lehmke <mailto:Stephan.Lehmke@cs.uni-dortmund.de> Lehrstuhl Informatik I @@ -13,6 +13,31 @@ ====================================================================== +Contents: +========= + +00readme.txt + This file. + +01install.txt + Installation instructions. + +Makefile + Builds documentation and unpacks dtx-file. + (Only useful on Unix-like systems.) + +tpslifonts.dtx + Documented TeX source for the tpslifonts package. + +tpslifonts.ins + Docstrip batchfile that generates the tpslifonts package. + +slifontsexample.tex + An documented example. + +Overview: +========= + Beamer and overhead presentations are often viewed under peculiar circumstances. Especially for presentations which are projected directly `out of the computer', low power of the beamer, low @@ -63,102 +88,3 @@ but is completely independent and can be used without texpower without problems. The example document slifontsexample.tex can also be compiled without TeXPower installed. - -Sorry, no `real' documentation yet. - -The package doesn't define any user-level commands; the font -configuration is done entirely by package options. - -There are some comments inside the package describing the options and -other goings-on. - -Furthermore, the accompanying example document slifontsexample gives a -lot of information about the fonts configured and some examples of -math typesetting. Please read the comments in slifontsexample.tex -carefully and try out some of the configuration variants described -therein. - -Description of package options for tpslifonts -============================================= - -Text font options. - -The default is to use SliTeX computer modern sans serif, an eminently -readable font and my personal favourite. - - Option Meaning - ------ ------- - - cmr Set computer modern roman text fonts. - - cmss Set computer modern sans serif text fonts. - - cmbright Set computer modern bright text fonts. - - concrete Set concrete text fonts. - - -Design size bounding. - -Usually design sizes are `bounded' by 8pt, that is, if an 8pt (or -lower) design size of a font exists, it will be scaled to larger sizes -even if larger design sizes exist, because large design sizes tend to -be less readable at low resolutions. For sizes below 8pt, smaller -design sizes are used if available. - -The limit of 8pt is adjustable (downwards) by options. - - Option Meaning - ------ ------- - - scale7pt Use 7pt as a bound. - - scale6pt Use 6pt as a bound. - - scale5pt Use 5pt as a bound. - - -Font scaling. - -The default lcmss text fonts have very high `small letters', making -normal-size fonts look small and difficult to read. There are options -for scaling up math and typewriter fonts slightly so they harmonize a -little more with text fonts. - - Option Meaning - ------ ------- - - scaleupmath scale up math fonts - - scaleuptt scale up typewriter fonts - - -Math fonts. - -Because the availability of different fonts in different encodings is -not really homogenous, we differentiate between the font used for -operator names (plus upper case greek, digits and some symbols) and -the font used for other symbols. In some cases (math extension font), -the choices are quite limited anyway. - -The default is to use cmr for operators and such and the standard cmm -and relatives for symbols. The concrete option for concrete text fonts -selects concrete math fonts by default, but as these don't seem to -exist in Type1 format currently, it's recommended to combine concrete -text with Euler math. - - Option Meaning - ------ ------- - - eulermath Use Euler math fonts. This implies the option textops - (see below). - - eulerdigits Take digits also from the Euler fonts (default: the - text font used). Can be used only in conjunction with - the eulermath option. - - cmbrightmath Use cmbright math fonts. - - textops Take operator names, upper case greek, digits and some - symbols from the text font rather than from some font - matching the math font (default for Euler math). diff --git a/Master/texmf-dist/doc/latex/tpslifonts/0install.txt b/Master/texmf-dist/doc/latex/tpslifonts/01install.txt index cf352e2b6ba..733f860738e 100644 --- a/Master/texmf-dist/doc/latex/tpslifonts/0install.txt +++ b/Master/texmf-dist/doc/latex/tpslifonts/01install.txt @@ -6,6 +6,8 @@ alpha version (v0.6) Installation Instructions + This file last changed on July 27, 2004 + Author: Stephan Lehmke <mailto:Stephan.Lehmke@cs.uni-dortmund.de> Lehrstuhl Informatik I Universität Dortmund @@ -13,33 +15,32 @@ ====================================================================== -The directory texpower/tpslifonts should contain the following files: - -00readme.txt Readme file explaining the package and its use. -0install.txt This file. -__TPslifonts.tex Body of the example file. -slifontsexample.tex `Header' of the example file. -tpslifonts.sty The package. - - Installation of tpslifonts.sty: ------------------------------- -If you have installed the current TeXPower bundle (e.g. from -CTAN:/macros/latex/exptl/texpower/), then tpslifonts has been -installed as part of it, so there's nothing to do. +If you have installed the current TeXPower bundle, then tpslifonts has +been installed as part of it, so there's nothing to do. + +If you want to install tpslifonts without TeXPower, do: + +1) Run "latex tpslifonts.ins" to generate + - tpslifonts.sty -If you want to install tpslifonts without TeXPower, please copy the -file tpslifonts.sty to a place where latex can find it. On a -TDS-compliant system, a nice place would be +2) Produce the documentation by running + latex tpslifonts.dtx + makeindex -s gglo.ist -o tpslifonts.gls tpslifonts.glo + makeindex -s gind.ist -o tpslifonts.ind tpslifonts.idx + latex tpslifonts.dtx - <path to a texmf tree>/tex/latex/texpower/tpslifonts/ +3) Move the file tpslifonts.sty to a place where latex can find it. On a + TDS-compliant system, a nice place would be -Then, on systems using a filename database, don't forget to refresh -the database! For teTeX, this is done by executing + <path to a texmf tree>/tex/latex/texpower/tpslifonts/ - texhash + Then, on systems using a filename database, don't forget to refresh + the database! +On a Unix-like system 1) and 2) can be done easily using "make". Compiling the example document: ------------------------------- @@ -59,7 +60,7 @@ corresponding parts. If you've not used pdflatex, please do whatever neccessary on your system to convert the document to pdf, then open in acrobat reader. -Read the `header' file slifontsexample.tex carefully; there are a lot +Read the file slifontsexample.tex carefully; there are a lot of configuration alternatives to try out. If the document should look ugly on screen, most likely you're missing diff --git a/Master/texmf-dist/doc/latex/tpslifonts/Makefile b/Master/texmf-dist/doc/latex/tpslifonts/Makefile new file mode 100644 index 00000000000..625328b2520 --- /dev/null +++ b/Master/texmf-dist/doc/latex/tpslifonts/Makefile @@ -0,0 +1,38 @@ +RM=rm -f +SHELL=sh +VERSION=0.1 +JUNKS=*.aux *.toc *.idx *.glo *.dvi *.log *.lof *.ist *.ilg *.ind *.gls *.out *.tmp *~ + +help: + @echo '**********************************************' + @echo ' The following targets exist: ' + @echo ' - all: All targets below ' + @echo ' - unpack: Unpacks the tpslifonts package ' + @echo ' - pack: Packs the package ' + @echo ' - doc: Builds tpslifonts documentation ' + @echo ' - clean: Remove all generate/junk files ' + @echo '**********************************************' + +unpack: + latex tpslifonts.ins + @echo '**********************************************' + @echo ' To make tpslifonts package documentation ' + @echo ' % make doc ' + @echo '**********************************************' + +all: unpack doc + +doc: tpslifonts.dtx + latex tpslifonts.dtx + latex tpslifonts.dtx + makeindex -s gglo.ist -o tpslifonts.gls tpslifonts.glo + makeindex -s gind.ist -o tpslifonts.ind tpslifonts.idx + latex tpslifonts.dtx + +pack: clean + -(cd ..; cp -r tpslifonts tpslifonts-$(VERSION); \ + tar cvfz tpslifonts-$(VERSION).tgz tpslifonts-$(VERSION)) + +clean: + @$(RM) $(JUNKS) tpslifonts.sty + @echo The current directory has been cleaned up. diff --git a/Master/texmf-dist/doc/latex/tpslifonts/__TPslifonts.tex b/Master/texmf-dist/doc/latex/tpslifonts/__TPslifonts.tex deleted file mode 100644 index b2a59e7a672..00000000000 --- a/Master/texmf-dist/doc/latex/tpslifonts/__TPslifonts.tex +++ /dev/null @@ -1,1233 +0,0 @@ -% $Id: __TPslifonts.tex,v 1.4 2002/11/14 20:46:00 hansfn Exp $ -% -% TeXPower bundle - dynamic online presentations with LaTeX -% Copyright (C) 1999-2002 Stephan Lehmke -% -% This program is free software; you can redistribute it and/or -% modify it under the terms of the GNU General Public License -% as published by the Free Software Foundation; either version 2 -% of the License, or (at your option) any later version. -% -% This program is distributed in the hope that it will be useful, -% but WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -% GNU General Public License for more details. -% -%----------------------------------------------------------------------------------------------------------------- -% File: __TPslifonts.tex -% -% Code for the slifonts example for the package texpower.sty. -% -% This file is input by others. Don't compile it separately. -% -%----------------------------------------------------------------------------------------------------------------- -% Author: Stephan Lehmke <Stephan.Lehmke@cs.uni-dortmund.de> -% -% v0.1 Nov 14, 2002: First version for the pre-alpha release of TeXPower. -% -% v0.2 Jan 07, 2003: Adapted to tpslifonts v0.4 (added support for cmbright). -% -% v0.4 May 28, 2003: Adapted to tpslifonts v0.6. -% - -\newcommand{\textbfsl}[1]{\textbf{\textsl{#1}}} -\newcommand{\textbfit}[1]{\textbf{\textit{#1}}} -\newcommand{\textbfsc}[1]{\textbf{\textsc{#1}}} -\newcommand{\textcsl}[1]{\textc{\textsl{#1}}} -\newcommand{\textsbsl}[1]{\textsb{\textsl{#1}}} -\newcommand{\textsbc}[1]{{\fontseries{sbc}\selectfont#1}} -\newcommand{\textb}[1]{{\fontseries{b}\selectfont#1}} -\newcommand{\textsb}[1]{{\fontseries{sb}\selectfont#1}} -\newcommand{\textc}[1]{{\fontseries{c}\selectfont#1}} -\newcommand{\textui}[1]{{\fontshape{ui}\selectfont#1}} -\newcommand{\textff}[1]{{\fontfamily{cmfr}\selectfont#1}} -\newcommand{\textffi}[1]{{\fontfamily{cmfr}\textit{#1}}} -\newcommand{\textdh}[1]{{\fontfamily{cmdh}\selectfont#1}} -\newcommand{\textfib}[1]{{\fontfamily{cmfib}\selectfont#1}} -\newcommand{\textfibsl}[1]{{\fontfamily{cmfib}\selectfont\textsl{#1}}} - -\makeatletter -\@namedef{TextFontNamelcmssOT1}{SliTeX Sans Serif (\code{lcmss})} - -\@namedef{TextFontNameShortlcmssOT1}{\code{lcmss}} - -\@namedef{TextItFontNamelcmssOT1}{SliTeX Sans-Serif Slanted (\code{lcmssi})} - -\@namedef{TextFontslcmssOT1}% -{% - {SliTeX Sans Serif (\code{lcmss})}\textnormal,% - {SliTeX Sans-Serif Slanted (\code{lcmssi})}\textsl,% - {SliTeX Sans-Serif bold (\code{lcmssb})}\textbf% -} - -\@namedef{TextFontNamelcmssT1}{European Computer Modern Sans Serif Quotation (\code{eclq})} - -\@namedef{TextFontNameShortlcmssT1}{\code{eclq}} - -\@namedef{TextItFontNamelcmssT1}{European Computer Modern Sans Serif Quotation Inclined (\code{ecli})} - -\@namedef{TextFontslcmssT1}% -{% - {European Computer Modern Sans Serif Quotation (\code{eclq})}\textnormal,% - {European Computer Modern Sans Serif Quotation Inclined (\code{ecli})}\textsl,% - {European Computer Modern Sans Serif Quotation Bold (\code{eclb})}\textbf,% - {European Computer Modern Sans Serif Quotation Bold Oblique (\code{eclo})}\textbfsl% -} - -\@namedef{TextFontNamecmrOT1}{Computer Modern Roman (\code{cmr})} -\expandafter\let\csname TextFontNamecmrmOT1\expandafter\endcsname\csname TextFontNamecmrOT1\endcsname - -\@namedef{TextFontNameShortcmrOT1}{\code{cmr}} -\expandafter\let\csname TextFontNameShortcmrmOT1\expandafter\endcsname\csname TextFontNameShortcmrOT1\endcsname - -\@namedef{TextItFontNamecmrOT1}{Computer Modern Text Italic (\code{cmti})} - -\@namedef{TextFontscmrOT1}% -{% - {Computer Modern Roman (\code{cmr})}\textnormal,% - {Computer Modern Slanted Roman (\code{cmsl})}\textsl,% - {Computer Modern Text Italic (\code{cmti})}\textit,% - {Computer Modern Roman Caps and Small Caps (\code{cmcsc})}\textsc,% - {Computer Modern Unslanted Italic (\code{cmu})}\textui,% - {Computer Modern Bold Roman (\code{cmb})}\textb,% - {Computer Modern Bold Extended Roman (\code{cmbx})}\textbf,% - {Computer Modern Bold Extended Slanted Roman (\code{cmbxsl})}\textbfsl,% - {Computer Modern Bold Extended Text Italic (\code{cmbxti})}\textbfit,% - {Computer Modern Funny Roman (\code{cmff})}\textff,% - {Computer Modern Funny Italic (\code{cmfi})}\textffi,% - {Computer Modern Dunhill Roman (\code{cmdunh})}\textdh,% - {Computer Modern Roman Fibonacci Font (\code{cmfib})}\textfib% -} - -\@namedef{TextFontNamecmrT1}{European Computer Modern Roman Medium (\code{ecrm})} -\expandafter\let\csname TextFontNamecmrmT1\expandafter\endcsname\csname TextFontNamecmrT1\endcsname - -\@namedef{TextFontNameShortcmrT1}{\code{ecrm}} -\expandafter\let\csname TextFontNameShortcmrmT1\expandafter\endcsname\csname TextFontNameShortcmrT1\endcsname - -\@namedef{TextItFontNamecmrT1}{European Computer Modern Text Italic (\code{ecti})} - -\@namedef{TextFontscmrT1}% -{% - {European Computer Modern Roman Medium (\code{ecrm})}\textnormal,% - {European Computer Modern Roman Slanted (\code{ecsl})}\textsl,% - {European Computer Modern Text Italic (\code{ecti})}\textit,% - {European Computer Modern Caps and Small Caps (\code{eccc})}\textsc,% - {European Computer Modern Bold Extend Roman (\code{ecbx})}\textbf,% - {European Computer Modern Roman Bold (Non-Extended) (\code{ecrb})}\textb,% - {European Computer Modern Bold Extended Text Italic (\code{ecbi})}\textbfit,% - {European Computer Modern Bold Extended Slanted Roman (\code{ecbl})}\textbfsl,% - {European Computer Modern Bold Extended Caps and Small Caps (\code{ecxc})}\textbfsc,% - {European Computer Modern Unslanted Italic (\code{ecui})}\textui,% -% {European Computer Modern Funny Roman (\code{ecff})}\textff,% unable to make tfm ?!? -% {European Computer Modern Funny Italic (\code{ecfi})}\textffi,% - {European Computer Modern Dunhill Roman (\code{ecdh})}\textdh,% - {European Computer Modern Fibonacci Font (\code{ecfb})}\textfib,% - {European Computer Modern Fibonacci Slanted Font (\code{ecfs})}\textfibsl% -} - -\@namedef{TextFontNamecmssOT1}{Computer Modern Sans Serif (\code{cmss})} - -\@namedef{TextFontNameShortcmssOT1}{\code{cmss}} - -\@namedef{TextItFontNamecmssOT1}{Computer Modern Slanted Sans Serif (\code{cmssi})} - -\@namedef{TextFontscmssOT1}% -{% - {Computer Modern Sans Serif (\code{cmss})}\textnormal,% - {Computer Modern Slanted Sans Serif (\code{cmssi})}\textsl,% - {Computer Modern Sans Serif Demibold Condensed (\code{cmssdc})}\textsbc,% - {Computer Modern Sans Serif Bold Extended (\code{cmssbx})}\textbf% -} - -\@namedef{TextFontNamecmssT1}{European Computer Modern Sans Serif (\code{ecss})} - -\@namedef{TextFontNameShortcmssT1}{\code{ecss}} - -\@namedef{TextItFontNamecmssT1}{European Computer Modern Sans Serif Inclined (\code{ecsi})} - -\@namedef{TextFontscmssT1}% -{% - {European Computer Modern Sans Serif (\code{ecss})}\textnormal,% - {European Computer Modern Sans Serif Inclined (\code{ecsi})}\textsl,% - {European Computer Modern Sans Serif Bold Extended (\code{ecsx})}\textbf,% - {European Computer Modern Sans Serif Bold Extended Oblique (\code{ecso})}\textbfsl,% - {European Computer Modern Sans Serif Demi Condensed (\code{ecssdc})}\textsbc% -} - -\@namedef{TextFontNamecmbrOT1}{Computer Modern Bright (\code{cmbr})} -\expandafter\let\csname TextFontNamecmbrmtOT1\expandafter\endcsname\csname TextFontNamecmbrOT1\endcsname - -\@namedef{TextFontNameShortcmbrOT1}{\code{cmbr}} -\expandafter\let\csname TextFontNameShortcmbrmtOT1\expandafter\endcsname\csname TextFontNameShortcmbrOT1\endcsname - -\@namedef{TextItFontNamecmbrOT1}{Computer Modern Bright Slanted (\code{cmbrsl})} - -\@namedef{TextFontscmbrOT1}% -{% - {Computer Modern Bright (\code{cmbr})}\textnormal,% - {Computer Modern Bright Slanted (\code{cmbrsl})}\textsl,% - {Computer Modern Bright Bold Extended (\code{cmbrbx})}\textbf% -} - -\@namedef{TextFontNamecmbrT1}{European Computer Modern Bright medium regular (\code{ebmr})} -\expandafter\let\csname TextFontNamecmbrmtT1\expandafter\endcsname\csname TextFontNamecmbrT1\endcsname - -\@namedef{TextFontNameShortcmbrT1}{\code{ebmr}} -\expandafter\let\csname TextFontNameShortcmbrmtT1\expandafter\endcsname\csname TextFontNameShortcmbrT1\endcsname - -\@namedef{TextItFontNamecmbrT1}{European Computer Modern Bright medium oblique (\code{ebmo})} - -\@namedef{TextFontscmbrT1}% -{% - {European Computer Modern Bright medium regular (\code{ebmr})}\textnormal,% - {European Computer Modern Bright medium oblique (\code{ebmo})}\textsl,% - {European Computer Modern Bright semibold regular (\code{ebsr})}\textsb,% - {European Computer Modern Bright semibold oblique (\code{ebso})}\textsbsl% -} - -\@namedef{TextFontNameccrOT1}{Concrete Roman (\code{ccr})} - -\@namedef{TextFontNameShortccrOT1}{\code{ccr}} - -\@namedef{TextItFontNameccrOT1}{Concrete Text Italic (\code{ccti})} - -\@namedef{TextFontsccrOT1}% -{% - {Concrete Roman (\code{ccr})}\textnormal,% - {Concrete Slanted Roman (\code{ccsl})}\textsl,% - {Concrete Text Italic (\code{ccti})}\textit,% - {Concrete Roman Caps and Small Caps (\code{cccsc})}\textsc,% - {Concrete Slanted Condensed Roman (\code{ccslc})}\textcsl,% - {Computer Modern Sans Serif Bold Extended (\code{cmssbx}) as a replacement for `bold' ccr}\textbf% -} - -\@namedef{TextFontNameccrT1}{European Concrete Roman (\code{eorm})} - -\@namedef{TextFontNameShortccrT1}{\code{eorm}} - -\@namedef{TextItFontNameccrT1}{European Computer Concrete Text Italic (\code{eoti})} - -\@namedef{TextFontsccrT1}% -{% - {European Concrete Roman (\code{eorm})}\textnormal,% - {European Computer Concrete Slanted (\code{eosl})}\textsl,% - {European Computer Concrete Text Italic (\code{eoti})}\textit,% - {European Concrete Roman Caps and Small Caps (\code{eocc})}\textsc,% - {European Computer Modern Sans Serif Bold Extended (\code{ecsx}) as a replacement for `bold' ccr}\textbf,% - {European Computer Modern Sans Serif Bold Extended Oblique (\code{ecso}) as a replacement for `bold slanted' ccr}% - \textbfsl% -} - -\@namedef{TTFontNamelcmssOT1}{Computer Modern Typewriter Text (\code{cmtt})} - -\@namedef{TTItFontNamelcmssOT1}{Computer Modern Italic Typewriter Text (\code{cmitt})} - -\@namedef{TTFontslcmssOT1}% -{% - {Computer Modern Typewriter Text (\code{cmtt})}\textnormal,% - {Computer Modern Italic Typewriter Text (\code{cmitt})}\textit,% - {Computer Modern Slanted Typewriter Text (\code{cmsltt})}\textsl,% - {Computer Modern Typewriter Caps and Small Caps (\code{cmtcsc})}\textsc% -} - -\@namedef{TTFontNamelcmssT1}{European Computer Modern LaTeX Typewriter (\code{ecltt})} - -\@namedef{TTItFontNamelcmssT1}{European Computer Modern Italic Typewriter Text (\code{ecit})} - -\@namedef{TTFontslcmssT1}% -{% - {European Computer Modern LaTeX Typewriter (\code{ecltt})}\textnormal,% - {European Computer Modern Italic Typewriter Text (\code{ecit})}\textit,% - {European Computer Modern Slanted Typewriter Text (\code{ecst})}\textsl,% - {European Computer Modern Typewritr Caps and Small Caps (\code{ectc})}\textsc% -} - -\@namedef{TTFontNamecmrOT1}{Computer Modern Typewriter Text (\code{cmtt})} - -\@namedef{TTItFontNamecmrOT1}{Computer Modern Italic Typewriter Text (\code{cmitt})} - -\@namedef{TTFontscmrOT1}% -{% - {Computer Modern Typewriter Text (\code{cmtt})}\textnormal,% - {Computer Modern Italic Typewriter Text (\code{cmitt})}\textit,% - {Computer Modern Slanted Typewriter Text (\code{cmsltt})}\textsl,% - {Computer Modern Typewriter Caps and Small Caps (\code{cmtcsc})}\textsc% -} - -\@namedef{TTFontNamecmrT1}{European Computer Modern Typewriter (\code{ectt})} - -\@namedef{TTItFontNamecmrT1}{European Computer Modern Italic Typewriter Text (\code{ecit})} - -\@namedef{TTFontscmrT1}% -{% - {European Computer Modern Typewriter (\code{ectt})}\textnormal,% - {European Computer Modern Italic Typewriter Text (\code{ecit})}\textit,% - {European Computer Modern Slanted Typewriter Text (\code{ecst})}\textsl,% - {European Computer Modern Typewritr Caps and Small Caps (\code{ectc})}\textsc% -} - -\expandafter\let\csname TTFontscmssOT1\expandafter\endcsname\csname TTFontscmrOT1\endcsname - -\expandafter\let\csname TTFontscmssT1\expandafter\endcsname\csname TTFontscmrT1\endcsname - -\expandafter\let\csname TTFontNamecmssOT1\expandafter\endcsname\csname TTFontNamecmrOT1\endcsname - -\expandafter\let\csname TTFontNamecmssT1\expandafter\endcsname\csname TTFontNamecmrT1\endcsname - -\expandafter\let\csname TTItFontNamecmssOT1\expandafter\endcsname\csname TTItFontNamecmrOT1\endcsname - -\expandafter\let\csname TTItFontNamecmssT1\expandafter\endcsname\csname TTItFontNamecmrT1\endcsname - -\@namedef{TTFontNamecmbrOT1}{CM Typewriter Light (\code{cmtl})} - -\@namedef{TTItFontNamecmbrOT1}{CM Typewriter Light Slanted (\code{cmsltl})} - -\@namedef{TTFontscmbrOT1}% -{% - {CM Typewriter Light (\code{cmtl})}\textnormal,% - {CM Typewriter Light Slanted (\code{cmsltl})}\textsl% -} - -\@namedef{TTFontNamecmbrT1}{EC Typewriter Light (\code{ebtl})} - -\@namedef{TTItFontNamecmbrT1}{EC Typewriter Light oblique (\code{ebto})} - -\@namedef{TTFontscmbrT1}% -{% - {EC Typewriter Light (\code{ebtl})}\textnormal,% - {EC Typewriter Light oblique (\code{ebto})}\textsl% -} - -\expandafter\let\csname TTFontsccrOT1\expandafter\endcsname\csname TTFontscmrOT1\endcsname - -\expandafter\let\csname TTFontsccrT1\expandafter\endcsname\csname TTFontscmrT1\endcsname - -\expandafter\let\csname TTFontNameccrOT1\expandafter\endcsname\csname TTFontNamecmrOT1\endcsname - -\expandafter\let\csname TTFontNameccrT1\expandafter\endcsname\csname TTFontNamecmrT1\endcsname - -\expandafter\let\csname TTItFontNameccrOT1\expandafter\endcsname\csname TTItFontNamecmrOT1\endcsname - -\expandafter\let\csname TTItFontNameccrT1\expandafter\endcsname\csname TTItFontNamecmrT1\endcsname - -\@namedef{MathFontNamecmm}{Computer Modern Math} - -\@namedef{MathFontNameccm}{Concrete Math} - -\@namedef{MathFontNameeuler}{Euler} - -\@namedef{MathFontNamecmbrm}{Computer Modern Bright Math} - -\@namedef{MathLetterFontNamecmm}{Computer Modern Math Italic (\code{cmmi})} - -\@namedef{MathLetterFontNameccm}{Concrete Math Italic (\code{xccmi})} - -\@namedef{MathLetterFontNameeuler}{Euler Roman Medium (\code{eurm})} - -\@namedef{MathLetterFontNamecmbrm}{Computer Modern Bright Math Slanted (\code{cmbrmi})} - -\@namedef{MathSymbolFontNamecmm}{Computer Modern Math Symbols (\code{cmsy})} - -\@namedef{MathSymbolFontNameccm}{Concrete Math Symbols (\code{xccsy})} - -\@namedef{MathSymbolFontNameeuler}{Euler Script Medium (\code{eusm})} - -\@namedef{MathSymbolFontNamecmbrm}{Computer Modern Bright Math Symbols (\code{cmbrmi})} - -\@namedef{MathExtensionFontNamecmm}{Computer Modern Math Extension (\code{cmex})} - -\@namedef{MathExtensionFontNameccm}{Concrete Math Extension (\code{xccex})} - -\@namedef{MathExtensionFontNameeuler}{Euler Extension (\code{euex})} - -\expandafter\let\csname MathExtensionFontNamecmbrm\expandafter\endcsname\csname MathExtensionFontNamecmm\endcsname - -\newcommand{\listdescriptions}[1] -{% - \expandafter\expandafter\expandafter\@listdescriptions\expandafter\expandafter\expandafter - {\csname#1\endcsname}% -} - -\newcommand{\@listdescriptions}[1]{\@for\temp := #1 \do {\expandafter\mkdescription\temp}} - -\newcommand{\mkdescription}[2]{} - -\newcommand{\TextFontName}{\@nameuse{TextFontName\TPSFTextfont\encodingdefault}} - -\newcommand{\TextFontNameShort}{\@nameuse{TextFontNameShort\TPSFTextfont\encodingdefault}} - -\let\nameuse\@nameuse -\makeatother - -%----------------------------------------------------------------------------------------------------------------- -% -\makeslidetitle{\TeX Power Example: Package \code{tpslifonts}}\label{Sec:tpslifonts} - -This is the demonstration document for \code{tpslifonts}, \TeX Power's slide fonts configuration package. - -Beamer and overhead presentations are often viewed under peculiar circumstances. Especially for presentations which are -projected directly `out of the computer', low power of the beamer, low resolution and an abundance of colors can lead to -severe readability problems. - -It is therefore of utmost importance to optimize font selection as much as possible towards \emph{readability}. - -The package \code{tpslifonts} offers a couple of `harmonising' combinations of text and math fonts from the (distant) -relatives of \concept{computer modern} fonts, with a couple of extras for optimising readability. - -\newpage - -The package offers the following features: -\begin{enumerate} -\item Text fonts from \concept{computer modern roman}, \concept{computer modern sans serif}, \concept{Sli\TeX{} computer - modern sans serif}, \concept{computer modern bright}, or \concept{concrete roman}. -\item Math fonts from \concept{computer modern math}, \concept{computer modern bright math}, or \concept{Euler fonts}. -\item Support of additional symbol fonts like \concept{AMS symbols} or \concept{doublestroke}. -\item All fonts configured for `smooth scaling' (like in the \code{type1cm} package). -\item Avoiding fonts not freely available in \concept{Type 1} format. -\item Careful \concept{design size} selection for optimum readability. -\end{enumerate} - -\newpage - -In the following, the fonts configured by this package are listed, augmented by font samples and some larger examples -which hopefully allow to review the configuration parameters. - -Note that there are a couple of options and parameter settings in the preamble of \code{slifontsexample.tex} which allow -to try different configuration variants. - -This document has been typeset using \encodingdefault{} font encoding. - -\section{Text Fonts} - -Package \code{tpslifonts} has configured the following \concept{text fonts}: - -\renewcommand{\mkdescription}[2] -{% - - \medskip\pagebreak[3] - - \hrule - - #1:\\ #2{The quick brown fox jumps over the lazy dog.} - -}% -\listdescriptions{TextFonts\TPSFTextfont\encodingdefault} - -\medskip - -\hrule - -\medskip - -\section{Typewriter Fonts} - -\ifthenelse{\isundefined{\TPSFttscale}}{} -{% - \ifthenelse{\equal{\TPSFTextfont}{lcmss}} - {For harmonising better with \ifthenelse{\equal{\encodingdefault}{OT1}}{\code{lcmss}}{\code{eclq}}, t} - {T}% - ypewriter fonts are scaled up by a factor of $\TPSFttscale$. -}% - -Package \code{tpslifonts} has configured the following \concept{typewriter fonts}: - -\renewcommand{\mkdescription}[2] -{% - - \medskip\pagebreak[3] - - \hrule - - #1:\\ #2{\texttt{The quick brown fox jumps over the lazy dog.}} - -}% -\listdescriptions{TTFonts\TPSFTextfont\encodingdefault} - -\medskip - -\hrule - -\medskip - -\section{Math Fonts} - -\ifthenelse{\equal{\TPSFMathfont}{euler}} -{% - The main math fonts are derived from the \concept{\MathFontNameeuler} fonts. Operators% - \ifthenelse{\boolean{TPSFeulerdigits}}{}{ and digits} are taken from \TextFontName. -}% -{% - The main math fonts are derived from the \concept{\nameuse{MathFontName\TPSFMathfont}} fonts. - \ifthenelse{\boolean{TPSFtextops}}% - {Operators, digits, and upper case greek letters are taken from \TextFontName.} - {}% -} - -\ifthenelse{\isundefined{\TPSFmathscale}}{} -{% - \ifthenelse{\equal{\TPSFTextfont}{lcmss}} - {For harmonising better with \ifthenelse{\equal{\encodingdefault}{OT1}}{\code{lcmss}}{\code{eclq}}, m} - {M}% - ath fonts are scaled up by a factor of $\TPSFmathscale$. % - \ifthenelse{\equal{\TPSFMathfont}{euler}} {Euler fonts are scaled up by a factor of $\TPSFeulerscale$. } - {}% - \ifthenelse{\equal{\TPSFMathfont}{cmbrm}} - {The cmbright math fonts are scaled up by a factor of $\TPSFcmbrscale$. } - {}% -}% - -\medskip\pagebreak[3] - -\hrule\nopagebreak - -\ifthenelse{\equal{\TPSFMathfont}{euler}} -{% - Operators\ifthenelse{\boolean{TPSFeulerdigits}}{}{ and digits} are taken from \TextFontName:\\ - $\min \max \sup \lim \ifthenelse{\boolean{TPSFeulerdigits}}{}{1 2 3 4 5}$ - - \medskip - - \hrule - - Latin and greek letters\ifthenelse{\boolean{TPSFeulerdigits}}{, digits,}{} and some symbols are taken from (virtual) - Euler Roman (\code{zeur}):\\ - $abcd ABCD>/<\alpha \beta \gamma \delta\Phi \Pi \Gamma \Theta\ifthenelse{\boolean{TPSFeulerdigits}}{1 2 3 4 5}{}$ - - \medskip - - \begin{samepage} - \hrule\nopagebreak - - Symbols and calligraphic letters are taken from (virtual) Euler Script (\code{zeus}):\\ - $ \mathcal{ABC} -*+ = \div\equiv \leq \forall \cap \cup \nabla \neq$ - \par - \end{samepage} - - \medskip - - \hrule - - \parbox{\linewidth-\widthof{$\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$}-1ex} - {% - Large and growing symbols are taken from (virtual) Euler Extension (\code{zeuex}). - }\hfill - $\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$ -} -{% - Operators, digits, some symbols and upper case greek letters are taken from - \nameuse{TextFontName\TPSFOperatorfont OT1}% - :\\ - $\min \max \sup \lim 1 2 3 4 5 + = \Phi \Pi \Gamma \Theta$ - - \medskip - - \hrule - - Latin and lower case greek letters and some symbols are taken from \nameuse{MathLetterFontName\TPSFMathfont}% - :\\ - $abcd ABCD >/< \alpha \beta \gamma \delta$ - - \medskip - -\begin{samepage} - \hrule\nopagebreak - - Symbols and calligraphic letters are taken from \nameuse{MathSymbolFontName\TPSFMathfont}% - :\\ - $\mathcal{ABC} -*\div\equiv \leq \forall \cap \cup \nabla \neq$ - \par -\end{samepage} - -\medskip - -\begin{samepage} - \hrule\nopagebreak - -\parbox{\linewidth-\widthof{$\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$}-1ex} -{% - Large and growing symbols are taken from \nameuse{MathExtensionFontName\TPSFMathfont}. -}\hfill -$\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$ -\par -\end{samepage} -} - -\medskip - -\ifthenelse{\boolean{TPSFamsfonts}} -{% - \begin{samepage} - \hrule\nopagebreak - - \ifthenelse{\equal{\TPSFMathfont}{cmbrm}} - {% - Fraktur letters are taken from Euler Fraktur (\code{eufm}):\\ - $\mathfrak{abcdABCD}$ - \par - \end{samepage} - - \medskip - - \begin{samepage} - \hrule\nopagebreak - - Blackboard bold letters and a lot of additional math symbols are taken from the cmbright AMS math fonts - (\code{cmbras}, \code{cmbrbs}):\\ - $\mathbb{NZQR} \Cap \boxtimes \succapprox \subseteqq \nsubseteq \curvearrowright \complement \varnothing$ - } - {% - Fraktur letters, blackboard bold letters, and a lot of additional math symbols are taken from the AMS math fonts - (\code{msam}, \code{msbm}, \code{eufm}):\\ - $\mathfrak{abcdABCD}\mathbb{NZQR} \Cap \boxtimes \succapprox \subseteqq \nsubseteq \curvearrowright \complement - \varnothing$ - } - \par - \end{samepage} - - \medskip -}% -{} - -\ifthenelse{\boolean{TPSFlasy}\and\not\boolean{TPSFwasysym}} -{% - \begin{samepage} - \hrule\nopagebreak - - A couple of additional math symbols are taken from the \LaTeX{} symbol font (\code{lasy}):\\ - $\mho\Join\Box\leadsto\Diamond\sqsubset\sqsupset$ - \par - \end{samepage} - - \medskip -}% -{} - -\ifthenelse{\boolean{TPSFstmaryrd}} -{% - \begin{samepage} - \hrule\nopagebreak - - Additional math symbols are taken from St Mary's Road symbol font (\code{stmary}):\\ - $\boxast \merge \nplus \varolessthan \subsetpluseq \lightning$ - \par - \end{samepage} - - \medskip -}% -{} - -\ifthenelse{\boolean{TPSFwasysym}} -{% - \begin{samepage} - \hrule\nopagebreak - - Additional symbols are taken from Waldis symbol font (\code{wasy}):\\ - $\oiint$\space \permil\space \phone\space \diameter\space \smiley\space \venus\space \mars - \par - \end{samepage} - - \medskip -}% -{} - -\ifthenelse{\boolean{TPSFrsfs}} -{% - \begin{samepage} - \hrule\nopagebreak - - Upper case script letters are taken from Ralph Smith Formal Script (\code{rsfs}):\\ - $\mathscr{ABCDEFGHIJKLMNOPQRSTUVWXYZ}$ - \par - \end{samepage} - - \medskip -}% -{} - -\ifthenelse{\boolean{TPSFdstroke}} -{% - \begin{samepage} - \hrule\nopagebreak - - Double stroke letters are taken from Doublestroke Font - (\ifthenelse{\equal{\TPSFOperatorfont}{cmr}}{\code{dsrom}}{\code{dsss}}):\\ - $\mathds{ABCDEFGHIJKLMNOPQRSTUVWXYZ1hk}$ - \par - \end{samepage} - - \medskip -}% -{} - -\hrule - -\newpage -\subsection{Math Examples} -Next, some examples of math formulae so you can see how the fonts work together (translations from german done by me). - -\ifthenelse{\isundefined{\align}}{} -{% -\medskip - -\hrule - -\begin{minipage}{\linewidth} - \underl{From The Book.} - \begin{presentbox} - \setlength{\abovedisplayskip}{.3\abovedisplayskip}% - \textbf{(D)}\quad The functions $f$ and $g$ fulfil the same functional equation: - $f\left(\frac{x}{2}\right)+f\left(\frac{x+1}{2}\right)=2f(x)$ and - $g\left(\frac{x}{2}\right)+g\left(\frac{x+1}{2}\right)=2g(x)$. - - For $f(x)$, we obtain this from the addition formulas for the sine and cosine: - \begin{align*} - f\left(\textstyle\frac{x}{2}\right)+f\left(\textstyle\frac{x+1}{2}\right) - &=\pi - \left[\frac{\cos\frac{\pi x}{2}}{\sin\frac{\pi x}{2}}-\frac{\sin\frac{\pi x}{2}}{\cos\frac{\pi x}{2}}\right] - \\[1ex] - &=2\pi\frac{\cos\left(\frac{\pi x}{2}+\frac{\pi x}{2}\right)}{\sin\left(\frac{\pi x}{2}+\frac{\pi x}{2}\right)} - =2f(x)\text{.} - \end{align*} - - The functional equation for $g$ follows from - \begin{displaymath} - g_N\left(\textstyle\frac{x}{2}\right)+g_N\left(\textstyle\frac{x+1}{2}\right) - =2g_{2N}(x)+\frac{2}{x+2N+1}\text{.} - \end{displaymath} - \end{presentbox} -\end{minipage}% -} - -\ifthenelse{\boolean{TPSFdstroke}\and\not\isundefined{\align}} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From an undergrad book on calculus.} - \begin{presentbox} - \begin{align*} - c_k&=\frac{1}{2\pi}\int_{0}^{2\pi} f(x) e^{-\mathrm{i}kx}\,\mathrm{d}x - =\frac{1}{2\pi}\sum_{j=1}^{r}\int_{t_{j-1}}^{t_j} f(x) e^{-\mathrm{i}kx}\,\mathrm{d}x\\ - &=\frac{-\mathrm{i}}{2\pi k}\int_{0}^{2\pi} \varphi(x) e^{-\mathrm{i}kx}\,\mathrm{d}x - =\frac{-\mathrm{i}\gamma_k}{k}\text{.} - \end{align*} - As for all $\alpha,\beta\in\mathds{C}$, - $\left|\alpha\beta\right|\leq\frac{1}{2}\left(\left|\alpha\right|^2+\left|\beta\right|^2\right)$, it holds that - \begin{displaymath} - \left|c_k\right|\leq\frac{1}{2}\left(\frac{1}{\left|k\right|^2}+\left|\gamma_k\right|^2\right)\text{.} - \end{displaymath} - From the convergence of $\sum\limits_{k=1}^{\infty}\frac{1}{k^2}$ and - $\sum\limits_{k=-\infty}^{\infty}\left|\gamma_k\right|^2$, it follows that - \begin{displaymath} - \sum_{k=-\infty}^{\infty}\left|c_k\right|<\infty\text{.} - \end{displaymath} - \end{presentbox} -\end{minipage}% -} -{} - -\ifthenelse{\isundefined{\align}\or\isundefined{\extrarowheight}}{} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From an undergrad book on calculus (2nd volume).} - \begin{presentbox} - \small - By \name{Fubini}'s theorem, - \setcounter{equation}{8}% - \begin{equation} - \label{eq:GaussLemma1} - \int\limits_{Z_\varepsilon}\operatorname{div} F \,\mathrm{d}x - = \sum_{k=1}^{n}\, - \underbrace - {% - \int\limits_{Q'} - \left( - \int\limits^{h\left(x'\right)-\varepsilon}_{-\infty}\partial_kF_k\left(x',x_n\right)\,\mathrm{d}x_n - \right) - \,\mathrm{d}x' - }_{{}\mathrel{=:} I_k} - \text{.} - \end{equation} - Evaluation of $I_k$: Obviously, - \begin{displaymath} - I_n=\int\limits_{Q'}F_n\left(x',h(x'-\varepsilon)\right)\,\mathrm{d}x'\text{.} - \end{displaymath} - In the case $1\leq k \leq n-1$, we employ the identity - \begin{displaymath} - \partial_k - \left( - \int\limits^{h\left(x'\right)-\varepsilon}_{-\infty}\!\!\!\!\!\!F_k\left(x',x_n\right)\,\mathrm{d}x_n - \right) - = - \begin{array}[t]{@{}>{\displaystyle}l@{}} - \int\limits^{h\left(x'\right)-\varepsilon}_{-\infty} - \!\!\!\!\!\!\partial_kF_k\left(x',x_n\right)\,\mathrm{d}x_n\\ - {}+F_k\left(x',h(x'-\varepsilon)\right)\cdot\partial_k h\left(x'\right)\text{.} - \end{array} - \end{displaymath} - \end{presentbox} -\end{minipage}% -} - -\newpage - -\ifthenelse{\isundefined{\align}\or\isundefined{\CD}}{} -{% -\begin{minipage}{\linewidth} - \underl{From a book on functional analysis.} - \begin{presentbox} - \textbf{Definition 25}\quad Let $\mathcal{C}$ and $\mathcal{D}$ be categories and $\mathcal{F}, \mathcal{G}$ - functors from $\mathcal{C}$ into $\mathcal{D}$. A mapping - $\eta:\operatorname{Ob}\mathcal{C}\to\operatorname{Mor}\mathcal{D}$ is called a \concept{natural transformation - between $\mathcal{F}$ and $\mathcal{G}$} if - \begin{enumerate} - \item[(i)] $\forall - A\in\operatorname{Ob}\mathcal{C}: - \eta(A)\in\operatorname{Mor}_{\mathcal{D}}\left(\mathcal{F}(A),\mathcal{G}(A)\right)$ - \item[(ii)] $\forall A,B\in\operatorname{Ob}\mathcal{C}\;\forall f\in\operatorname{Mor}_{\mathcal{C}}(A,B):$ - \begin{align*} - \begin{CD} - \mathcal{F}(A)@>{\mathcal{F}(f)}>>\mathcal{F}(B)\\ - @V{\eta(A)}VV @VV{\eta(B)}V\\ - \mathcal{G}(A)@>>{\mathcal{G}(f)}>\mathcal{G}(B)\\ - \end{CD} - &&\text{or}&& - \begin{CD} - \mathcal{F}(A)@<{\mathcal{F}(f)}<<\mathcal{F}(B)\\ - @V{\eta(A)}VV @VV{\eta(B)}V\\ - \mathcal{G}(A)@<<{\mathcal{G}(f)}<\mathcal{G}(B)\\ - \end{CD} - \end{align*} - respectively, commute, if $\mathcal{F}, \mathcal{G}$ are covariant or contravariant, respectively. - \end{enumerate} - - This is denoted as $\eta:\mathcal{F}\to \mathcal{G}$. Such a natural transformation is called a \concept{natural - equivalence between $\mathcal{F}$ and $\mathcal{G}$} if $\eta(A)$ is an isomorphism for every - $A\in\operatorname{Ob}\mathcal{C}$. - \end{presentbox} -\end{minipage}% -} - -\ifthenelse{\boolean{TPSFamsfonts}\and\not\isundefined{\align}\and\not\isundefined{\MAT}} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From an undergrad book on linear algebra.} - \begin{presentbox} - \textit{Step 2.}\quad Determine an eigenvector $v_2$ for an eigenvalue $\lambda_2$ of $F_2$ ($\lambda_2$ is also - an eigenvalue of $F_1$). Next, determine a $j_2\in\{1,\dots,n\}$ such that - \begin{displaymath} - \mathfrak{B}_3 := (v_1,v_2,w_1,\dots,\widehat{w_{j_1}},\dots,\widehat{w_{j_2}},\dots,w_n) - \end{displaymath} - is a base of $V$. - - Next, calculate - \vspace*{-\baselineskip} - \begin{displaymath} - M_{\mathfrak{B}_3}(F)= - \left( - \begin{MAT}(b){ccccccc} - \lambda_1&\cdot&\cdot&\cdot&\cdot&\cdot&\cdot\\ - 0&\lambda_2&\cdot&\cdot&\cdot&\cdot&\cdot\\ - \cdot&0&&&&&\\ - \cdot&\cdot&&&&&\\ - \cdot&\cdot&&&A_3&&\\ - \cdot&\cdot&&&&&\\ - 0&0&&&&& - \addpath{(2,0,0)rrrrruuuuulllllddddd}\\ - \end{MAT} - \right)\text{.} - \end{displaymath} - If $W_3:=\operatorname{Span}(w_1,\dots,\widehat{w_{j_1}},\dots,\widehat{w_{j_2}},\dots,w_n)$, then $A_3$ - determines a linear mapping $F_3:W_3\to W_3$. - \end{presentbox} -\end{minipage}% -} -{} - -\ifthenelse{\isundefined{\align}}{} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From an undergrad book on linear algebra (2nd volume).} - \begin{presentbox} - \DeclareRobustCommand{\with}{\;\vline\;}% - \DeclareRobustCommand{\Set}[2]{\left\{#1\with#2\right\}}% - \setlength{\abovedisplayskip}{.5\abovedisplayskip}% - \setlength{\belowdisplayskip}{.5\belowdisplayskip}% - \textit{Remark.}\quad If $\left(Y_i\right)_{i\in I}$ is a family of affine subspaces $Y_i$ of an affine space $X$, - then - \begin{displaymath} - Y := \bigcup_{i\in I} Y_i\subset X - \end{displaymath} - is again an affine subspace. If $Y\neq\emptyset$, then - \begin{displaymath} - T(Y)=\bigcup_{i\in I} T\left(Y_i\right)\text{.} - \end{displaymath} - - \textit{Proof.}\quad For $Y=\emptyset$, nothing is to be proved. Otherwise, there is a fixed point $p_0\in Y$ such - that - \begin{align*} - T(Y)&=\Set{\overrightarrow{p_0q}\in T(X)}{q\in\bigcup_{i\in I} Y_i} \\ - &= \bigcup_{i\in I}\Set{\overrightarrow{p_0q}\in T(X)}{q\in Y_i}=\bigcup_{i\in I} T\left(Y_i\right)\text{.} - \end{align*} - From this, both claims follow. - \end{presentbox} -\end{minipage} -} - -\ifthenelse{\boolean{TPSFrsfs}\and\not\isundefined{\align}} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From a book on measure theory.} - \begin{presentbox} - Analogously, the general \concept{associativity} of $\sigma$-Algebra products is shown, that is - \begin{equation} - \tag{23.12} - \left(\bigotimes_{i=1}^{m}\mathscr{A}_i\right)\otimes\left(\bigotimes_{i=m+1}^{n}\mathscr{A}_i\right) - =\bigotimes_{i=1}^{n}\mathscr{A}_i - \makebox[0pt][l]{\normalcolor\quad($1\leq m<n$).} - \qquad\qquad\qquad\quad - \end{equation} - Statement (23.11) allows to prove the existence of the product measure for all $n\geq 2$ by induction. - - \medskip - - \textbf{23.9 Theorem}\quad\textit{For $\sigma$-finite measures $\mu_1,\dots,\mu_n$ on - $\mathscr{A}_1,\dots,\mathscr{A}_n$, there exists exactly one measure $\pi$ on - $\mathscr{A}_1\otimes\dots\otimes\mathscr{A}_n$ such that - \begin{equation} - \tag{23.13} - \pi\left(A_1\times\dots\times A_n\right)=\mu_1(A_1)\cdot\dots\cdot\mu_n(A_n) - \end{equation} - for all $A_i\in\mathscr{A}_i$ ($i=1,\dots,n$). Here, $\pi$ is also $\sigma$-finite.} - \end{presentbox} -\end{minipage}% -} -{} - -\ifthenelse{\boolean{TPSFrsfs}\and\boolean{TPSFdstroke}\and\not\isundefined{\align}} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From a book on probability theory.} - \begin{presentbox} - \textbf{17.3 Lemma}\quad\textit{If\/ $T$ takes values exclusively from $\mathds{N}$, then $X_T$ is an - $\mathscr{F}_T$-measurable random variable with values in $\left(\Omega',\mathscr{A}'\right)$. If only - $P\left\{T<+\infty\right\}=1$ holds, then up to $P$-almost certain equality there exists exactly one - $\mathscr{F}_T$-measurable random variable $X^*$ with values in $\left(\Omega',\mathscr{A}'\right)$ which - fulfils the condition - \begin{equation} - \tag{17.7} - X^*(\omega)=X_{T(\omega)}(\omega) - \makebox[0pt][l]{\normalcolor\quad for all $\omega\in\{T<\infty\}$.} - \qquad\qquad - \end{equation} - }% - - \smallskip - - \textit{Proof.}\quad It suffices to treat the second case and provide an $\mathscr{F}_T$-measurable random - variable fulfilling the given condition. To this end, choose an arbitrary $\omega'\in\Omega'$. We set - \begin{displaymath} - X^*(\omega) := - \begin{cases} - X_{T(\omega)}(\omega),&\omega\in\{T<\infty\}\text{,}\\ - \omega',&\omega\in\{T=\infty\}\text{.} - \end{cases} - \end{displaymath} - For every $A'\in\mathscr{A}'$, it is to be proved that $A := \left\{X^*\in A'\right\}$ is an element of - $\mathscr{F}_T$. - \end{presentbox} -\end{minipage}% -} -{} - -\ifthenelse{\isundefined{\align}\or\isundefined{\extrarowheight}}{} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From my MSc Thesis.} - \begin{presentbox} - \newcommand{\PV}{\operatorname{PV}}% - If we expand equations (4.102) and (4.103), we get - \begin{align*} - \lefteqn{\left(\sum_{q\in\PV}\max\left(M(q),M(\neg q)\right)\right)-\delta}\quad&\\[1ex] - &= - \begin{array}[t]{@{}>{\displaystyle}l@{}} - \sum_{\substack{q\in\PV\\q\neq p}} - \max - \left( - \begin{array}{@{}l@{}} - \frac{m}{M_{{>}s}'\left(\neg p\right)}\cdot M_{{>}s}'(q) - +\frac{m}{M_{s}'\left(p\right)}\cdot M_{s}'(q),\\[2ex] - \frac{m}{M_{{>}s}'\left(\neg p\right)}\cdot M_{{>}s}'(\neg q) - +\frac{m}{M_{s}'\left(p\right)}\cdot M_{s}'(\neg q) - \end{array} - \right)\\[6ex] - {}-\frac{m}{M_{{>}s}'\left(\neg p\right)}\cdot\delta_{{>}s}' - -\frac{m}{M_{s}'\left(p\right)}\cdot\delta_{s}'\\[3ex] - {}-\left(\frac{m}{M_{{>}s}'\left(\neg p\right)}-1\right)\cdot r_1 - -\left(\frac{m}{M_{s}'\left(p\right)}-1\right)\cdot r_2\\[3ex] - {}-\max(r_1,r_2)+m - \end{array} - \end{align*} - \end{presentbox} -\end{minipage}% -} - -\ifthenelse{\boolean{TPSFamsfonts}\and\not\isundefined{\align}} -{% -\newpage - -\begin{minipage}{\linewidth} - \underl{From my PhD Thesis.} - \begin{presentbox} - \DeclareRobustCommand{\Lcap}{\ensuremath{\sqcap}} - \DeclareRobustCommand{\FPcapIcup}{\ensuremath{\uplus}} - \DeclareRobustCommand{\pFl}[1]{\ensuremath{\overline{#1}}} - \DeclareRobustCommand{\Lprimecup}{\ensuremath{\curlyvee}} - \def\FpFl(#1,#2)% - {% - \ensuremath{\mathord - {% - \mathchoice - {\sideset{^{#1}}{^{\,}}{\mathop{\displaystyle\pFl{#2}}}}% - {\sideset{^{#1}}{^{\,}}{\mathop{\pFl{#2}}}}% - {\sideset{^{\scriptscriptstyle#1}}{^{\,}}{\mathop{\scriptstyle\pFl{#2}}}}% - {\sideset{^{\scriptscriptstyle#1}}{^{\,}}{\mathop{\scriptscriptstyle\pFl{#2}}}}% - }}% - } - \DeclareRobustCommand{\Lprimesub}{\ensuremath{\preccurlyeq}} - \DeclareRobustCommand{\Lsub}{\ensuremath{\sqsubseteq}} - \DeclareRobustCommand{\FIsub}{\ensuremath{\subseteqq}} - By Lemma 2.2.7, - \begin{displaymath} - \FpFl(d,a)\FPcapIcup\FpFl(d',b) - =\FpFl({\left(d\Lprimecup \delta\left(\FpFl(d',b)\right)\right)},{a\Lcap \alpha\left(\FpFl(d',b)\right)}). - \end{displaymath} - Furthermore, - \begin{align*} - d&\Lprimesub d\Lprimecup \delta\left(\FpFl(d',b)\right),\\ - a\Lcap \alpha\left(\FpFl(d',b)\right)&\Lsub a. - \end{align*} - From this, - \begin{displaymath} - \FpFl(d,a)\FIsub\FpFl(d,a)\FPcapIcup\FpFl(d',b) - \end{displaymath} - follows by (2.3). - \end{presentbox} -\end{minipage}% -} -{} - -\newcounter{char}% -\newcounter{symcnt}% -\makeatletter -\newcommand{\charlist}[4] -{% - \begingroup - \setcounter{char}{#1} - \whiledo{\value{char}<#2} - {% - \medskip - \hrule - \hbox{\@for\charht := #3\do{\fontsize{\charht}{\charht}\selectfont#4}}% - \stepcounter{char}% - \hrule - }% - \endgroup -}% -\newcommand{\mksymline}[2] -{% - \begingroup - \medskip - \hrule - \hbox - {% - \@for\charht := #2\do - {% - \fontsize{\charht}{\charht}\selectfont - \setcounter{symcnt}{0}% - $% - \@for\thesymbol := #1\do - {% - \ifcase\value{symcnt}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{{\thesymbol}}{}% - \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{\,\vrule\,{\thesymbol}}{}% - \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{{\thesymbol}}% - \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{\,\vrule\,{\thesymbol}}% - \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{\,\vrule\,{\thesymbol}}% - \or\ifthenelse{\boolean{TPSFamsfonts}}{\,\vrule\,{\thesymbol}}{}% - \or\ifthenelse{\boolean{TPSFlasy}\and\not\boolean{TPSFwasysym}}{\,\vrule\,{\thesymbol}}{}% - \or\ifthenelse{\boolean{TPSFstmaryrd}}{\,\vrule\,{\thesymbol}}{}% - \or\ifthenelse{\boolean{TPSFwasysym}}{\,\vrule\,{\thesymbol}}{}% - \fi - \stepcounter{symcnt}% - }% - \;\vrule width1ex\;% - $% - }% - }% - \hrule - \endgroup -}% -\makeatother - -\ifthenelse{\equal{\TPSFTextfont}{lcmss}} -{% -\newpage - -\section{Comparison of Characters} -As mentioned before, \code{tpslifonts} does a little scaling and fiddling with design sizes to make the fonts harmonize -as much as possible. - -The following scaling factors ate used in this document: -\begin{center} - \begin{tabular}{lll} - Name&Purpose&Value\\\hline - \macroname{TPSFttscale}&Typewriter fonts&\TPSFttscale\\\hline - \macroname{TPSFmathscale}&Math fonts related to cm math&\TPSFmathscale\\\hline - \macroname{TPSFeulerscale}&Euler math fonts&\TPSFeulerscale\\\hline - \macroname{TPSFcmbrscale}&Cmbright math fonts&\TPSFcmbrscale\\\hline - \end{tabular} -\end{center} - -Unfortunately, the base font \TextFontName{} is quite excentric wrt the height ratio of upper case and lower case -letters; compare \TextFontNameShort{} \present{a\,A} with \nameuse{TextFontNameShortcmss\encodingdefault} -\present{\fontfamily{cmss}\selectfont a\,A}. - -For this reason, no amount of scaling can make \TextFontNameShort{} harmonise completely with `normal' fonts. - -In this section, you will see lists of similar characters from different fonts, arranged such that you can check how -good the sizes match. You then have to set your priorities and decide the respective scaling factors accordingly. See -the comments in the preamble of \code{slifontsexample.tex} for instructions on how to experiment with scaling. - -To account for different design sizes, the character samples are shown in several sizes. - -\subsection{Digits} - -Digits from \TextFontName, \nameuse{TTFontName\TPSFTextfont\encodingdefault}% -\ifthenelse{\boolean{TPSFeulerdigits}}{, Euler Roman (\code{zeur})}{}% -\ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{}{, \nameuse{TextFontName\TPSFOperatorfont OT1}}, -\nameuse{TextItFontName\TPSFTextfont\encodingdefault}, and \nameuse{TTItFontName\TPSFTextfont\encodingdefault} are -listed in sizes 5pt, 6pt, 7pt, 8pt, 9pt, 10pt, 11pt, and 17pt. - -\charlist{48}{58}{5,6,7,8,9,10,11,17} -{% - \char\value{char}\texttt{\char\value{char}}% - \ifthenelse - {% - \boolean{TPSFeulerdigits}\OR\not\equal{\TPSFOperatorfont}{\TPSFTextfont}% - }% - {$\char\value{char}$}{}% - \,\textit{\char\value{char}}\textit{\texttt{\char\value{char}}} -} - -\subsection{Upper Case Letters} - -Upper Case Letters from \TextFontName, \nameuse{TTFontName\TPSFTextfont\encodingdefault}% -\ifthenelse{\equal{\TPSFMathfont}{euler}}{, Euler Roman (\code{zeur})}{}% -\ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{}{, \nameuse{TextFontName\TPSFOperatorfont OT1}}% -\ifthenelse{\equal{\TPSFMathfont}{euler}}{, Euler Script (\code{zeus}; for calligraphic letters)}{}% -\ifthenelse{\boolean{TPSFamsfonts}} -{% - , Euler Fraktur (\code{eufm})% - , \ifthenelse{\equal{\TPSFMathfont}{cmbrm}}{cmbright AMS math (\code{cmbrbs}}{AMS math (\code{msbm}}% - ; for blackboard bold)% -}{}% -\ifthenelse{\boolean{TPSFdstroke}} -{, Doublestroke Font (\ifthenelse{\equal{cmr}{\TPSFTextfont}}{\code{dsrom}}{\code{dsss}})}{}% -, \nameuse{TextItFontName\TPSFTextfont\encodingdefault}, \nameuse{TTItFontName\TPSFTextfont\encodingdefault}% -\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{, \nameuse{MathLetterFontName\TPSFMathfont}}% -\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{, \nameuse{MathSymbolFontName\TPSFMathfont} for calligraphic letters}% -\ifthenelse{\boolean{TPSFrsfs}}{, Ralph Smith Formal Script (\code{rsfs})}{} -are listed in sizes 5pt, 7pt, and 10pt. - -\charlist{65}{91}{5,6,7,10} -{% - \char\value{char}\texttt{\char\value{char}}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{$\char\value{char}$}{}% - \ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{} - {$\operatorname{\char\value{char}}$}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{$\mathcal{\char\value{char}}$}{}% - \ifthenelse{\boolean{TPSFamsfonts}}{$\mathfrak{\char\value{char}}\mathbb{\char\value{char}}$}{}% - \ifthenelse{\boolean{TPSFdstroke}}{$\mathds{\char\value{char}}$}{}% - \,\textit{\char\value{char}}\textit{\texttt{\char\value{char}}}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{}{$\char\value{char}$}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{}{$\mathcal{\char\value{char}}$}% - \ifthenelse{\boolean{TPSFrsfs}}{$\mathscr{\char\value{char}}$}{}% - ~ -} - -\subsection{Lower Case Letters} - -Lower Case Letters from \TextFontName, \nameuse{TTFontName\TPSFTextfont\encodingdefault}% -\ifthenelse{\equal{\TPSFMathfont}{euler}}{, Euler Roman (\code{zeur})}{}% -\ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{}{, \nameuse{TextFontName\TPSFOperatorfont OT1}}% -\ifthenelse{\boolean{TPSFamsfonts}}{, Euler Fraktur (\code{eufm})}{}% -, \nameuse{TextItFontName\TPSFTextfont\encodingdefault}, \nameuse{TTItFontName\TPSFTextfont\encodingdefault}% -\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{, \nameuse{MathLetterFontName\TPSFMathfont}} -are listed in sizes 5pt, 7pt, 10pt, 12pt, and 14pt. - -\charlist{97}{123}{5,7,10,12,14} -{% - \char\value{char}\texttt{\char\value{char}}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{$\char\value{char}$}{}% - \ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{} - {$\operatorname{\char\value{char}}$}% - \ifthenelse{\boolean{TPSFamsfonts}}{$\mathfrak{\char\value{char}}$}{}% - \,\textit{\char\value{char}}\textit{\texttt{\char\value{char}}}% - \ifthenelse{\equal{\TPSFMathfont}{euler}}{}{$\char\value{char}$}% - ~ -} - -\newpage - -\subsection{Math Symbols} - -The different math fonts define symbols of similar shape, which should look equally large. Symbols from -\ifthenelse{\equal{\TPSFMathfont}{euler}} -{Euler Roman (\code{zeur}), Euler Symbol (\code{zeus})} -{% - \nameuse{TextFontName\TPSFOperatorfont OT1}, \nameuse{MathLetterFontName\TPSFMathfont}, - \nameuse{MathSymbolFontName\TPSFMathfont}% -}% -\ifthenelse{\boolean{TPSFamsfonts}}{, \ifthenelse{\equal{\TPSFMathfont}{cmbrm}}{cmbright }{}AMS math fonts}{}% -\ifthenelse{\boolean{TPSFlasy}\and\not\boolean{TPSFwasysym}}{, \LaTeX{} symbol font (\code{lasy})}{}% -\ifthenelse{\boolean{TPSFstmaryrd}}{, St Mary's Road symbol font (\code{stmary})}{}% -\ifthenelse{\boolean{TPSFwasysym}}{, Waldis symbol font (\code{wasy})}{} -are listed in sizes 5pt, 7pt, 10pt, and 12pt. - -To make clear which characters stem from which font, they are separated by vertical bars. - -\mksymline{\star,+,+,\star,\times,\divideontimes,,\moo,}{5,7,10,12} - -\mksymline{,\cup,,,\cup,\Cup,,\nplus,}{5,7,10,12} - -\mksymline{,\oplus,,,\oplus,\circledast,,\olessthan,\ocircle}{5,7,10,12} - -\mksymline{,\vdash,,,\vdash,\Vdash,,,}{5,7,10,12} - -\mksymline{,=,=,,\equiv,\doteqdot,,,}{5,7,10,12} - -\mksymline{<,\leq,,<,\leq,\leqslant,\sqsubset,\trianglelefteqslant,\apprle}{5,7,10,12} - -\mksymline{\leftharpoondown,\leftarrow,,\leftharpoondown,\leftarrow,\twoheadleftarrow,\leadsto,\leftarrowtriangle,\leadsto}{5,7,10,12} -} -{} - -%%% Local Variables: -%%% mode: latex -%%% fill-column: 120 -%%% TeX-master: "slifontsexample" -%%% End: diff --git a/Master/texmf-dist/doc/latex/tpslifonts/slifontsexample.tex b/Master/texmf-dist/doc/latex/tpslifonts/slifontsexample.tex index 7d994edb658..7b921489431 100644 --- a/Master/texmf-dist/doc/latex/tpslifonts/slifontsexample.tex +++ b/Master/texmf-dist/doc/latex/tpslifonts/slifontsexample.tex @@ -1,18 +1,3 @@ -% $Id: slifontsexample.tex,v 1.9 2003/03/28 16:06:39 stephanlehmke Exp $ -% -% TeXPower bundle - dynamic online presentations with LaTeX -% Copyright (C) 1999-2002 Stephan Lehmke -% -% This program is free software; you can redistribute it and/or -% modify it under the terms of the GNU General Public License -% as published by the Free Software Foundation; either version 2 -% of the License, or (at your option) any later version. -% -% This program is distributed in the hope that it will be useful, -% but WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -% GNU General Public License for more details. -% %----------------------------------------------------------------------------------------------------------------- % File: slifontsexample.tex % @@ -38,19 +23,38 @@ % Please go to USER CONFIGURATION AREA below to find configuration options for experimenting with font settings. %----------------------------------------------------------------------------------------------------------------- -% Are we in a TeXPower-aware setting? +\newif\ifTPaware +\IfFileExists{texpower.sty}{\TPawaretrue}{\TPawarefalse} -\IfFileExists{__TPpbla} -%\IfFileExists{___TPpbla} -{% +\ifTPaware +\documentclass[letterpaper,landscape,KOMA,smallheadings,calcdimensions,display]{powersem} %----------------------------------------------------------------------------------------------------------------- -% Input the generic preamble part one. - -\input{__TPpbla} -} -{% +% Set slide margins rather small for maximum use of space. This is a demo, remember. +\renewcommand{\slidetopmargin}{5mm} +\renewcommand{\slidebottommargin}{5mm} +\renewcommand{\slideleftmargin}{5mm} +\renewcommand{\sliderightmargin}{5mm} +%----------------------------------------------------------------------------------------------------------------- +% Some setup for more reasonable spacing. +\makeatletter +\renewcommand\section{\@startsection{section}{1}{\z@}% + {-1.5ex\@plus -1ex \@minus -.5ex}% + {.5ex \@plus .2ex}% + {\raggedsection\normalfont\size@section\sectfont}} +\renewcommand\subsection{\@startsection{subsection}{2}{\z@}% + {-1.25ex\@plus -1ex \@minus -.2ex}% + {.5ex \@plus .2ex}% + {\raggedsection\normalfont\size@subsection\sectfont}} +\def\slideitemsep{.5ex plus .3ex minus .2ex} +\makeatother %----------------------------------------------------------------------------------------------------------------- -% Otherwise, make a `poor man's presentation mode. +% We need some more packages... +\usepackage{url} +\usepackage[latin1]{inputenc} +% One more Text emphasis command... +\let\name=\textsc +\else % NOT TPaware +% Make a `poor man's presentation mode. \documentclass{article} \setlength{\paperwidth}{13cm} \setlength{\paperheight}{10cm} @@ -61,7 +65,7 @@ \usepackage{url} \usepackage{calc} \raggedbottom -} +\fi % END TPaware %================================================================================================================= % begin USER CONFIGURATION AREA. @@ -169,11 +173,11 @@ % Even with a modern TeX distribution, you might need to install Type1 versions of the cmbright fonts, for instance from % the ``hfbright'' bundle by Harald Harders. -\PassOptionsToPackage{cmbrightmath,scaleupmath,scaleuptt,textops}{tpslifonts} +% \PassOptionsToPackage{cmbrightmath,scaleupmath,scaleuptt,textops}{tpslifonts} % If you find the typewriter characters to be too `bold', try uncommenting the following line: -\def\TPSFttscale{1.1} +% \def\TPSFttscale{1.1} % Configuration scenario 4: % cmss fonts with cm italic math. @@ -221,7 +225,7 @@ % Type 1 versions of all fonts used by this scenario (apart from certain math fonts like dsrom) should be part of every % moderately modern TeX distribution. -% \PassOptionsToPackage{cmr,scale7pt}{tpslifonts} +\PassOptionsToPackage{cmr,scale7pt}{tpslifonts} % Configuration scenario 8: % cmbright fonts. @@ -255,7 +259,7 @@ % Use T1 font encoding. This will lead to using EC fonts instead of CM. -% \usepackage[T1]{fontenc} +\usepackage[T1]{fontenc} % tpslifonts allows to define independent scaling factors for different groups of fonts. Selecting one of the % scaleup... options will define a default value supposed to match ``SliTeX'' fonts, but you can set any scaling factor @@ -285,28 +289,46 @@ \RequirePackage{tpslifonts} -% Are we in a TeXPower-aware setting? - \makeatletter -\IfFileExists{__TPpbla} -%\IfFileExists{___TPpbla} -{% +\ifTPaware %----------------------------------------------------------------------------------------------------------------- -% Input the generic preamble part two. - -\input{__TPpblb} - +% We load hyperref and fixseminar which fixes some problems with seminar. +\usepackage[plainpages=false,bookmarksopen,colorlinks,urlcolor=red,pdfpagemode=FullScreen]{hyperref} +\usepackage{fixseminar} +%----------------------------------------------------------------------------------------------------------------- +% Finally, the texpower package is loaded. +\usepackage{texpower} +%----------------------------------------------------------------------------------------------------------------- +% Some more parameters... +\slidesmag{5} +\slideframe{none} +\pagestyle{empty} +\setcounter{tocdepth}{2} +\renewcommand{\currentpagevalue}{\value{slide}} +%----------------------------------------------------------------------------------------------------------------- +% The following command produces a title page for every example and documentation file. +\newcommand{\makeslidetitle}[1] +{% + \title{The \TeX Power bundle\\[2ex]{\normalfont #1}} + \author + {% + Stephan Lehmke\\ + \mdseries + University of Dortmund\\ + \mdseries + Department of Computer Science I\\ + \url{mailto:Stephan.Lehmke@udo.edu}% + } + {\centerslidestrue + \maketitle + \newslide} + \setcounter{firststep}{1}% This way, the first step of all examples is displayed. +} \hypersetup{pdftitle={texpower tpslifonts example}} - \slidesmag{4} - -} -{% -%----------------------------------------------------------------------------------------------------------------- -% Otherwise, load everything manually. - +\else % NOT TPaware +% Load everything manually. \pagestyle{empty} - \newcommand{\makeslidetitle}[1] {% \begin{center} @@ -314,7 +336,7 @@ \vspace*{\fill} - \textbf{The \TeX Power bundle\\{\normalfont ##1}} + \textbf{The \TeX Power bundle\\{\normalfont #1}} \par} \vspace*{\fill} @@ -350,8 +372,8 @@ \newenvironment{presentbox}{\par\begin{minipage}[t]{\linewidth}}{\end{minipage}\par} \let\present=\fbox +\fi % END TPaware -} \newboolean{TPSFamsfonts} \@ifpackageloaded{amsfonts}{\setboolean{TPSFamsfonts}{true}}{} \newboolean{TPSFlasy} @@ -372,13 +394,1207 @@ % \begin{document} \begin{slide} - \input{__TPslifonts} -\end{slide} -\end{document} +% +%----------------------------------------------------------------------------------------------------------------- +% +% Body of slifonts example. +% + +\newcommand{\textbfsl}[1]{\textbf{\textsl{#1}}} +\newcommand{\textbfit}[1]{\textbf{\textit{#1}}} +\newcommand{\textbfsc}[1]{\textbf{\textsc{#1}}} +\newcommand{\textcsl}[1]{\textc{\textsl{#1}}} +\newcommand{\textsbsl}[1]{\textsb{\textsl{#1}}} +\newcommand{\textsbc}[1]{{\fontseries{sbc}\selectfont#1}} +\newcommand{\textb}[1]{{\fontseries{b}\selectfont#1}} +\newcommand{\textsb}[1]{{\fontseries{sb}\selectfont#1}} +\newcommand{\textc}[1]{{\fontseries{c}\selectfont#1}} +\newcommand{\textui}[1]{{\fontshape{ui}\selectfont#1}} +\newcommand{\textff}[1]{{\fontfamily{cmfr}\selectfont#1}} +\newcommand{\textffi}[1]{{\fontfamily{cmfr}\textit{#1}}} +\newcommand{\textdh}[1]{{\fontfamily{cmdh}\selectfont#1}} +\newcommand{\textfib}[1]{{\fontfamily{cmfib}\selectfont#1}} +\newcommand{\textfibsl}[1]{{\fontfamily{cmfib}\selectfont\textsl{#1}}} + +\makeatletter +\@namedef{TextFontNamelcmssOT1}{SliTeX Sans Serif (\code{lcmss})} + +\@namedef{TextFontNameShortlcmssOT1}{\code{lcmss}} + +\@namedef{TextItFontNamelcmssOT1}{SliTeX Sans-Serif Slanted (\code{lcmssi})} + +\@namedef{TextFontslcmssOT1}% +{% + {SliTeX Sans Serif (\code{lcmss})}\textnormal,% + {SliTeX Sans-Serif Slanted (\code{lcmssi})}\textsl,% + {SliTeX Sans-Serif bold (\code{lcmssb})}\textbf% +} + +\@namedef{TextFontNamelcmssT1}{European Computer Modern Sans Serif Quotation (\code{eclq})} + +\@namedef{TextFontNameShortlcmssT1}{\code{eclq}} + +\@namedef{TextItFontNamelcmssT1}{European Computer Modern Sans Serif Quotation Inclined (\code{ecli})} + +\@namedef{TextFontslcmssT1}% +{% + {European Computer Modern Sans Serif Quotation (\code{eclq})}\textnormal,% + {European Computer Modern Sans Serif Quotation Inclined (\code{ecli})}\textsl,% + {European Computer Modern Sans Serif Quotation Bold (\code{eclb})}\textbf,% + {European Computer Modern Sans Serif Quotation Bold Oblique (\code{eclo})}\textbfsl% +} + +\@namedef{TextFontNamecmrOT1}{Computer Modern Roman (\code{cmr})} +\expandafter\let\csname TextFontNamecmrmOT1\expandafter\endcsname\csname TextFontNamecmrOT1\endcsname + +\@namedef{TextFontNameShortcmrOT1}{\code{cmr}} +\expandafter\let\csname TextFontNameShortcmrmOT1\expandafter\endcsname\csname TextFontNameShortcmrOT1\endcsname + +\@namedef{TextItFontNamecmrOT1}{Computer Modern Text Italic (\code{cmti})} + +\@namedef{TextFontscmrOT1}% +{% + {Computer Modern Roman (\code{cmr})}\textnormal,% + {Computer Modern Slanted Roman (\code{cmsl})}\textsl,% + {Computer Modern Text Italic (\code{cmti})}\textit,% + {Computer Modern Roman Caps and Small Caps (\code{cmcsc})}\textsc,% + {Computer Modern Unslanted Italic (\code{cmu})}\textui,% + {Computer Modern Bold Roman (\code{cmb})}\textb,% + {Computer Modern Bold Extended Roman (\code{cmbx})}\textbf,% + {Computer Modern Bold Extended Slanted Roman (\code{cmbxsl})}\textbfsl,% + {Computer Modern Bold Extended Text Italic (\code{cmbxti})}\textbfit,% + {Computer Modern Funny Roman (\code{cmff})}\textff,% + {Computer Modern Funny Italic (\code{cmfi})}\textffi,% + {Computer Modern Dunhill Roman (\code{cmdunh})}\textdh,% + {Computer Modern Roman Fibonacci Font (\code{cmfib})}\textfib% +} + +\@namedef{TextFontNamecmrT1}{European Computer Modern Roman Medium (\code{ecrm})} +\expandafter\let\csname TextFontNamecmrmT1\expandafter\endcsname\csname TextFontNamecmrT1\endcsname + +\@namedef{TextFontNameShortcmrT1}{\code{ecrm}} +\expandafter\let\csname TextFontNameShortcmrmT1\expandafter\endcsname\csname TextFontNameShortcmrT1\endcsname + +\@namedef{TextItFontNamecmrT1}{European Computer Modern Text Italic (\code{ecti})} + +\@namedef{TextFontscmrT1}% +{% + {European Computer Modern Roman Medium (\code{ecrm})}\textnormal,% + {European Computer Modern Roman Slanted (\code{ecsl})}\textsl,% + {European Computer Modern Text Italic (\code{ecti})}\textit,% + {European Computer Modern Caps and Small Caps (\code{eccc})}\textsc,% + {European Computer Modern Bold Extend Roman (\code{ecbx})}\textbf,% + {European Computer Modern Roman Bold (Non-Extended) (\code{ecrb})}\textb,% + {European Computer Modern Bold Extended Text Italic (\code{ecbi})}\textbfit,% + {European Computer Modern Bold Extended Slanted Roman (\code{ecbl})}\textbfsl,% + {European Computer Modern Bold Extended Caps and Small Caps (\code{ecxc})}\textbfsc,% + {European Computer Modern Unslanted Italic (\code{ecui})}\textui,% +% {European Computer Modern Funny Roman (\code{ecff})}\textff,% unable to make tfm ?!? +% {European Computer Modern Funny Italic (\code{ecfi})}\textffi,% + {European Computer Modern Dunhill Roman (\code{ecdh})}\textdh,% + {European Computer Modern Fibonacci Font (\code{ecfb})}\textfib,% + {European Computer Modern Fibonacci Slanted Font (\code{ecfs})}\textfibsl% +} + +\@namedef{TextFontNamecmssOT1}{Computer Modern Sans Serif (\code{cmss})} + +\@namedef{TextFontNameShortcmssOT1}{\code{cmss}} + +\@namedef{TextItFontNamecmssOT1}{Computer Modern Slanted Sans Serif (\code{cmssi})} + +\@namedef{TextFontscmssOT1}% +{% + {Computer Modern Sans Serif (\code{cmss})}\textnormal,% + {Computer Modern Slanted Sans Serif (\code{cmssi})}\textsl,% + {Computer Modern Sans Serif Demibold Condensed (\code{cmssdc})}\textsbc,% + {Computer Modern Sans Serif Bold Extended (\code{cmssbx})}\textbf% +} + +\@namedef{TextFontNamecmssT1}{European Computer Modern Sans Serif (\code{ecss})} + +\@namedef{TextFontNameShortcmssT1}{\code{ecss}} + +\@namedef{TextItFontNamecmssT1}{European Computer Modern Sans Serif Inclined (\code{ecsi})} + +\@namedef{TextFontscmssT1}% +{% + {European Computer Modern Sans Serif (\code{ecss})}\textnormal,% + {European Computer Modern Sans Serif Inclined (\code{ecsi})}\textsl,% + {European Computer Modern Sans Serif Bold Extended (\code{ecsx})}\textbf,% + {European Computer Modern Sans Serif Bold Extended Oblique (\code{ecso})}\textbfsl,% + {European Computer Modern Sans Serif Demi Condensed (\code{ecssdc})}\textsbc% +} + +\@namedef{TextFontNamecmbrOT1}{Computer Modern Bright (\code{cmbr})} +\expandafter\let\csname TextFontNamecmbrmtOT1\expandafter\endcsname\csname TextFontNamecmbrOT1\endcsname + +\@namedef{TextFontNameShortcmbrOT1}{\code{cmbr}} +\expandafter\let\csname TextFontNameShortcmbrmtOT1\expandafter\endcsname\csname TextFontNameShortcmbrOT1\endcsname + +\@namedef{TextItFontNamecmbrOT1}{Computer Modern Bright Slanted (\code{cmbrsl})} + +\@namedef{TextFontscmbrOT1}% +{% + {Computer Modern Bright (\code{cmbr})}\textnormal,% + {Computer Modern Bright Slanted (\code{cmbrsl})}\textsl,% + {Computer Modern Bright Bold Extended (\code{cmbrbx})}\textbf% +} + +\@namedef{TextFontNamecmbrT1}{European Computer Modern Bright medium regular (\code{ebmr})} +\expandafter\let\csname TextFontNamecmbrmtT1\expandafter\endcsname\csname TextFontNamecmbrT1\endcsname + +\@namedef{TextFontNameShortcmbrT1}{\code{ebmr}} +\expandafter\let\csname TextFontNameShortcmbrmtT1\expandafter\endcsname\csname TextFontNameShortcmbrT1\endcsname + +\@namedef{TextItFontNamecmbrT1}{European Computer Modern Bright medium oblique (\code{ebmo})} + +\@namedef{TextFontscmbrT1}% +{% + {European Computer Modern Bright medium regular (\code{ebmr})}\textnormal,% + {European Computer Modern Bright medium oblique (\code{ebmo})}\textsl,% + {European Computer Modern Bright semibold regular (\code{ebsr})}\textsb,% + {European Computer Modern Bright semibold oblique (\code{ebso})}\textsbsl% +} + +\@namedef{TextFontNameccrOT1}{Concrete Roman (\code{ccr})} + +\@namedef{TextFontNameShortccrOT1}{\code{ccr}} + +\@namedef{TextItFontNameccrOT1}{Concrete Text Italic (\code{ccti})} + +\@namedef{TextFontsccrOT1}% +{% + {Concrete Roman (\code{ccr})}\textnormal,% + {Concrete Slanted Roman (\code{ccsl})}\textsl,% + {Concrete Text Italic (\code{ccti})}\textit,% + {Concrete Roman Caps and Small Caps (\code{cccsc})}\textsc,% + {Concrete Slanted Condensed Roman (\code{ccslc})}\textcsl,% + {Computer Modern Sans Serif Bold Extended (\code{cmssbx}) as a replacement for `bold' ccr}\textbf% +} + +\@namedef{TextFontNameccrT1}{European Concrete Roman (\code{eorm})} + +\@namedef{TextFontNameShortccrT1}{\code{eorm}} + +\@namedef{TextItFontNameccrT1}{European Computer Concrete Text Italic (\code{eoti})} + +\@namedef{TextFontsccrT1}% +{% + {European Concrete Roman (\code{eorm})}\textnormal,% + {European Computer Concrete Slanted (\code{eosl})}\textsl,% + {European Computer Concrete Text Italic (\code{eoti})}\textit,% + {European Concrete Roman Caps and Small Caps (\code{eocc})}\textsc,% + {European Computer Modern Sans Serif Bold Extended (\code{ecsx}) as a replacement for `bold' ccr}\textbf,% + {European Computer Modern Sans Serif Bold Extended Oblique (\code{ecso}) as a replacement for `bold slanted' ccr}% + \textbfsl% +} + +\@namedef{TTFontNamelcmssOT1}{Computer Modern Typewriter Text (\code{cmtt})} + +\@namedef{TTItFontNamelcmssOT1}{Computer Modern Italic Typewriter Text (\code{cmitt})} + +\@namedef{TTFontslcmssOT1}% +{% + {Computer Modern Typewriter Text (\code{cmtt})}\textnormal,% + {Computer Modern Italic Typewriter Text (\code{cmitt})}\textit,% + {Computer Modern Slanted Typewriter Text (\code{cmsltt})}\textsl,% + {Computer Modern Typewriter Caps and Small Caps (\code{cmtcsc})}\textsc% +} + +\@namedef{TTFontNamelcmssT1}{European Computer Modern LaTeX Typewriter (\code{ecltt})} + +\@namedef{TTItFontNamelcmssT1}{European Computer Modern Italic Typewriter Text (\code{ecit})} + +\@namedef{TTFontslcmssT1}% +{% + {European Computer Modern LaTeX Typewriter (\code{ecltt})}\textnormal,% + {European Computer Modern Italic Typewriter Text (\code{ecit})}\textit,% + {European Computer Modern Slanted Typewriter Text (\code{ecst})}\textsl,% + {European Computer Modern Typewritr Caps and Small Caps (\code{ectc})}\textsc% +} + +\@namedef{TTFontNamecmrOT1}{Computer Modern Typewriter Text (\code{cmtt})} + +\@namedef{TTItFontNamecmrOT1}{Computer Modern Italic Typewriter Text (\code{cmitt})} + +\@namedef{TTFontscmrOT1}% +{% + {Computer Modern Typewriter Text (\code{cmtt})}\textnormal,% + {Computer Modern Italic Typewriter Text (\code{cmitt})}\textit,% + {Computer Modern Slanted Typewriter Text (\code{cmsltt})}\textsl,% + {Computer Modern Typewriter Caps and Small Caps (\code{cmtcsc})}\textsc% +} + +\@namedef{TTFontNamecmrT1}{European Computer Modern Typewriter (\code{ectt})} + +\@namedef{TTItFontNamecmrT1}{European Computer Modern Italic Typewriter Text (\code{ecit})} + +\@namedef{TTFontscmrT1}% +{% + {European Computer Modern Typewriter (\code{ectt})}\textnormal,% + {European Computer Modern Italic Typewriter Text (\code{ecit})}\textit,% + {European Computer Modern Slanted Typewriter Text (\code{ecst})}\textsl,% + {European Computer Modern Typewritr Caps and Small Caps (\code{ectc})}\textsc% +} + +\expandafter\let\csname TTFontscmssOT1\expandafter\endcsname\csname TTFontscmrOT1\endcsname + +\expandafter\let\csname TTFontscmssT1\expandafter\endcsname\csname TTFontscmrT1\endcsname + +\expandafter\let\csname TTFontNamecmssOT1\expandafter\endcsname\csname TTFontNamecmrOT1\endcsname + +\expandafter\let\csname TTFontNamecmssT1\expandafter\endcsname\csname TTFontNamecmrT1\endcsname + +\expandafter\let\csname TTItFontNamecmssOT1\expandafter\endcsname\csname TTItFontNamecmrOT1\endcsname + +\expandafter\let\csname TTItFontNamecmssT1\expandafter\endcsname\csname TTItFontNamecmrT1\endcsname + +\@namedef{TTFontNamecmbrOT1}{CM Typewriter Light (\code{cmtl})} + +\@namedef{TTItFontNamecmbrOT1}{CM Typewriter Light Slanted (\code{cmsltl})} + +\@namedef{TTFontscmbrOT1}% +{% + {CM Typewriter Light (\code{cmtl})}\textnormal,% + {CM Typewriter Light Slanted (\code{cmsltl})}\textsl% +} + +\@namedef{TTFontNamecmbrT1}{EC Typewriter Light (\code{ebtl})} + +\@namedef{TTItFontNamecmbrT1}{EC Typewriter Light oblique (\code{ebto})} + +\@namedef{TTFontscmbrT1}% +{% + {EC Typewriter Light (\code{ebtl})}\textnormal,% + {EC Typewriter Light oblique (\code{ebto})}\textsl% +} + +\expandafter\let\csname TTFontsccrOT1\expandafter\endcsname\csname TTFontscmrOT1\endcsname + +\expandafter\let\csname TTFontsccrT1\expandafter\endcsname\csname TTFontscmrT1\endcsname + +\expandafter\let\csname TTFontNameccrOT1\expandafter\endcsname\csname TTFontNamecmrOT1\endcsname + +\expandafter\let\csname TTFontNameccrT1\expandafter\endcsname\csname TTFontNamecmrT1\endcsname + +\expandafter\let\csname TTItFontNameccrOT1\expandafter\endcsname\csname TTItFontNamecmrOT1\endcsname + +\expandafter\let\csname TTItFontNameccrT1\expandafter\endcsname\csname TTItFontNamecmrT1\endcsname + +\@namedef{MathFontNamecmm}{Computer Modern Math} + +\@namedef{MathFontNameccm}{Concrete Math} + +\@namedef{MathFontNameeuler}{Euler} + +\@namedef{MathFontNamecmbrm}{Computer Modern Bright Math} +\@namedef{MathLetterFontNamecmm}{Computer Modern Math Italic (\code{cmmi})} +\@namedef{MathLetterFontNameccm}{Concrete Math Italic (\code{xccmi})} -% Local Variables: -% fill-column: 120 -% TeX-master: t -% End: +\@namedef{MathLetterFontNameeuler}{Euler Roman Medium (\code{eurm})} + +\@namedef{MathLetterFontNamecmbrm}{Computer Modern Bright Math Slanted (\code{cmbrmi})} + +\@namedef{MathSymbolFontNamecmm}{Computer Modern Math Symbols (\code{cmsy})} + +\@namedef{MathSymbolFontNameccm}{Concrete Math Symbols (\code{xccsy})} + +\@namedef{MathSymbolFontNameeuler}{Euler Script Medium (\code{eusm})} + +\@namedef{MathSymbolFontNamecmbrm}{Computer Modern Bright Math Symbols (\code{cmbrmi})} + +\@namedef{MathExtensionFontNamecmm}{Computer Modern Math Extension (\code{cmex})} + +\@namedef{MathExtensionFontNameccm}{Concrete Math Extension (\code{xccex})} + +\@namedef{MathExtensionFontNameeuler}{Euler Extension (\code{euex})} + +\expandafter\let\csname MathExtensionFontNamecmbrm\expandafter\endcsname\csname MathExtensionFontNamecmm\endcsname + +\newcommand{\listdescriptions}[1] +{% + \expandafter\expandafter\expandafter\@listdescriptions\expandafter\expandafter\expandafter + {\csname#1\endcsname}% +} + +\newcommand{\@listdescriptions}[1]{\@for\temp := #1 \do {\expandafter\mkdescription\temp}} + +\newcommand{\mkdescription}[2]{} + +\newcommand{\TextFontName}{\@nameuse{TextFontName\TPSFTextfont\encodingdefault}} + +\newcommand{\TextFontNameShort}{\@nameuse{TextFontNameShort\TPSFTextfont\encodingdefault}} + +\let\nameuse\@nameuse +\makeatother + +%----------------------------------------------------------------------------------------------------------------- +% +\makeslidetitle{\TeX Power Example: Package \code{tpslifonts}}\label{Sec:tpslifonts} + +This is the demonstration document for \code{tpslifonts}, \TeX Power's slide fonts configuration package. + +Beamer and overhead presentations are often viewed under peculiar circumstances. Especially for presentations which are +projected directly `out of the computer', low power of the beamer, low resolution and an abundance of colors can lead to +severe readability problems. + +It is therefore of utmost importance to optimize font selection as much as possible towards \emph{readability}. + +The package \code{tpslifonts} offers a couple of `harmonising' combinations of text and math fonts from the (distant) +relatives of \concept{computer modern} fonts, with a couple of extras for optimising readability. + +\newpage + +The package offers the following features: +\begin{enumerate} +\item Text fonts from \concept{computer modern roman}, \concept{computer modern sans serif}, \concept{Sli\TeX{} computer + modern sans serif}, \concept{computer modern bright}, or \concept{concrete roman}. +\item Math fonts from \concept{computer modern math}, \concept{computer modern bright math}, or \concept{Euler fonts}. +\item Support of additional symbol fonts like \concept{AMS symbols} or \concept{doublestroke}. +\item All fonts configured for `smooth scaling' (like in the \code{type1cm} package). +\item Avoiding fonts not freely available in \concept{Type 1} format. +\item Careful \concept{design size} selection for optimum readability. +\end{enumerate} + +\newpage + +In the following, the fonts configured by this package are listed, augmented by font samples and some larger examples +which hopefully allow to review the configuration parameters. + +Note that there are a couple of options and parameter settings in the preamble of \code{slifontsexample.tex} which allow +to try different configuration variants. + +This document has been typeset using \encodingdefault{} font encoding. + +\section{Text Fonts} + +Package \code{tpslifonts} has configured the following \concept{text fonts}: + +\renewcommand{\mkdescription}[2] +{% + + \medskip\pagebreak[3] + + \hrule + + #1:\\ #2{The quick brown fox jumps over the lazy dog.} + +}% +\listdescriptions{TextFonts\TPSFTextfont\encodingdefault} + +\medskip + +\hrule + +\medskip + +\section{Typewriter Fonts} + +\ifthenelse{\isundefined{\TPSFttscale}}{} +{% + \ifthenelse{\equal{\TPSFTextfont}{lcmss}} + {For harmonising better with \ifthenelse{\equal{\encodingdefault}{OT1}}{\code{lcmss}}{\code{eclq}}, t} + {T}% + ypewriter fonts are scaled up by a factor of $\TPSFttscale$. +}% + +Package \code{tpslifonts} has configured the following \concept{typewriter fonts}: + +\renewcommand{\mkdescription}[2] +{% + + \medskip\pagebreak[3] + + \hrule + + #1:\\ #2{\texttt{The quick brown fox jumps over the lazy dog.}} + +}% +\listdescriptions{TTFonts\TPSFTextfont\encodingdefault} + +\medskip + +\hrule + +\medskip + +\section{Math Fonts} + +\ifthenelse{\equal{\TPSFMathfont}{euler}} +{% + The main math fonts are derived from the \concept{\MathFontNameeuler} fonts. Operators% + \ifthenelse{\boolean{TPSFeulerdigits}}{}{ and digits} are taken from \TextFontName. +}% +{% + The main math fonts are derived from the \concept{\nameuse{MathFontName\TPSFMathfont}} fonts. + \ifthenelse{\boolean{TPSFtextops}}% + {Operators, digits, and upper case greek letters are taken from \TextFontName.} + {}% +} + +\ifthenelse{\isundefined{\TPSFmathscale}}{} +{% + \ifthenelse{\equal{\TPSFTextfont}{lcmss}} + {For harmonising better with \ifthenelse{\equal{\encodingdefault}{OT1}}{\code{lcmss}}{\code{eclq}}, m} + {M}% + ath fonts are scaled up by a factor of $\TPSFmathscale$. % + \ifthenelse{\equal{\TPSFMathfont}{euler}} {Euler fonts are scaled up by a factor of $\TPSFeulerscale$. } + {}% + \ifthenelse{\equal{\TPSFMathfont}{cmbrm}} + {The cmbright math fonts are scaled up by a factor of $\TPSFcmbrscale$. } + {}% +}% + +\medskip\pagebreak[3] + +\hrule\nopagebreak + +\ifthenelse{\equal{\TPSFMathfont}{euler}} +{% + Operators\ifthenelse{\boolean{TPSFeulerdigits}}{}{ and digits} are taken from \TextFontName:\\ + $\min \max \sup \lim \ifthenelse{\boolean{TPSFeulerdigits}}{}{1 2 3 4 5}$ + + \medskip + + \hrule + + Latin and greek letters\ifthenelse{\boolean{TPSFeulerdigits}}{, digits,}{} and some symbols are taken from (virtual) + Euler Roman (\code{zeur}):\\ + $abcd ABCD>/<\alpha \beta \gamma \delta\Phi \Pi \Gamma \Theta\ifthenelse{\boolean{TPSFeulerdigits}}{1 2 3 4 5}{}$ + + \medskip + + \begin{samepage} + \hrule\nopagebreak + + Symbols and calligraphic letters are taken from (virtual) Euler Script (\code{zeus}):\\ + $ \mathcal{ABC} -*+ = \div\equiv \leq \forall \cap \cup \nabla \neq$ + \par + \end{samepage} + + \medskip + + \hrule + + \parbox{\linewidth-\widthof{$\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$}-1ex} + {% + Large and growing symbols are taken from (virtual) Euler Extension (\code{zeuex}). + }\hfill + $\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$ +} +{% + Operators, digits, some symbols and upper case greek letters are taken from + \nameuse{TextFontName\TPSFOperatorfont OT1}% + :\\ + $\min \max \sup \lim 1 2 3 4 5 + = \Phi \Pi \Gamma \Theta$ + + \medskip + + \hrule + + Latin and lower case greek letters and some symbols are taken from \nameuse{MathLetterFontName\TPSFMathfont}% + :\\ + $abcd ABCD >/< \alpha \beta \gamma \delta$ + + \medskip + +\begin{samepage} + \hrule\nopagebreak + + Symbols and calligraphic letters are taken from \nameuse{MathSymbolFontName\TPSFMathfont}% + :\\ + $\mathcal{ABC} -*\div\equiv \leq \forall \cap \cup \nabla \neq$ + \par +\end{samepage} + +\medskip + +\begin{samepage} + \hrule\nopagebreak + +\parbox{\linewidth-\widthof{$\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$}-1ex} +{% + Large and growing symbols are taken from \nameuse{MathExtensionFontName\TPSFMathfont}. +}\hfill +$\displaystyle\left(\sum^{\left\{\bigcup\limits^\bigoplus\right\}}_{\left[\prod\limits_\biguplus\right]}\right)$ +\par +\end{samepage} +} + +\medskip + +\ifthenelse{\boolean{TPSFamsfonts}} +{% + \begin{samepage} + \hrule\nopagebreak + + \ifthenelse{\equal{\TPSFMathfont}{cmbrm}} + {% + Fraktur letters are taken from Euler Fraktur (\code{eufm}):\\ + $\mathfrak{abcdABCD}$ + \par + \end{samepage} + + \medskip + + \begin{samepage} + \hrule\nopagebreak + + Blackboard bold letters and a lot of additional math symbols are taken from the cmbright AMS math fonts + (\code{cmbras}, \code{cmbrbs}):\\ + $\mathbb{NZQR} \Cap \boxtimes \succapprox \subseteqq \nsubseteq \curvearrowright \complement \varnothing$ + } + {% + Fraktur letters, blackboard bold letters, and a lot of additional math symbols are taken from the AMS math fonts + (\code{msam}, \code{msbm}, \code{eufm}):\\ + $\mathfrak{abcdABCD}\mathbb{NZQR} \Cap \boxtimes \succapprox \subseteqq \nsubseteq \curvearrowright \complement + \varnothing$ + } + \par + \end{samepage} + + \medskip +}% +{} + +\ifthenelse{\boolean{TPSFlasy}\and\not\boolean{TPSFwasysym}} +{% + \begin{samepage} + \hrule\nopagebreak + + A couple of additional math symbols are taken from the \LaTeX{} symbol font (\code{lasy}):\\ + $\mho\Join\Box\leadsto\Diamond\sqsubset\sqsupset$ + \par + \end{samepage} + + \medskip +}% +{} + +\ifthenelse{\boolean{TPSFstmaryrd}} +{% + \begin{samepage} + \hrule\nopagebreak + + Additional math symbols are taken from St Mary's Road symbol font (\code{stmary}):\\ + $\boxast \merge \nplus \varolessthan \subsetpluseq \lightning$ + \par + \end{samepage} + + \medskip +}% +{} + +\ifthenelse{\boolean{TPSFwasysym}} +{% + \begin{samepage} + \hrule\nopagebreak + + Additional symbols are taken from Waldis symbol font (\code{wasy}):\\ + $\oiint$\space \permil\space \phone\space \diameter\space \smiley\space \venus\space \mars + \par + \end{samepage} + + \medskip +}% +{} + +\ifthenelse{\boolean{TPSFrsfs}} +{% + \begin{samepage} + \hrule\nopagebreak + + Upper case script letters are taken from Ralph Smith Formal Script (\code{rsfs}):\\ + $\mathscr{ABCDEFGHIJKLMNOPQRSTUVWXYZ}$ + \par + \end{samepage} + + \medskip +}% +{} + +\ifthenelse{\boolean{TPSFdstroke}} +{% + \begin{samepage} + \hrule\nopagebreak + + Double stroke letters are taken from Doublestroke Font + (\ifthenelse{\equal{\TPSFOperatorfont}{cmr}}{\code{dsrom}}{\code{dsss}}):\\ + $\mathds{ABCDEFGHIJKLMNOPQRSTUVWXYZ1hk}$ + \par + \end{samepage} + + \medskip +}% +{} + +\hrule + +\newpage +\subsection{Math Examples} +Next, some examples of math formulae so you can see how the fonts work together (translations from german done by me). + +\ifthenelse{\isundefined{\align}}{} +{% +\medskip + +\hrule + +\begin{minipage}{\linewidth} + \underl{From The Book.} + \begin{presentbox} + \setlength{\abovedisplayskip}{.3\abovedisplayskip}% + \textbf{(D)}\quad The functions $f$ and $g$ fulfil the same functional equation: + $f\left(\frac{x}{2}\right)+f\left(\frac{x+1}{2}\right)=2f(x)$ and + $g\left(\frac{x}{2}\right)+g\left(\frac{x+1}{2}\right)=2g(x)$. + + For $f(x)$, we obtain this from the addition formulas for the sine and cosine: + \begin{align*} + f\left(\textstyle\frac{x}{2}\right)+f\left(\textstyle\frac{x+1}{2}\right) + &=\pi + \left[\frac{\cos\frac{\pi x}{2}}{\sin\frac{\pi x}{2}}-\frac{\sin\frac{\pi x}{2}}{\cos\frac{\pi x}{2}}\right] + \\[1ex] + &=2\pi\frac{\cos\left(\frac{\pi x}{2}+\frac{\pi x}{2}\right)}{\sin\left(\frac{\pi x}{2}+\frac{\pi x}{2}\right)} + =2f(x)\text{.} + \end{align*} + + The functional equation for $g$ follows from + \begin{displaymath} + g_N\left(\textstyle\frac{x}{2}\right)+g_N\left(\textstyle\frac{x+1}{2}\right) + =2g_{2N}(x)+\frac{2}{x+2N+1}\text{.} + \end{displaymath} + \end{presentbox} +\end{minipage}% +} + +\ifthenelse{\boolean{TPSFdstroke}\and\not\isundefined{\align}} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From an undergrad book on calculus.} + \begin{presentbox} + \begin{align*} + c_k&=\frac{1}{2\pi}\int_{0}^{2\pi} f(x) e^{-\mathrm{i}kx}\,\mathrm{d}x + =\frac{1}{2\pi}\sum_{j=1}^{r}\int_{t_{j-1}}^{t_j} f(x) e^{-\mathrm{i}kx}\,\mathrm{d}x\\ + &=\frac{-\mathrm{i}}{2\pi k}\int_{0}^{2\pi} \varphi(x) e^{-\mathrm{i}kx}\,\mathrm{d}x + =\frac{-\mathrm{i}\gamma_k}{k}\text{.} + \end{align*} + As for all $\alpha,\beta\in\mathds{C}$, + $\left|\alpha\beta\right|\leq\frac{1}{2}\left(\left|\alpha\right|^2+\left|\beta\right|^2\right)$, it holds that + \begin{displaymath} + \left|c_k\right|\leq\frac{1}{2}\left(\frac{1}{\left|k\right|^2}+\left|\gamma_k\right|^2\right)\text{.} + \end{displaymath} + From the convergence of $\sum\limits_{k=1}^{\infty}\frac{1}{k^2}$ and + $\sum\limits_{k=-\infty}^{\infty}\left|\gamma_k\right|^2$, it follows that + \begin{displaymath} + \sum_{k=-\infty}^{\infty}\left|c_k\right|<\infty\text{.} + \end{displaymath} + \end{presentbox} +\end{minipage}% +} +{} + +\ifthenelse{\isundefined{\align}\or\isundefined{\extrarowheight}}{} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From an undergrad book on calculus (2nd volume).} + \begin{presentbox} + \small + By \name{Fubini}'s theorem, + \setcounter{equation}{8}% + \begin{equation} + \label{eq:GaussLemma1} + \int\limits_{Z_\varepsilon}\operatorname{div} F \,\mathrm{d}x + = \sum_{k=1}^{n}\, + \underbrace + {% + \int\limits_{Q'} + \left( + \int\limits^{h\left(x'\right)-\varepsilon}_{-\infty}\partial_kF_k\left(x',x_n\right)\,\mathrm{d}x_n + \right) + \,\mathrm{d}x' + }_{{}\mathrel{=:} I_k} + \text{.} + \end{equation} + Evaluation of $I_k$: Obviously, + \begin{displaymath} + I_n=\int\limits_{Q'}F_n\left(x',h(x'-\varepsilon)\right)\,\mathrm{d}x'\text{.} + \end{displaymath} + In the case $1\leq k \leq n-1$, we employ the identity + \begin{displaymath} + \partial_k + \left( + \int\limits^{h\left(x'\right)-\varepsilon}_{-\infty}\!\!\!\!\!\!F_k\left(x',x_n\right)\,\mathrm{d}x_n + \right) + = + \begin{array}[t]{@{}>{\displaystyle}l@{}} + \int\limits^{h\left(x'\right)-\varepsilon}_{-\infty} + \!\!\!\!\!\!\partial_kF_k\left(x',x_n\right)\,\mathrm{d}x_n\\ + {}+F_k\left(x',h(x'-\varepsilon)\right)\cdot\partial_k h\left(x'\right)\text{.} + \end{array} + \end{displaymath} + \end{presentbox} +\end{minipage}% +} + +\newpage + +\ifthenelse{\isundefined{\align}\or\isundefined{\CD}}{} +{% +\begin{minipage}{\linewidth} + \underl{From a book on functional analysis.} + \begin{presentbox} + \textbf{Definition 25}\quad Let $\mathcal{C}$ and $\mathcal{D}$ be categories and $\mathcal{F}, \mathcal{G}$ + functors from $\mathcal{C}$ into $\mathcal{D}$. A mapping + $\eta:\operatorname{Ob}\mathcal{C}\to\operatorname{Mor}\mathcal{D}$ is called a \concept{natural transformation + between $\mathcal{F}$ and $\mathcal{G}$} if + \begin{enumerate} + \item[(i)] $\forall + A\in\operatorname{Ob}\mathcal{C}: + \eta(A)\in\operatorname{Mor}_{\mathcal{D}}\left(\mathcal{F}(A),\mathcal{G}(A)\right)$ + \item[(ii)] $\forall A,B\in\operatorname{Ob}\mathcal{C}\;\forall f\in\operatorname{Mor}_{\mathcal{C}}(A,B):$ + \begin{align*} + \begin{CD} + \mathcal{F}(A)@>{\mathcal{F}(f)}>>\mathcal{F}(B)\\ + @V{\eta(A)}VV @VV{\eta(B)}V\\ + \mathcal{G}(A)@>>{\mathcal{G}(f)}>\mathcal{G}(B)\\ + \end{CD} + &&\text{or}&& + \begin{CD} + \mathcal{F}(A)@<{\mathcal{F}(f)}<<\mathcal{F}(B)\\ + @V{\eta(A)}VV @VV{\eta(B)}V\\ + \mathcal{G}(A)@<<{\mathcal{G}(f)}<\mathcal{G}(B)\\ + \end{CD} + \end{align*} + respectively, commute, if $\mathcal{F}, \mathcal{G}$ are covariant or contravariant, respectively. + \end{enumerate} + + This is denoted as $\eta:\mathcal{F}\to \mathcal{G}$. Such a natural transformation is called a \concept{natural + equivalence between $\mathcal{F}$ and $\mathcal{G}$} if $\eta(A)$ is an isomorphism for every + $A\in\operatorname{Ob}\mathcal{C}$. + \end{presentbox} +\end{minipage}% +} + +\ifthenelse{\boolean{TPSFamsfonts}\and\not\isundefined{\align}\and\not\isundefined{\MAT}} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From an undergrad book on linear algebra.} + \begin{presentbox} + \textit{Step 2.}\quad Determine an eigenvector $v_2$ for an eigenvalue $\lambda_2$ of $F_2$ ($\lambda_2$ is also + an eigenvalue of $F_1$). Next, determine a $j_2\in\{1,\dots,n\}$ such that + \begin{displaymath} + \mathfrak{B}_3 := (v_1,v_2,w_1,\dots,\widehat{w_{j_1}},\dots,\widehat{w_{j_2}},\dots,w_n) + \end{displaymath} + is a base of $V$. + + Next, calculate + \vspace*{-\baselineskip} + \begin{displaymath} + M_{\mathfrak{B}_3}(F)= + \left( + \begin{MAT}(b){ccccccc} + \lambda_1&\cdot&\cdot&\cdot&\cdot&\cdot&\cdot\\ + 0&\lambda_2&\cdot&\cdot&\cdot&\cdot&\cdot\\ + \cdot&0&&&&&\\ + \cdot&\cdot&&&&&\\ + \cdot&\cdot&&&A_3&&\\ + \cdot&\cdot&&&&&\\ + 0&0&&&&& + \addpath{(2,0,0)rrrrruuuuulllllddddd}\\ + \end{MAT} + \right)\text{.} + \end{displaymath} + If $W_3:=\operatorname{Span}(w_1,\dots,\widehat{w_{j_1}},\dots,\widehat{w_{j_2}},\dots,w_n)$, then $A_3$ + determines a linear mapping $F_3:W_3\to W_3$. + \end{presentbox} +\end{minipage}% +} +{} + +\ifthenelse{\isundefined{\align}}{} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From an undergrad book on linear algebra (2nd volume).} + \begin{presentbox} + \DeclareRobustCommand{\with}{\;\vline\;}% + \DeclareRobustCommand{\Set}[2]{\left\{#1\with#2\right\}}% + \setlength{\abovedisplayskip}{.5\abovedisplayskip}% + \setlength{\belowdisplayskip}{.5\belowdisplayskip}% + \textit{Remark.}\quad If $\left(Y_i\right)_{i\in I}$ is a family of affine subspaces $Y_i$ of an affine space $X$, + then + \begin{displaymath} + Y := \bigcup_{i\in I} Y_i\subset X + \end{displaymath} + is again an affine subspace. If $Y\neq\emptyset$, then + \begin{displaymath} + T(Y)=\bigcup_{i\in I} T\left(Y_i\right)\text{.} + \end{displaymath} + + \textit{Proof.}\quad For $Y=\emptyset$, nothing is to be proved. Otherwise, there is a fixed point $p_0\in Y$ such + that + \begin{align*} + T(Y)&=\Set{\overrightarrow{p_0q}\in T(X)}{q\in\bigcup_{i\in I} Y_i} \\ + &= \bigcup_{i\in I}\Set{\overrightarrow{p_0q}\in T(X)}{q\in Y_i}=\bigcup_{i\in I} T\left(Y_i\right)\text{.} + \end{align*} + From this, both claims follow. + \end{presentbox} +\end{minipage} +} + +\ifthenelse{\boolean{TPSFrsfs}\and\not\isundefined{\align}} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From a book on measure theory.} + \begin{presentbox} + Analogously, the general \concept{associativity} of $\sigma$-Algebra products is shown, that is + \begin{equation} + \tag{23.12} + \left(\bigotimes_{i=1}^{m}\mathscr{A}_i\right)\otimes\left(\bigotimes_{i=m+1}^{n}\mathscr{A}_i\right) + =\bigotimes_{i=1}^{n}\mathscr{A}_i + \makebox[0pt][l]{\normalcolor\quad($1\leq m<n$).} + \qquad\qquad\qquad\quad + \end{equation} + Statement (23.11) allows to prove the existence of the product measure for all $n\geq 2$ by induction. + + \medskip + + \textbf{23.9 Theorem}\quad\textit{For $\sigma$-finite measures $\mu_1,\dots,\mu_n$ on + $\mathscr{A}_1,\dots,\mathscr{A}_n$, there exists exactly one measure $\pi$ on + $\mathscr{A}_1\otimes\dots\otimes\mathscr{A}_n$ such that + \begin{equation} + \tag{23.13} + \pi\left(A_1\times\dots\times A_n\right)=\mu_1(A_1)\cdot\dots\cdot\mu_n(A_n) + \end{equation} + for all $A_i\in\mathscr{A}_i$ ($i=1,\dots,n$). Here, $\pi$ is also $\sigma$-finite.} + \end{presentbox} +\end{minipage}% +} +{} + +\ifthenelse{\boolean{TPSFrsfs}\and\boolean{TPSFdstroke}\and\not\isundefined{\align}} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From a book on probability theory.} + \begin{presentbox} + \textbf{17.3 Lemma}\quad\textit{If\/ $T$ takes values exclusively from $\mathds{N}$, then $X_T$ is an + $\mathscr{F}_T$-measurable random variable with values in $\left(\Omega',\mathscr{A}'\right)$. If only + $P\left\{T<+\infty\right\}=1$ holds, then up to $P$-almost certain equality there exists exactly one + $\mathscr{F}_T$-measurable random variable $X^*$ with values in $\left(\Omega',\mathscr{A}'\right)$ which + fulfils the condition + \begin{equation} + \tag{17.7} + X^*(\omega)=X_{T(\omega)}(\omega) + \makebox[0pt][l]{\normalcolor\quad for all $\omega\in\{T<\infty\}$.} + \qquad\qquad + \end{equation} + }% + + \smallskip + + \textit{Proof.}\quad It suffices to treat the second case and provide an $\mathscr{F}_T$-measurable random + variable fulfilling the given condition. To this end, choose an arbitrary $\omega'\in\Omega'$. We set + \begin{displaymath} + X^*(\omega) := + \begin{cases} + X_{T(\omega)}(\omega),&\omega\in\{T<\infty\}\text{,}\\ + \omega',&\omega\in\{T=\infty\}\text{.} + \end{cases} + \end{displaymath} + For every $A'\in\mathscr{A}'$, it is to be proved that $A := \left\{X^*\in A'\right\}$ is an element of + $\mathscr{F}_T$. + \end{presentbox} +\end{minipage}% +} +{} + +\ifthenelse{\isundefined{\align}\or\isundefined{\extrarowheight}}{} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From my MSc Thesis.} + \begin{presentbox} + \newcommand{\PV}{\operatorname{PV}}% + If we expand equations (4.102) and (4.103), we get + \begin{align*} + \lefteqn{\left(\sum_{q\in\PV}\max\left(M(q),M(\neg q)\right)\right)-\delta}\quad&\\[1ex] + &= + \begin{array}[t]{@{}>{\displaystyle}l@{}} + \sum_{\substack{q\in\PV\\q\neq p}} + \max + \left( + \begin{array}{@{}l@{}} + \frac{m}{M_{{>}s}'\left(\neg p\right)}\cdot M_{{>}s}'(q) + +\frac{m}{M_{s}'\left(p\right)}\cdot M_{s}'(q),\\[2ex] + \frac{m}{M_{{>}s}'\left(\neg p\right)}\cdot M_{{>}s}'(\neg q) + +\frac{m}{M_{s}'\left(p\right)}\cdot M_{s}'(\neg q) + \end{array} + \right)\\[6ex] + {}-\frac{m}{M_{{>}s}'\left(\neg p\right)}\cdot\delta_{{>}s}' + -\frac{m}{M_{s}'\left(p\right)}\cdot\delta_{s}'\\[3ex] + {}-\left(\frac{m}{M_{{>}s}'\left(\neg p\right)}-1\right)\cdot r_1 + -\left(\frac{m}{M_{s}'\left(p\right)}-1\right)\cdot r_2\\[3ex] + {}-\max(r_1,r_2)+m + \end{array} + \end{align*} + \end{presentbox} +\end{minipage}% +} + +\ifthenelse{\boolean{TPSFamsfonts}\and\not\isundefined{\align}} +{% +\newpage + +\begin{minipage}{\linewidth} + \underl{From my PhD Thesis.} + \begin{presentbox} + \DeclareRobustCommand{\Lcap}{\ensuremath{\sqcap}} + \DeclareRobustCommand{\FPcapIcup}{\ensuremath{\uplus}} + \DeclareRobustCommand{\pFl}[1]{\ensuremath{\overline{#1}}} + \DeclareRobustCommand{\Lprimecup}{\ensuremath{\curlyvee}} + \def\FpFl(#1,#2)% + {% + \ensuremath{\mathord + {% + \mathchoice + {\sideset{^{#1}}{^{\,}}{\mathop{\displaystyle\pFl{#2}}}}% + {\sideset{^{#1}}{^{\,}}{\mathop{\pFl{#2}}}}% + {\sideset{^{\scriptscriptstyle#1}}{^{\,}}{\mathop{\scriptstyle\pFl{#2}}}}% + {\sideset{^{\scriptscriptstyle#1}}{^{\,}}{\mathop{\scriptscriptstyle\pFl{#2}}}}% + }}% + } + \DeclareRobustCommand{\Lprimesub}{\ensuremath{\preccurlyeq}} + \DeclareRobustCommand{\Lsub}{\ensuremath{\sqsubseteq}} + \DeclareRobustCommand{\FIsub}{\ensuremath{\subseteqq}} + By Lemma 2.2.7, + \begin{displaymath} + \FpFl(d,a)\FPcapIcup\FpFl(d',b) + =\FpFl({\left(d\Lprimecup \delta\left(\FpFl(d',b)\right)\right)},{a\Lcap \alpha\left(\FpFl(d',b)\right)}). + \end{displaymath} + Furthermore, + \begin{align*} + d&\Lprimesub d\Lprimecup \delta\left(\FpFl(d',b)\right),\\ + a\Lcap \alpha\left(\FpFl(d',b)\right)&\Lsub a. + \end{align*} + From this, + \begin{displaymath} + \FpFl(d,a)\FIsub\FpFl(d,a)\FPcapIcup\FpFl(d',b) + \end{displaymath} + follows by (2.3). + \end{presentbox} +\end{minipage}% +} +{} + +\newcounter{char}% +\newcounter{symcnt}% +\makeatletter +\newcommand{\charlist}[4] +{% + \begingroup + \setcounter{char}{#1} + \whiledo{\value{char}<#2} + {% + \medskip + \hrule + \hbox{\@for\charht := #3\do{\fontsize{\charht}{\charht}\selectfont#4}}% + \stepcounter{char}% + \hrule + }% + \endgroup +}% +\newcommand{\mksymline}[2] +{% + \begingroup + \medskip + \hrule + \hbox + {% + \@for\charht := #2\do + {% + \fontsize{\charht}{\charht}\selectfont + \setcounter{symcnt}{0}% + $% + \@for\thesymbol := #1\do + {% + \ifcase\value{symcnt}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{{\thesymbol}}{}% + \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{\,\vrule\,{\thesymbol}}{}% + \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{{\thesymbol}}% + \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{\,\vrule\,{\thesymbol}}% + \or\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{\,\vrule\,{\thesymbol}}% + \or\ifthenelse{\boolean{TPSFamsfonts}}{\,\vrule\,{\thesymbol}}{}% + \or\ifthenelse{\boolean{TPSFlasy}\and\not\boolean{TPSFwasysym}}{\,\vrule\,{\thesymbol}}{}% + \or\ifthenelse{\boolean{TPSFstmaryrd}}{\,\vrule\,{\thesymbol}}{}% + \or\ifthenelse{\boolean{TPSFwasysym}}{\,\vrule\,{\thesymbol}}{}% + \fi + \stepcounter{symcnt}% + }% + \;\vrule width1ex\;% + $% + }% + }% + \hrule + \endgroup +}% +\makeatother + +\ifthenelse{\equal{\TPSFTextfont}{lcmss}} +{% +\newpage + +\section{Comparison of Characters} +As mentioned before, \code{tpslifonts} does a little scaling and fiddling with design sizes to make the fonts harmonize +as much as possible. + +The following scaling factors are used in this document: +\begin{center} + \begin{tabular}{lll} + Name&Purpose&Value\\\hline + \macroname{TPSFttscale}&Typewriter fonts&\TPSFttscale\\\hline + \macroname{TPSFmathscale}&Math fonts related to cm math&\TPSFmathscale\\\hline + \macroname{TPSFeulerscale}&Euler math fonts&\TPSFeulerscale\\\hline + \macroname{TPSFcmbrscale}&Cmbright math fonts&\TPSFcmbrscale\\\hline + \end{tabular} +\end{center} + +Unfortunately, the base font \TextFontName{} is quite excentric wrt the height ratio of upper case and lower case +letters; compare \TextFontNameShort{} \present{a\,A} with \nameuse{TextFontNameShortcmss\encodingdefault} +\present{\fontfamily{cmss}\selectfont a\,A}. + +For this reason, no amount of scaling can make \TextFontNameShort{} harmonise completely with `normal' fonts. + +In this section, you will see lists of similar characters from different fonts, arranged such that you can check how +good the sizes match. You then have to set your priorities and decide the respective scaling factors accordingly. See +the comments in the preamble of \code{slifontsexample.tex} for instructions on how to experiment with scaling. + +To account for different design sizes, the character samples are shown in several sizes. + +\subsection{Digits} + +Digits from \TextFontName, \nameuse{TTFontName\TPSFTextfont\encodingdefault}% +\ifthenelse{\boolean{TPSFeulerdigits}}{, Euler Roman (\code{zeur})}{}% +\ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{}{, \nameuse{TextFontName\TPSFOperatorfont OT1}}, +\nameuse{TextItFontName\TPSFTextfont\encodingdefault}, and \nameuse{TTItFontName\TPSFTextfont\encodingdefault} are +listed in sizes 5pt, 6pt, 7pt, 8pt, 9pt, 10pt, 11pt, and 17pt. + +\charlist{48}{58}{5,6,7,8,9,10,11,17} +{% + \char\value{char}\texttt{\char\value{char}}% + \ifthenelse + {% + \boolean{TPSFeulerdigits}\OR\not\equal{\TPSFOperatorfont}{\TPSFTextfont}% + }% + {$\char\value{char}$}{}% + \,\textit{\char\value{char}}\textit{\texttt{\char\value{char}}} +} + +\subsection{Upper Case Letters} + +Upper Case Letters from \TextFontName, \nameuse{TTFontName\TPSFTextfont\encodingdefault}% +\ifthenelse{\equal{\TPSFMathfont}{euler}}{, Euler Roman (\code{zeur})}{}% +\ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{}{, \nameuse{TextFontName\TPSFOperatorfont OT1}}% +\ifthenelse{\equal{\TPSFMathfont}{euler}}{, Euler Script (\code{zeus}; for calligraphic letters)}{}% +\ifthenelse{\boolean{TPSFamsfonts}} +{% + , Euler Fraktur (\code{eufm})% + , \ifthenelse{\equal{\TPSFMathfont}{cmbrm}}{cmbright AMS math (\code{cmbrbs}}{AMS math (\code{msbm}}% + ; for blackboard bold)% +}{}% +\ifthenelse{\boolean{TPSFdstroke}} +{, Doublestroke Font (\ifthenelse{\equal{cmr}{\TPSFTextfont}}{\code{dsrom}}{\code{dsss}})}{}% +, \nameuse{TextItFontName\TPSFTextfont\encodingdefault}, \nameuse{TTItFontName\TPSFTextfont\encodingdefault}% +\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{, \nameuse{MathLetterFontName\TPSFMathfont}}% +\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{, \nameuse{MathSymbolFontName\TPSFMathfont} for calligraphic letters}% +\ifthenelse{\boolean{TPSFrsfs}}{, Ralph Smith Formal Script (\code{rsfs})}{} +are listed in sizes 5pt, 7pt, and 10pt. + +\charlist{65}{91}{5,6,7,10} +{% + \char\value{char}\texttt{\char\value{char}}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{$\char\value{char}$}{}% + \ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{} + {$\operatorname{\char\value{char}}$}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{$\mathcal{\char\value{char}}$}{}% + \ifthenelse{\boolean{TPSFamsfonts}}{$\mathfrak{\char\value{char}}\mathbb{\char\value{char}}$}{}% + \ifthenelse{\boolean{TPSFdstroke}}{$\mathds{\char\value{char}}$}{}% + \,\textit{\char\value{char}}\textit{\texttt{\char\value{char}}}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{}{$\char\value{char}$}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{}{$\mathcal{\char\value{char}}$}% + \ifthenelse{\boolean{TPSFrsfs}}{$\mathscr{\char\value{char}}$}{}% + ~ +} + +\subsection{Lower Case Letters} + +Lower Case Letters from \TextFontName, \nameuse{TTFontName\TPSFTextfont\encodingdefault}% +\ifthenelse{\equal{\TPSFMathfont}{euler}}{, Euler Roman (\code{zeur})}{}% +\ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{}{, \nameuse{TextFontName\TPSFOperatorfont OT1}}% +\ifthenelse{\boolean{TPSFamsfonts}}{, Euler Fraktur (\code{eufm})}{}% +, \nameuse{TextItFontName\TPSFTextfont\encodingdefault}, \nameuse{TTItFontName\TPSFTextfont\encodingdefault}% +\ifthenelse{\equal{\TPSFMathfont}{euler}}{}{, \nameuse{MathLetterFontName\TPSFMathfont}} +are listed in sizes 5pt, 7pt, 10pt, 12pt, and 14pt. + +\charlist{97}{123}{5,7,10,12,14} +{% + \char\value{char}\texttt{\char\value{char}}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{$\char\value{char}$}{}% + \ifthenelse{\equal{\TPSFOperatorfont}{\TPSFTextfont}}{} + {$\operatorname{\char\value{char}}$}% + \ifthenelse{\boolean{TPSFamsfonts}}{$\mathfrak{\char\value{char}}$}{}% + \,\textit{\char\value{char}}\textit{\texttt{\char\value{char}}}% + \ifthenelse{\equal{\TPSFMathfont}{euler}}{}{$\char\value{char}$}% + ~ +} + +\newpage + +\subsection{Math Symbols} + +The different math fonts define symbols of similar shape, which should look equally large. Symbols from +\ifthenelse{\equal{\TPSFMathfont}{euler}} +{Euler Roman (\code{zeur}), Euler Symbol (\code{zeus})} +{% + \nameuse{TextFontName\TPSFOperatorfont OT1}, \nameuse{MathLetterFontName\TPSFMathfont}, + \nameuse{MathSymbolFontName\TPSFMathfont}% +}% +\ifthenelse{\boolean{TPSFamsfonts}}{, \ifthenelse{\equal{\TPSFMathfont}{cmbrm}}{cmbright }{}AMS math fonts}{}% +\ifthenelse{\boolean{TPSFlasy}\and\not\boolean{TPSFwasysym}}{, \LaTeX{} symbol font (\code{lasy})}{}% +\ifthenelse{\boolean{TPSFstmaryrd}}{, St Mary's Road symbol font (\code{stmary})}{}% +\ifthenelse{\boolean{TPSFwasysym}}{, Waldis symbol font (\code{wasy})}{} +are listed in sizes 5pt, 7pt, 10pt, and 12pt. + +To make clear which characters stem from which font, they are separated by vertical bars. + +\mksymline{\star,+,+,\star,\times,\divideontimes,,\moo,}{5,7,10,12} + +\mksymline{,\cup,,,\cup,\Cup,,\nplus,}{5,7,10,12} + +\mksymline{,\oplus,,,\oplus,\circledast,,\olessthan,\ocircle}{5,7,10,12} + +\mksymline{,\vdash,,,\vdash,\Vdash,,,}{5,7,10,12} + +\mksymline{,=,=,,\equiv,\doteqdot,,,}{5,7,10,12} + +\mksymline{<,\leq,,<,\leq,\leqslant,\sqsubset,\trianglelefteqslant,\apprle}{5,7,10,12} + +\mksymline{\leftharpoondown,\leftarrow,,\leftharpoondown,\leftarrow,\twoheadleftarrow,\leadsto,\leftarrowtriangle,\leadsto}{5,7,10,12} +} +{} + +\end{slide} +\end{document} diff --git a/Master/texmf-dist/source/latex/tpslifonts/tpslifonts.dtx b/Master/texmf-dist/source/latex/tpslifonts/tpslifonts.dtx new file mode 100644 index 00000000000..a549c2dcc40 --- /dev/null +++ b/Master/texmf-dist/source/latex/tpslifonts/tpslifonts.dtx @@ -0,0 +1,1621 @@ +% \iffalse meta-comment +% +% -------------------------------------------------------------- +% Package tpslifonts - part of TeXPower bundle - configure +% presentation fonts. Copyright (C) 1999-2004 Stephan Lehmke +% +% This program is free software; you can redistribute it and/or +% modify it under the terms of the GNU General Public License +% as published by the Free Software Foundation; either version 2 +% of the License, or (at your option) any later version. +% +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% -------------------------------------------------------------- +% +% tpslifonts.dtx,v 1.2 2004/07/27 11:30:39 hansfn Exp +% +% \fi +% +% \iffalse +% +%<*driver> +\ProvidesFile{tpslifonts.dtx} +%</driver> +%<tpslifonts>\NeedsTeXFormat{LaTeX2e} +%<tpslifonts>\ProvidesPackage{tpslifonts} +%<*tpslifonts> + [2004/07/27 v0.6d Configure presentation fonts.] +%</tpslifonts> +% +%<*driver> +\documentclass{ltxdoc} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{tpslifonts.dtx} +\end{document} +%</driver> +% +% \fi +% +% \CheckSum{1030} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% +% \GetFileInfo{tpslifonts.dtx} +% +% \DoNotIndex{\newcommand,\newenvironment} +% +% \title{The \textsf{tpslifonts} package\thanks{This document +% corresponds to \textsf{tpslifonts}~\fileversion, dated \filedate.}} +% \author{ Stephan Lehmke \\ \texttt{Stephan.Lehmke@cs.uni-dortmund.de}} +% +% \maketitle +% +% \tableofcontents +% +% \section{Introduction} +% +% Presentations to be displayed `online' with a video beamer have special needs +% concerning font configuration owing to low `screen' resolution and bad +% contrast caused by possibly bad light conditions combined with color +% highlighting. +% +% This package tries to cater to these needs by offering a holistic +% configuration of all document fonts, including text, typewriter, and math +% fonts. Special features are `smooth scaling' of Type1 fonts and careful design +% size selection for optimal readability. +% +% The default is to use ``lcmss'', also called ``slifonts'' for text and the +% usual cmtt and cmm for typewriter and math. There's a large variety of +% options and parameters for choosing different text and math fonts, all from +% the large ``cm'' family of fonts, which has the advantage that readability can +% be enhanced by scaling small design sizes. +% A couple of additional math fonts like ams and doublestroke fonts are +% supported. +% +% For some of the options to yield satisfying results, it is neccessary to +% install additional (free) Type1 fonts on your system. +% There's no intention to support other font families like the typical +% ``psnfss'' PostScript fonts, as they usually don't come in different design +% sizes, making the effort of tuning them for viewing futile. If you wish to use +% such a font, load it with the usual packages. +% +% This package is part of the TeXPower bundle, to be found at\\ |http://texpower.sourceforge.net/| +% +% \section{User interface} +% +% The package doesn't define any user-level commands; the font +% configuration is done entirely by package options. +% +% Furthermore, the accompanying example document slifontsexample gives a +% lot of information about the fonts configured and some examples of +% math typesetting. Please read the comments in slifontsexample.tex +% carefully and try out some of the configuration variants described +% therein. +% +% \section{Description of package options} +% +% \subsection{Text font options} +% +% The default is to use \SliTeX\ computer modern sans serif, an eminently +% readable font and my personal favourite.\\ +% +% \begin{tabular}{@{}l@{\hspace{1cm}}l} +% Option & Meaning\\ \hline +% cmr & Set computer modern roman text fonts.\\ +% cmfib & Set computer modern roman Fibonacci text fonts.\\ +% cmss & Set computer modern sans serif text fonts.\\ +% cmbright & Set computer modern bright text fonts.\\ +% concrete & Set concrete text fonts. +% \end{tabular} +% +% \subsection{Design size bounding} +% +% Usually design sizes are `bounded' by 8pt, that is, if an 8pt (or +% % lower) design size of a font exists, it will be scaled to larger sizes +% even if larger design sizes exist, because large design sizes tend to +% be less readable at low resolutions. For sizes below 8pt, smaller +% design sizes are used if available. +% +% The limit of 8pt is adjustable (downwards) by options. \\ +% +% \begin{tabular}{@{}l@{\hspace{1cm}}l} +% Option & Meaning\\ \hline +% scale7pt & Use 7pt as a bound.\\ +% scale6pt & Use 6pt as a bound.\\ +% scale5pt & Use 5pt as a bound. +% \end{tabular} +% +% \subsection{Font scaling} +% +% The default lcmss text fonts have very high `small letters', making +% normal-size fonts look small and difficult to read. There are options +% for scaling up math and typewriter fonts slightly so they harmonize a +% little more with text fonts.\\ +% +% \begin{tabular}{@{}l@{\hspace{1cm}}l} +% Option & Meaning\\ \hline +% scaleupmath & scale up math fonts\\ +% scaleuptt & scale up typewriter fonts +% \end{tabular} +% +% \subsection{Math fonts} +% +% Because the availability of different fonts in different encodings is +% not really homogenous, we differentiate between the font used for +% operator names (plus upper case greek, digits and some symbols) and +% the font used for other symbols. In some cases (math extension font), +% the choices are quite limited anyway. +% +% The default is to use cmr for operators and such and the standard cmm +% and relatives for symbols. The concrete option for concrete text fonts +% selects concrete math fonts by default, but as these don't seem to +% exist in Type1 format currently, it's recommended to combine concrete +% text with Euler math.\\ +% +% \begin{tabular}{@{}l@{\hspace{1cm}}p{0.6\textwidth}} +% Option & Meaning \\ \hline +% eulermath & Use Euler math fonts. This implies the option textops +% (see below). \\ +% eulerdigits & Take digits also from the Euler fonts (default: the +% text font used). Can be used only in conjunction with +% the eulermath option. \\ +% cmbrightmath & Use cmbright math fonts. \\ +% textops & Take operator names, upper case greek, digits and some +% symbols from the text font rather than from some font +% matching the math font (default for Euler math). +% \end{tabular} +% +% \StopEventually{\PrintChanges\PrintIndex} +% +% \section{Implementation} +% +% \changes{v0.1}{2001/08/10}{First version for the pre-alpha release of +% texpower.} +% +% \changes{v0.2}{2001/11/17}{Added support for stmaryrd fonts.} +% +% \changes{v0.3}{2002/10/18}{Rewritten to go without .fd files. Euler package +% dependence changed to eulervm. Added support for ams, lasy, wasysym, rsfs, +% dstroke fonts.} +% +% \changes{v0.4}{2003/03/25}{Added support for cmbright math.} +% +% \changes{v0.5}{2003/03/26}{Added support for T1 encoding.} +% +% \changes{v0.6}{2003/05/29}{Change of attitude: I found out how desolate the +% situation of most presentation packages is wrt fonts. Hence, instead of +% trying to be as minimally invasive as possible, tpslifonts will try to hijack +% every single font which might possibly be used in a presentation and replace +% it by something sensible. No `private' ``lcmr'' to replace ``cmr'' any more +% - cmr is redefined no matter what. Now configures (almost) all fonts type1cm +% and type1ec do, plus concrete, cmbright, and euler fonts. Added options +% ``scale5pt'', ``scale6pt'', ``scale7pt'' to bound the design sizes of fonts +% used. Added options ``cmr'', ``cmss'', ``cmbright'' and ``concrete'' to +% choose text fonts different from lcmss. Improved handling of option +% incompatibilities.} +% +% \changes{v0.6a}{2003/06/02}{Removed some font warnings by selecting `silent' +% forms of declaration. } +% +% \changes{v0.6b}{2003/07/19}{A small change making `cmbright' AMS fonts +% useable before \cs{begin\{document\}}. } +% +% \changes{v0.6c}{2003/09/23}{Added the option ``cmfib''.} +% +% \changes{v0.6d}{2004/07/27}{Moved to dtx format. No other code changes.} +% +% \begin{macrocode} +\RequirePackage{ifthen} +% \end{macrocode} +% +% \subsection{Options and general setup} +% +% Text fonts. The default is to use ``slifonts'' (lcmss). +% \begin{macrocode} +\newcommand{\TPSFTextfont}{lcmss} +% \end{macrocode} +% The option cmr sets ``computer modern roman'' text fonts. +% \begin{macrocode} +\DeclareOption{cmr}{\renewcommand{\TPSFTextfont}{cmr}} +% \end{macrocode} +% The option cmfib sets ``computer modern roman Fibonacci'' text fonts. +% \begin{macrocode} +\DeclareOption{cmfib}{\renewcommand{\TPSFTextfont}{cmfib}} +% \end{macrocode} +% The option cmss sets ``computer modern roman sans serif'' text fonts. +% \begin{macrocode} +\DeclareOption{cmss}{\renewcommand{\TPSFTextfont}{cmss}} +% \end{macrocode} +% The option cmbright sets ``computer modern bright'' text fonts. +% \begin{macrocode} +\DeclareOption{cmbright}{\renewcommand{\TPSFTextfont}{cmbr}} +% \end{macrocode} +% The option concrete sets ``concrete'' text fonts. +% \begin{macrocode} +\DeclareOption{concrete} +{% + \renewcommand{\TPSFTextfont}{ccr}% + \renewcommand{\TPSFMathfont}{ccm}% + \renewcommand{\TPSFOperatorfont}{ccr}% +} +% \end{macrocode} +% +% \subsubsection{Design size selection} +% +% Usually design sizes are `bounded' by 8pt, that is, if +% an 8pt (or lower) design size of a font exists, it will be scaled to larger +% sizes even if larger design sizes exist, to enhance readability at low +% resolutions. For sizes below 8pt, smaller design sizes are used if available. +% \begin{macrocode} +\providecommand{\TPSFMaxDesignSize}{8} +% \end{macrocode} +% The option scale5pt causes scaled 5pt design sizes to be used wherever +% possible. +% \begin{macrocode} +\DeclareOption{scale5pt}{\renewcommand{\TPSFMaxDesignSize}{5}} +% \end{macrocode} +% The option scale6pt causes scaled 6pt design sizes to be used wherever +% possible (for font sizes above 6pt). +% \begin{macrocode} +\DeclareOption{scale6pt}{\renewcommand{\TPSFMaxDesignSize}{6}} +% \end{macrocode} +% The option scale7pt causes scaled 7pt design sizes to be used wherever +% possible (for font sizes above 7pt). +% \begin{macrocode} +\DeclareOption{scale7pt}{\renewcommand{\TPSFMaxDesignSize}{7}} +% \end{macrocode} +% +% lcmss text fonts have very high `small letters', making normal-size fonts look +% small and difficult to read. +% The option scaleupmath (scaleuptt) will scale up math (typewriter) fonts +% slightly so they harmonize a little more with text fonts. +% These options do not make much sense with other text fonts, hence a warning +% (but no error message) is generated to remind the user they might have +% overlooked something. +% \begin{macrocode} +\newboolean{TPSFscaleup} +\DeclareOption{scaleupmath} +{% + \providecommand\TPSFmathscale{1.15}% + \providecommand\TPSFeulerscale{1.1}% + \providecommand\TPSFcmbrscale{1.1}% + \setboolean{TPSFscaleup}{true}% +} + +\DeclareOption{scaleuptt} +{\providecommand\TPSFttscale{1.2}\setboolean{TPSFscaleup}{true}} +% \end{macrocode} +% +% \subsubsection{Math fonts} +% +% Because the availability of different fonts in different encodings is not +% really homogenous, we differentiate between the font used for Operators (plus +% upper case greek, digits and some symbols) and the font used for other +% symbols. In some cases (math extension font), the choices are quite limited +% anyway. +% +% The default is to use cmr for operators and such and the standard cmm and +% relatives for symbols. +% \begin{macrocode} +\newcommand{\TPSFMathfont}{cmm} + +\newcommand{\TPSFOpF@cmm}{cmrm} + +\newcommand{\TPSFOpF@ccm}{ccr} + +\newcommand{\TPSFOperatorfont}{cmr} +% \end{macrocode} +% The option textops makes the operator font follow the text font. +% \begin{macrocode} +\newboolean{TPSFtextops} +\DeclareOption{textops}{\setboolean{TPSFtextops}{true}} +% \end{macrocode} +% The option eulermath sets euler math fonts (slightly adapted from the eulervm +% package to match lcmss better). +% When using this option, the operator font automatically follows the text +% font. +% \begin{macrocode} +\DeclareOption{eulermath} +{\renewcommand{\TPSFMathfont}{euler}\setboolean{TPSFtextops}{true}} +% \end{macrocode} +% The option eulerdigits works only in conjunction with eulermath and sets the +% euler-digits option of the eulervm package. +% \begin{macrocode} +\newboolean{TPSFeulerdigits} +\DeclareOption{eulerdigits} +{% + \setboolean{TPSFeulerdigits}{true}% + \PassOptionsToPackage{euler-digits}{eulervm}% +} +% \end{macrocode} +% The option cmbrightmath sets cmbright math fonts (slightly adapted from the +% cmbright package to match lcmss better). +% \begin{macrocode} +\DeclareOption{cmbrightmath}{\renewcommand{\TPSFMathfont}{cmbrm}} + +\newcommand{\TPSFOpF@cmbrm}{cmbrmt} +% \end{macrocode} + +% +% \subsubsection{Process options} +% \begin{macrocode} +\ProcessOptions +% \end{macrocode} +% +% Option postprocessing. +% +% Parameters |\TPSFmathscale| and such can be (re)defined from outside the +% tpslifonts package to adjust scaling. If any of these scaling parameters is +% defined before the tpslifonts package is loaded, there is no need to give the +% respective option. +% Here, we test whether the parameters have been provided (either by defining +% them independently or by giving one of the ``scaleup...'' options), and define +% the `real' scaling parameter for font definition accordingly. +% \begin{macrocode} +\@ifundefined{TPSFmathscale} +{\let\TPSFmathscale\@undefined\let\mathscale@TPSF\empty} +{\def\mathscale@TPSF{[\TPSFmathscale]}} + +\@ifundefined{TPSFeulerscale} +{\let\TPSFeulerscale\@undefined\let\eulerscale@TPSF\empty} +{\def\eulerscale@TPSF{[\TPSFeulerscale]}} + +\@ifundefined{TPSFcmbrscale} +{\let\TPSFcmbrscale\@undefined\let\cmbrscale@TPSF\empty} +{\def\cmbrscale@TPSF{[\TPSFcmbrscale]}} + +\@ifundefined{TPSFttscale} +{\let\TPSFttscale\@undefined\let\ttscale@TPSF\empty} +{\def\ttscale@TPSF{[\TPSFttscale]}} +% \end{macrocode} +% +% As mentioned above, the ``scaleup...'' options make sense really only if lcmss +% text fonts are used. Otherwise, we give a warning. +% \begin{macrocode} +\ifthenelse{\boolean{TPSFscaleup}\and\not\equal{\TPSFTextfont}{lcmss}} +{% + \PackageWarning{tpslifonts} + {Using the ``scaleup'' Options makes sense only\MessageBreak + when lcmss text fonts are used.\MessageBreak + Watch closely whether the results of scaling math\MessageBreak + and/or typewriter fonts together with ``\TPSFTextfont''\MessageBreak + text fonts is what you intended to achieve.% + }% +} +{} +% \end{macrocode} +% +% We need to set the math operator font corresponing to the settings of the +% TPSFtextops switch, the text and math fonts. +% \begin{macrocode} +\ifthenelse{\boolean{TPSFtextops}} +{\let\TPSFOperatorfont\TPSFTextfont} +{% + \expandafter\let\expandafter\TPSFOperatorfont + \csname TPSFOpF@\TPSFMathfont\endcsname +} +% \end{macrocode} +% +% The cmbright package also sets text fonts, so if cmbright math is requested, +% we load the cmbright package first and later overwrite the text font settings +% (if no cmbright text fonts were requested). +% \begin{macrocode} +\ifthenelse{\equal{\TPSFMathfont}{cmbrm}} +{% + \RequirePackage[standard-baselineskips]{cmbright}% +} +% \end{macrocode} +% +% \subsection{Font shape configuration} + +% We need a couple of macros to help in configuring fonts. +% To increase readability in presentations, design size selection is +% restricted. Without any options, the largest design size used is 8pt. The +% options scale5pt ... scale7pt impose further constraints. +% Another restriction is caused by the availability of design sizes. Not all +% fonts exist in all design sizes. If no design size exists at all in the +% requested range (i.e. the font exists only in size 10), then the smallest +% available size has to be chosen no matter what. + +% |\FilterSizes@TPSF<name>{<list>}| filters out all sizes (represented as +% nonnegative integer numbers) from the comma-separated <list> which are above +% the threshold in |\TPSFMaxDesignSize| and stores the result in the macro +% <name>. To avoid inconsistencies if all sizes exceed |\TPSFMaxDesignSize|, the +% first size is always passed. +% \begin{macrocode} +\newcommand{\FilterSizes@TPSF}[2]{\expandafter\@FilterSizes@TPSF#2,\@nil#1} + +\def\@FilterSizes@TPSF#1,#2\@nil#3% +{% + \def#3{#1}% + \ifx\empty#2\empty\else\@@FilterSizes@TPSF#2\@nil#3\fi +} + +\def\@@FilterSizes@TPSF#1,#2\@nil#3% +{% + \ifnum#1>\TPSFMaxDesignSize\relax + \else + \expandafter\def\expandafter#3\expandafter{#3,#1}% + \ifx\empty#2\empty\else\@@FilterSizes@TPSF#2\@nil#3\fi + \fi +} +% \end{macrocode} +% \begin{macro}{\DeclareFontShape@TPSF} +% |\DeclareFontShape@TPSF[<scale>]|\\ +% | {<enc>}{<fam>}{<ser>}{<shp>}{<name>}{<sizes>}| +% declares a font with presentation-friendly design size selection (which +% means all design sizes above |\TPSFMaxDesignSize| are filtered out. The actually +% existing design sizes have to be provided in |<sizes>| as a comma-separated list +% of numbers. If |<s>| is one of the sizes, it is expected that the corresponding +% font name can be constructed as |<name><s>|. +% If the optional argument |<scale>| is given, it has to be of the form +% |[<factor>]|, where |<factor>| specifies the scaling of the font (see the +% options ``scaleupmath'' and ``scaleuptt'' above). +% \begin{macrocode} +\newcommand{\DeclareFontShape@TPSF}[7][] +{% + \FilterSizes@TPSF\sizes@TPSF{#7}% + \let\sizedecl@TPSF\empty + \def\fontname@TPSF{#6}% + \def\scale@TPSF{#1}% + \expandafter\parsesizes@TPSF\sizes@TPSF,,\@nil + \DeclareFontShape{#2}{#3}{#4}{#5}{\sizedecl@TPSF}{}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + +\def\parsesizes@TPSF#1,#2\@nil +{% + \let\prevsize@TPSF\empty + \def\currsize@TPSF{#1}% + \@parsesizes@TPSF#2\@nil +} + +\def\@parsesizes@TPSF#1,#2\@nil +{% + \edef\sizedecl@TPSF{\sizedecl@TPSF\space<\prevsize@TPSF-#1>s*\scale@TPSF \fontname@TPSF\currsize@TPSF}% + \def\currsize@TPSF{#1}% + \let\prevsize@TPSF\currsize@TPSF + \ifx\currsize@TPSF\empty\else\@parsesizes@TPSF#2\@nil\fi +} +% \end{macrocode} +% +% \subsection{Declaration of font shapes} +% +% The following is copied more or less verbatim from type1cm.sty, +% type1ec.sty, and other sources of font definitions for e.g. cmbright fonts. +% For fonts following the usual naming conventions, we use +% |\DeclareFontShape@TPSF| instead of |\DeclareFontShape| to implement design size +% bounding. +% For T1 ec fonts, the same is achieved by appropriate redefinition of +% |\EC@family|. +% \begin{macrocode} +\begingroup +\nfss@catcodes +% \end{macrocode} +% +% \subsubsection{Text fonts for OT1 encoding} +% +% computer modern roman. +% \begin{macrocode} +\DeclareFontFamily{OT1}{cmr}{\hyphenchar\font=45} + +\DeclareFontShape@TPSF{OT1}{cmr}{m}{n}{cmr}{5,6,7,8,9,10,12,17} + +\DeclareFontShape@TPSF{OT1}{cmr}{m}{sl}{cmsl}{8,9,10,12} + +\DeclareFontShape@TPSF{OT1}{cmr}{m}{it}{cmti}{7,8,9,10,12} + +\DeclareFontShape@TPSF{OT1}{cmr}{m}{sc}{cmcsc}{9,10} + +\DeclareFontShape@TPSF{OT1}{cmr}{m}{ui}{cmu}{10} + +\DeclareFontShape@TPSF{OT1}{cmr}{b}{n}{cmb}{10} + +\DeclareFontShape@TPSF{OT1}{cmr}{bx}{n}{cmbx}{5,6,7,8,9,10,12} + +\DeclareFontShape@TPSF{OT1}{cmr}{bx}{sl}{cmbxsl}{10} + +\DeclareFontShape@TPSF{OT1}{cmr}{bx}{it}{cmbxti}{10} + +\DeclareFontShape{OT1}{cmr}{bx}{ui} + {<->ssub * cmr/m/ui}{} + +\DeclareFontFamily{OT1}{cmfr}{\hyphenchar\font=45} + +\DeclareFontShape{OT1}{cmfr}{m}{n}{% + <->s* cmff10 + }{} +\DeclareFontShape{OT1}{cmfr}{m}{it}{ + <->s* cmfi10 + }{} + +\DeclareFontFamily{OT1}{cmdh}{\hyphenchar\font=45} + +\DeclareFontShape{OT1}{cmdh}{m}{n}{ + <->s* cmdunh10 + }{} + +\DeclareFontFamily{OT1}{cmfib}{\hyphenchar\font=45} + +\DeclareFontShape{OT1}{cmfib}{m}{n}{ + <->s* cmfib8 + }{} + +\DeclareFontShape{OT1}{cmfib}{m}{sl} + {<->ssub * cmr/m/sl}{} + +\DeclareFontShape{OT1}{cmfib}{m}{it} + {<->ssub * cmr/m/it}{} + +\DeclareFontShape{OT1}{cmfib}{m}{sc} + {<->ssub * cmr/m/sc}{} + +\DeclareFontShape{OT1}{cmfib}{m}{ui} + {<->ssub * cmr/m/ui}{} + +\DeclareFontShape{OT1}{cmfib}{b}{n} + {<->ssub * cmr/b/n}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{n} + {<->ssub * cmr/bx/n}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{sl} + {<->ssub * cmr/bx/sl}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{it} + {<->ssub * cmr/bx/it}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{ui} + {<->ssub * cmr/m/ui}{} +% \end{macrocode} +% computer modern sans serif. +% \begin{macrocode} +\DeclareFontFamily{OT1}{cmss}{\hyphenchar\font=45} + +\DeclareFontShape@TPSF{OT1}{cmss}{m}{n}{cmss}{8,9,10,12,17} + +\DeclareFontShape{OT1}{cmss}{m}{it} + {<->sub*cmss/m/sl}{} + +\DeclareFontShape@TPSF{OT1}{cmss}{m}{sl}{cmssi}{8,9,10,12,17} + +\DeclareFontShape{OT1}{cmss}{m}{sc} + {<->sub*cmr/m/sc}{} + +\DeclareFontShape{OT1}{cmss}{m}{ui} + {<->sub*cmr/m/ui}{} + +\DeclareFontShape@TPSF{OT1}{cmss}{sbc}{n}{cmssdc}{10} + +\DeclareFontShape@TPSF{OT1}{cmss}{bx}{n}{cmssbx}{10} + +\DeclareFontShape{OT1}{cmss}{bx}{ui} + {<->sub*cmr/bx/ui}{} +% \end{macrocode} +% slide computer modern sans serif. +% \begin{macrocode} +\DeclareFontFamily{OT1}{lcmss}{\hyphenchar\font45 } + +\DeclareFontShape@TPSF{OT1}{lcmss}{m}{n}{lcmss}{8} + +\DeclareFontShape@TPSF{OT1}{lcmss}{m}{In}{ilcmss}{8} + +\DeclareFontShape@TPSF{OT1}{lcmss}{m}{sl}{lcmssi}{8} + +\DeclareFontShape@TPSF{OT1}{lcmss}{m}{Isl}{ilcmssi}{8} + +\DeclareFontShape{OT1}{lcmss}{m}{it}{% + <->sub*lcmss/m/sl}{} + +\DeclareFontShape{OT1}{lcmss}{m}{Iit}{% + <->sub*lcmss/m/Isl}{} + +\DeclareFontShape@TPSF{OT1}{lcmss}{b}{n}{lcmssb}{8} + +\DeclareFontShape@TPSF{OT1}{lcmss}{b}{In}{ilcmssb}{8} + +\DeclareFontShape{OT1}{lcmss}{bx}{n}{% + <->sub*lcmss/b/n}{} + +\DeclareFontShape{OT1}{lcmss}{bx}{In}{% + <->sub*lcmss/b/In}{} + +\DeclareFontShape{OT1}{lcmss}{m}{ui}{% + <->sub*cmr/m/ui}{} + +\DeclareFontShape{OT1}{lcmss}{bx}{ui}{% + <->sub*cmr/m/ui}{} +% \end{macrocode} +% computer modern bright +% \begin{macrocode} +\DeclareFontFamily{OT1}{cmbr}{\hyphenchar\font45} + +\DeclareFontShape@TPSF{OT1}{cmbr}{m}{n}{cmbr}{8,9,10,17} + +\DeclareFontShape@TPSF{OT1}{cmbr}{m}{sl}{cmbrsl}{8,9,10,17} + +\DeclareFontShape{OT1}{cmbr}{m}{it}{% +<->ssub*cmbr/m/sl% +}{} + +\DeclareFontShape{OT1}{cmbr}{b}{n}{% +<->ssub*cmbr/bx/n% +}{} + +\DeclareFontShape@TPSF{OT1}{cmbr}{bx}{n}{cmbrbx}{10} +% \end{macrocode} +% concrete roman +% \begin{macrocode} +\DeclareFontFamily{OT1}{ccr}{\hyphenchar\font45 } + +\DeclareFontShape@TPSF{OT1}{ccr}{m}{n}{ccr}{5,6,7,8,9,10} + +\DeclareFontShape@TPSF{OT1}{ccr}{m}{sl}{ccsl}{9,10} + +\DeclareFontShape@TPSF{OT1}{ccr}{m}{it}{ccti}{10} + +\DeclareFontShape@TPSF{OT1}{ccr}{m}{sc}{cccsc}{10} + +\DeclareFontShape{OT1}{ccr}{bx}{n} {<-> ssub * cmss/bx/n}{} +\DeclareFontShape{OT1}{ccr}{bx}{sl}{<-> ssub * cmss/bx/sl}{} +\DeclareFontShape{OT1}{ccr}{bx}{it}{<-> ssub * cmss/bx/it}{} +% \DeclareFontShape{OT1}{ccr}{bx}{n} {<-> ssub * cmr/bx/n}{} +% \DeclareFontShape{OT1}{ccr}{bx}{sl}{<-> ssub * cmr/bx/sl}{} +% \DeclareFontShape{OT1}{ccr}{bx}{it}{<-> ssub * cmr/bx/it}{} +\DeclareFontShape{OT1}{ccr}{sbc}{n} {<-> ssub * cmss/sbc/n}{} +\DeclareFontShape{OT1}{ccr}{sbc}{sl}{<-> ssub * cmss/sbc/n}{} +\DeclareFontShape{OT1}{ccr}{sbc}{it}{<-> ssub * cmss/sbc/n}{} + +\DeclareFontShape@TPSF{OT1}{ccr}{c}{sl}{ccslc}{9} +% \end{macrocode} +% +% \subsubsection{Text fonts for T1 encoding} +% +% \begin{macrocode} +\let\ecscale@TPSF\empty + +\ifcase\TPSFMaxDesignSize + \or\or\or\or\or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <->s*\ecscale@TPSF#50500% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6->s*\ecscale@TPSF#50600% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7->s*\ecscale@TPSF#50700% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8->s*\ecscale@TPSF#50800% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9->s*\ecscale@TPSF#50900% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9-10>s*\ecscale@TPSF#50900% + <10->s*\ecscale@TPSF#51000% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9-10>s*\ecscale@TPSF#50900% + <10-10.95>s*\ecscale@TPSF#51000% + <10.95->s*\ecscale@TPSF#51095% + }{}} + \or + \providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9-10>s*\ecscale@TPSF#50900% + <10-10.95>s*\ecscale@TPSF#51000% + <10.95-12>s*\ecscale@TPSF#51095% + <12->s*\ecscale@TPSF#51200% + }{}} +\fi +% \end{macrocode} +% european computer modern roman. +% \begin{macrocode} +\input{t1cmr.fd} + +\input{t1cmfr.fd} + +\input{t1cmdh.fd} + +\input{t1cmfib.fd} + +\DeclareFontShape{T1}{cmfib}{m}{it} + {<->ssub * cmr/m/it}{} + +\DeclareFontShape{T1}{cmfib}{m}{sc} + {<->ssub * cmr/m/sc}{} + +\DeclareFontShape{T1}{cmfib}{m}{ui} + {<->ssub * cmr/m/ui}{} + +\DeclareFontShape{T1}{cmfib}{b}{n} + {<->ssub * cmr/b/n}{} + +\DeclareFontShape{T1}{cmfib}{bx}{n} + {<->ssub * cmr/bx/n}{} + +\DeclareFontShape{T1}{cmfib}{bx}{sl} + {<->ssub * cmr/bx/sl}{} + +\DeclareFontShape{T1}{cmfib}{bx}{it} + {<->ssub * cmr/bx/it}{} + +\DeclareFontShape{T1}{cmfib}{bx}{ui} + {<->ssub * cmr/m/ui}{} +% \end{macrocode} +% european computer modern roman sans serif. +% \begin{macrocode} +\input{t1cmss.fd} + +\DeclareFontShape@TPSF{T1}{cmss}{sbc}{n}{ecssdc}{10} +% \end{macrocode} +% european slide computer modern sans serif. +% \begin{macrocode} +\DeclareFontFamily{T1}{lcmss}{} +\DeclareFontShape@TPSF{T1}{lcmss}{m}{n}{eclq}{8} + +\DeclareFontShape@TPSF{T1}{lcmss}{m}{In}{ieclq}{8} + +\DeclareFontShape@TPSF{T1}{lcmss}{m}{sl}{ecli}{8} + +\DeclareFontShape@TPSF{T1}{lcmss}{m}{Isl}{iecli}{8} + +\DeclareFontShape{T1}{lcmss}{m}{it}{% + <->sub*lcmss/m/sl}{} + +\DeclareFontShape{T1}{lcmss}{m}{Iit}{% + <->sub*lcmss/m/Isl}{} + +\DeclareFontShape@TPSF{T1}{lcmss}{bx}{n}{eclb}{8} + +\DeclareFontShape@TPSF{T1}{lcmss}{bx}{In}{ieclb}{8} + +\DeclareFontShape@TPSF{T1}{lcmss}{bx}{sl}{eclo}{8} + +\DeclareFontShape@TPSF{T1}{lcmss}{bx}{Isl}{ieclo}{8} + +\DeclareFontShape{T1}{lcmss}{bx}{it}{% + <->sub*lcmss/bx/sl}{} + +\DeclareFontShape{T1}{lcmss}{bx}{Iit}{% + <->sub*lcmss/bx/Isl}{} + +\DeclareFontShape{T1}{lcmss}{b}{n}{% + <->sub*lcmss/bx/n}{} + +\DeclareFontShape{T1}{lcmss}{m}{ui}{% + <->sub*cmr/m/ui}{} + +\DeclareFontShape{T1}{lcmss}{bx}{ui}{% + <->sub*cmr/m/ui}{} +% \end{macrocode} +% european computer modern bright +% \begin{macrocode} +\DeclareFontFamily{T1}{cmbr}{} + +\DeclareFontShape@TPSF{T1}{cmbr}{m}{n}{ebmr}{8,9,10,17} + +\DeclareFontShape@TPSF{T1}{cmbr}{m}{sl}{ebmo}{8,9,10,17} + +\DeclareFontShape{T1}{cmbr}{m}{it}{% +<->ssub*cmbr/m/sl% +}{} + +\DeclareFontShape@TPSF{T1}{cmbr}{sb}{n}{ebsr}{8,9,10,17} + +\DeclareFontShape@TPSF{T1}{cmbr}{sb}{sl}{ebso}{8,9,10,17} + +\DeclareFontShape{T1}{cmbr}{sb}{it}{% +<->ssub*cmbr/sb/sl% +}{} + +\DeclareFontShape{T1}{cmbr}{b}{n}{% +<->ssub*cmbr/bx/n% +}{} + +\DeclareFontShape{T1}{cmbr}{bx}{n}{% +<->sub*cmbr/sb/n% +}{} +% \end{macrocode} +% european concrete roman +% \begin{macrocode} +\DeclareFontFamily{T1}{ccr}{} + +\DeclareFontShape@TPSF{T1}{ccr}{m}{n}{eorm}{5,6,7,8,9,10} + +\DeclareFontShape@TPSF{T1}{ccr}{m}{sl}{eosl}{5,6,7,8,9,10} + +\DeclareFontShape@TPSF{T1}{ccr}{m}{it}{eoti}{10} + +\DeclareFontShape@TPSF{T1}{ccr}{m}{sc}{eocc}{10} + +\DeclareFontShape{T1}{ccr}{bx}{n}{% +<->ssub*cmss/bx/n}{} + +\DeclareFontShape{T1}{ccr}{bx}{sl}{% +<->ssub*cmss/bx/sl}{} + +\DeclareFontShape{T1}{ccr}{bx}{it}{% +<->ssub*cmss/bx/it}{} + +% \DeclareFontShape{T1}{ccr}{bx}{n}{% +% <->ssub*cmr/bx/n}{} + +% \DeclareFontShape{T1}{ccr}{bx}{sl}{% +% <->ssub*cmr/bx/sl}{} + +% \DeclareFontShape{T1}{ccr}{bx}{it}{% +% <->ssub*cmr/bx/it}{} + +\DeclareFontShape{T1}{ccr}{sbc}{n}{% + <->ssubf*ecssdc10}{} +% \end{macrocode} +% +% \subsection{Typewriter fonts for OT1 encoding} +% +% computer modern typewriter. +% \begin{macrocode} +\DeclareFontFamily{OT1}{cmtt}{\hyphenchar\font\m@ne} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{cmtt}{m}{n}{cmtt}{8,9,10,12} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{cmtt}{m}{it}{cmitt}{10} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{cmtt}{m}{sl}{cmsltt}{10} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{cmtt}{m}{sc}{cmtcsc}{10} + +\DeclareFontShape{OT1}{cmtt}{m}{ui} + {<->sub * cmtt/m/it}{} + +\DeclareFontShape{OT1}{cmtt}{bx}{n} + {<->sub * cmtt/m/n}{} + +\DeclareFontShape{OT1}{cmtt}{bx}{it} + {<->sub * cmtt/m/it}{} + +\DeclareFontShape{OT1}{cmtt}{bx}{ui} + {<->sub * cmtt/m/it}{} +% \end{macrocode} +% `Slides' computer modern typewriter exists only for compatibility with T1 +% encoding. +% \begin{macrocode} +\DeclareFontFamily{OT1}{lcmtt}{\hyphenchar\font\m@ne} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{lcmtt}{m}{n}{cmtt}{8,9,10,12} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{lcmtt}{m}{it}{cmitt}{10} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{lcmtt}{m}{sl}{cmsltt}{10} + +\DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{lcmtt}{m}{sc}{cmtcsc}{10} + +\DeclareFontShape{OT1}{lcmtt}{m}{ui} + {<->sub * lcmtt/m/it}{} + +\DeclareFontShape{OT1}{lcmtt}{bx}{n} + {<->sub * lcmtt/m/n}{} + +\DeclareFontShape{OT1}{lcmtt}{bx}{it} + {<->sub * lcmtt/m/it}{} + +\DeclareFontShape{OT1}{lcmtt}{bx}{ui} + {<->sub * lcmtt/m/it}{} +% \end{macrocode} +% computer modern typewriter light. +% \begin{macrocode} +\DeclareFontFamily{OT1}{cmtl}{\hyphenchar\font\m@ne} + +\DeclareFontShape{OT1}{cmtl}{m}{n}{% +<->s*\ttscale@TPSF cmtl10% +}{} + +\DeclareFontShape{OT1}{cmtl}{m}{sl}{% +<->s*\ttscale@TPSF cmsltl10% +}{} + +\DeclareFontShape{OT1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} +% \end{macrocode} +% +% \subsection{Typewriter fonts for T1 encoding} +% +% \begin{macrocode} +\ifcase\TPSFMaxDesignSize + \or\or\or\or\or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <->s*\ttscale@TPSF#50800% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <->s*\ttscale@TPSF#50800% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <->s*\ttscale@TPSF#50800% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <->s*\ttscale@TPSF#50800% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-9>s*\ttscale@TPSF#50800% + <9->s*\ttscale@TPSF#50900% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-9>s*\ttscale@TPSF#50800% + <9-10>s*\ttscale@TPSF#50900% + <10->s*\ttscale@TPSF#51000% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-9>s*\ttscale@TPSF#50800% + <9-10>s*\ttscale@TPSF#50900% + <10-10.95>s*\ttscale@TPSF#51000% + <10.95->s*\ttscale@TPSF#51095% + }{}} + \or + \providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}{% + <-9>s*\ttscale@TPSF#50800% + <9-10>s*\ttscale@TPSF#50900% + <10-10.95>s*\ttscale@TPSF#51000% + <10.95-12>s*\ttscale@TPSF#51095% + <12->s*\ttscale@TPSF#51200% + }{}} +\fi +% \end{macrocode} +% european computer modern typewriter. +% \begin{macrocode} +\input{t1cmtt.fd} +% \end{macrocode} +% european `Slides' computer modern typewriter. There exists \textbf{one} dedicated +% font ``ecltt8'' for this setup. +% \begin{macrocode} +\DeclareFontFamily{T1}{lcmtt}{\hyphenchar\font\m@ne} + +\DeclareFontShape{T1}{lcmtt}{m}{n}{% + <->s*\ttscale@TPSF ecltt8% +}{} + +\DeclareFontShape{T1}{lcmtt}{m}{In}{% + <->s*\ttscale@TPSF iecltt8% +}{} + +\DeclareFontShape{T1}{lcmtt}{m}{it}{% + <->s*\ttscale@TPSF ecit0800% +}{} + +\DeclareFontShape{T1}{lcmtt}{m}{sl}{ + <->s*\ttscale@TPSF ecst0800 +}{} + +\DeclareFontShape{T1}{lcmtt}{m}{sc}{ + <->s*\ttscale@TPSF ectc0800 +}{} + +\DeclareFontShape{T1}{lcmtt}{m}{ui} +{<->sub * lcmtt/m/it}{} + +\DeclareFontShape{T1}{lcmtt}{bx}{n} +{<->sub * lcmtt/m/n}{} + +\DeclareFontShape{T1}{lcmtt}{bx}{it} +{<->sub * lcmtt/m/it}{} + +\DeclareFontShape{T1}{lcmtt}{bx}{ui} +{<->sub * lcmtt/m/it}{} +% \end{macrocode} +% european computer modern typewriter light. +% \begin{macrocode} +\DeclareFontFamily{T1}{cmtl}{\hyphenchar\font\m@ne} + +\DeclareFontShape{T1}{cmtl}{m}{n}{% +<->s*\ttscale@TPSF ebtl10% +}{} + +\DeclareFontShape{T1}{cmtl}{m}{sl}{% +<->s*\ttscale@TPSF ebto10% +}{} + +\DeclareFontShape{T1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} +% \end{macrocode} +% +% \subsection{Typewriter fonts for mTT encoding} +% +% Used by cmtt.sty. +% \begin{macrocode} +\@ifundefined{T@mTT}{} +{% + \DeclareFontFamily{mTT}{cmtt}{\hyphenchar\font\m@ne} + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{n}{cmtt}{8,9,10,12} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{it}{cmitt}{10} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{sl}{cmsltt}{10} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{sc}{cmtcsc}{10} + + \DeclareFontShape{mTT}{cmtt}{m}{ui} + {<->sub * cmtt/m/it}{} + + \DeclareFontShape{mTT}{cmtt}{bx}{n} + {<->sub * cmtt/m/n}{} + + \DeclareFontShape{mTT}{cmtt}{bx}{it} + {<->sub * cmtt/m/it}{} + + \DeclareFontShape{mTT}{cmtt}{bx}{ui} + {<->sub * cmtt/m/it}{} + + \DeclareFontFamily{mTT}{lcmtt}{\hyphenchar\font\m@ne} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{n}{cmtt}{8,9,10,12} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{it}{cmitt}{10} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{sl}{cmsltt}{10} + + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{sc}{cmtcsc}{10} + + \DeclareFontShape{mTT}{lcmtt}{m}{ui} + {<->sub * lcmtt/m/it}{} + + \DeclareFontShape{mTT}{lcmtt}{bx}{n} + {<->sub * lcmtt/m/n}{} + + \DeclareFontShape{mTT}{lcmtt}{bx}{it} + {<->sub * lcmtt/m/it}{} + + \DeclareFontShape{mTT}{lcmtt}{bx}{ui} + {<->sub * lcmtt/m/it}{} + + \DeclareFontFamily{mTT}{cmtl}{\hyphenchar\font\m@ne} + + \DeclareFontShape{mTT}{cmtl}{m}{n}{% + <->s*\ttscale@TPSF cmtl10% + }{} + + \DeclareFontShape{mTT}{cmtl}{m}{sl}{% + <->s*\ttscale@TPSF cmsltl10% + }{} + + \DeclareFontShape{mTT}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} +} +% \end{macrocode} +% +% \subsection{Math fonts} +% +% computer modern math italic. +% \begin{macrocode} +\DeclareFontFamily{OML}{cmm}{\skewchar\font127} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OML}{cmm}{m}{it}{cmmi}{5,6,7,8,9,10,12} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OML}{cmm}{m}{Iit}{icmmi}{8} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OML}{cmm}{b}{it}{cmmib}{5,7,10} + +\DeclareFontShape{OML}{cmm}{bx}{it}% + {<->ssub*cmm/b/it}{} + +\DeclareFontFamily{OML}{cmr}{\skewchar\font127 } +\DeclareFontShape{OML}{cmr}{m}{n} + {<-> ssub * cmm/m/it}{} +\DeclareFontShape{OML}{cmr}{m}{it} + {<-> ssub * cmm/m/it}{} +\DeclareFontShape{OML}{cmr}{m}{sl} + {<-> ssub * cmm/m/it}{} +\DeclareFontShape{OML}{cmr}{m}{sc} + {<-> ssub * cmm/m/it}{} +\DeclareFontShape{OML}{cmr}{bx}{n} + {<-> ssub * cmm/b/it}{} +\DeclareFontShape{OML}{cmr}{bx}{it} + {<-> ssub * cmm/b/it}{} +\DeclareFontShape{OML}{cmr}{bx}{sl} + {<-> ssub * cmm/b/it}{} +\DeclareFontShape{OML}{cmr}{bx}{sc} + {<-> ssub * cmm/b/it}{} + +\DeclareFontFamily{OT1}{cmrm}{\hyphenchar\font=45} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OT1}{cmrm}{m}{n}{cmr}{5,6,7,8,9,10,12,17} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OT1}{cmrm}{m}{it}{cmti}{7,8,9,10,12} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OT1}{cmrm}{bx}{n}{cmbx}{5,6,7,8,9,10,12} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OT1}{cmrm}{bx}{it}{cmbxti}{10} + +{% +\let\ecscale@TPSF\mathscale@TPSF + +\DeclareFontFamily{T1}{cmrm}{} + +\EC@family{T1}{cmrm}{m}{n}{ecrm} + +\EC@family{T1}{cmrm}{m}{it}{ecti} + +\EC@family{T1}{cmrm}{bx}{n}{ecbx} + +\EC@family{T1}{cmrm}{bx}{it}{ecbi} +} + +\DeclareFontFamily{OMS}{cmsy}{\skewchar\font48} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OMS}{cmsy}{m}{n}{cmsy}{5,6,7,8,9,10} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OMS}{cmsy}{b}{n}{cmbsy}{5,7,10} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OMS}{cmsy}{m}{In}{icmsy}{8} + +\DeclareFontFamily{OMS}{cmr}{\skewchar\font48 } +\DeclareFontShape{OMS}{cmr}{m}{n} + {<-> ssub * cmsy/m/n}{} +\DeclareFontShape{OMS}{cmr}{m}{it} + {<-> ssub * cmsy/m/n}{} +\DeclareFontShape{OMS}{cmr}{m}{sl} + {<-> ssub * cmsy/m/n}{} +\DeclareFontShape{OMS}{cmr}{m}{sc} + {<-> ssub * cmsy/m/n}{} +\DeclareFontShape{OMS}{cmr}{bx}{n} + {<-> ssub * cmsy/b/n}{} +\DeclareFontShape{OMS}{cmr}{bx}{it} + {<-> ssub * cmsy/b/n}{} +\DeclareFontShape{OMS}{cmr}{bx}{sl} + {<-> ssub * cmsy/b/n}{} +\DeclareFontShape{OMS}{cmr}{bx}{sc} + {<-> ssub * cmsy/b/n}{} + +\DeclareFontFamily{OMX}{cmex}{} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OMX}{cmex}{m}{n}{cmex}{7,10} +% \end{macrocode} +% Euler fonts (eulervm style). +% \begin{macrocode} +\DeclareFontFamily{U}{zeur}{\skewchar \font =127} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{zeur}{m}{n}{zeurm}{5,7,10} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{zeur}{b}{n}{zeurb}{5,7,10} + +\DeclareFontShape{U}{zeur}{bx}{n}{<->ssub * zeur/b/n}{} + +\DeclareFontFamily{U}{zeus}{\skewchar \font =176} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{zeus}{m}{n}{zeusm}{5,7,10} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{zeus}{b}{n}{zeusb}{5,7,10} + +\DeclareFontShape{U}{zeus}{bx}{n}{<->ssub * zeus/b/n}{} + +\DeclareFontFamily{U}{zeuex}{} + +\DeclareFontShape{U}{zeuex}{m}{n}{ + <->s* \eulerscale@TPSF zeuex10 +}{} +% \end{macrocode} +% computer modern bright math slanted. +% \begin{macrocode} +\DeclareFontFamily{OML}{cmbrm}{\skewchar\font 127} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{OML}{cmbrm}{m}{it}{cmbrmi}{8,9,10} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{OML}{cmbrm}{b}{it}{cmbrmb}{10} + +\DeclareFontFamily{OML}{cmbr}{\skewchar\font 127} + +\DeclareFontShape{OML}{cmbr}{m}{it}{<->ssub*cmbrm/m/it}{} + +\DeclareFontShape{OML}{cmbr}{sb}{it}{<->ssub*cmbrm/b/it}{} + +\DeclareFontShape{OML}{cmbr}{bx}{it}{<->ssub*cmbrm/b/it}{} + +\DeclareFontFamily{OT1}{cmbrmt}{\hyphenchar\font45} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{OT1}{cmbrmt}{m}{n}{cmbr}{8,9,10,17} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{OT1}{cmbrmt}{m}{sl}{cmbrsl}{8,9,10,17} + +\DeclareFontShape{OT1}{cmbrmt}{m}{it}{% +<->ssub*cmbrmt/m/sl% +}{} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{OT1}{cmbrmt}{bx}{n}{cmbrbx}{10} + +\DeclareFontFamily{T1}{cmbrmt}{} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{T1}{cmbrmt}{m}{n}{ebmr}{8,9,10,17} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{T1}{cmbrmt}{m}{sl}{ebmo}{8,9,10,17} + +\DeclareFontShape{T1}{cmbrmt}{m}{it}{% +<->ssub*cmbrmt/m/sl% +}{} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{T1}{cmbrmt}{sb}{n}{ebsr}{8,9,10,17} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{T1}{cmbrmt}{sb}{sl}{ebso}{8,9,10,17} + +\DeclareFontShape{T1}{cmbrmt}{sb}{it}{% +<->ssub*cmbrmt/sb/sl% +}{} + +\DeclareFontShape{T1}{cmbrmt}{bx}{n}{% +<->sub*cmbrmt/sb/n% +}{} + +\DeclareFontShape{T1}{cmbrmt}{bx}{it}{% +<->sub*cmbrmt/sb/it% +}{} + +\DeclareFontFamily{OMS}{cmbrs}{\skewchar\font 48} + +\DeclareFontShape@TPSF[\cmbrscale@TPSF]{OMS}{cmbrs}{m}{n}{cmbrsy}{8,9,10} + +\DeclareFontShape{OMS}{cmbrs}{m}{b}{<->ssub*cmbrs/m/n}{} + +\DeclareFontFamily{OMS}{cmbr}{\skewchar\font 48} + +\DeclareFontShape{OMS}{cmbr}{m}{n}{<->ssub*cmbrs/m/n}{} + +\DeclareFontShape{OMS}{cmbr}{m}{b}{<->ssub*cmbrs/m/n}{} +% \end{macrocode} +% Concrete Math Italic +% \begin{macrocode} +\DeclareFontFamily{OML}{ccm}{\skewchar\font127 } + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OML}{ccm}{m}{it}{xccmi}{5,6,7,8,9,10} + +\DeclareFontShape{OML}{ccm}{b}{it}{<-> ssub * cmm/b/it}{} + +\DeclareFontShape{OML}{ccm}{c}{it}{<9>\mathscale@TPSF ccmic9}{} + +\DeclareFontFamily{OML}{ccr}{\skewchar\font127 } + +\DeclareFontShape{OML}{ccr}{m}{it} {<->ssub * ccm/m/it}{} + +\DeclareFontShape{OML}{ccr}{bx}{it} {<->ssub * ccm/b/it}{} + +\DeclareFontShape{OML}{ccr}{sbc}{it}{<->ssub * ccm/m/it}{} + +\DeclareFontFamily{OMS}{ccsy}{\skewchar\font48 } + +\DeclareFontShape@TPSF[\mathscale@TPSF]{OMS}{ccsy}{m}{n}{xccsy}{5,6,7,8,9,10} + +\DeclareFontShape{OMS}{ccsy}{b}{n}{<-> ssub * cmsy/b/n}{} + +\DeclareFontFamily{OMS}{ccr}{\skewchar\font48 } + +\DeclareFontShape{OMS}{ccr}{m}{n} {<->ssub * ccsy/m/n}{} + +\DeclareFontShape{OMS}{ccr}{bx}{n} {<->ssub * ccsy/b/n}{} + +\DeclareFontShape{OMS}{ccr}{sbc}{n}{<->ssub * ccsy/m/n}{} + +\DeclareFontFamily{OMX}{ccex}{} + +\DeclareFontShape{OMX}{ccex}{m}{n}{<->s*\mathscale@TPSF xccex10}{} +% \end{macrocode} +% LaTeX symbols +% \begin{macrocode} +\DeclareFontFamily{U}{lasy}{} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{U}{lasy}{m}{n}{lasy}{5,6,7,8,9,10} + +\DeclareFontShape{U}{lasy}{b}{n}{ + <->s* \mathscale@TPSF lasyb10 + }{} +% \end{macrocode} +% AMS fonts +% \begin{macrocode} +\DeclareFontFamily{U}{msa}{} + +\DeclareFontFamily{U}{msb}{} + +\ifthenelse{\equal{\TPSFMathfont}{cmbrm}} +{% +% \end{macrocode} +% AMS fonts should be available immediately, so they can be used in say panels. +% \begin{macrocode} + \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msa}{m}{n}{cmbras}{8,9,10}% + \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msb}{m}{n}{cmbrbs}{8,9,10}% +% \end{macrocode} +% On the other hand, the cmbright package redeclares them |\AtBeginDocument|, so +% we need to overwrite that change as well. +% \begin{macrocode} + \AtBeginDocument + {% + \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msa}{m}{n}{cmbras}{8,9,10}% + \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msb}{m}{n}{cmbrbs}{8,9,10}% + }% +} +{% + \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{msa}{m}{n}{msam}{5,7,10} + + \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{msb}{m}{n}{msbm}{5,7,10} +} + +\DeclareFontFamily{U}{euex}{} + +\DeclareFontShape{U}{euex}{m}{n}{ + <->s* \eulerscale@TPSF euex10 + }{} + +\DeclareFontFamily{U}{euf}{} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{euf}{m}{n}{eufm}{5,7,10} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{euf}{b}{n}{eufb}{5,7,10} + +\DeclareFontFamily{U}{eur}{\skewchar\font'177} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{eur}{m}{n}{eurm}{5,7,10} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{eur}{b}{n}{eurb}{5,7,10} + +\DeclareFontFamily{U}{eus}{\skewchar\font'60} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{eus}{m}{n}{eusm}{5,7,10} + +\DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{eus}{b}{n}{eusb}{5,7,10} +% \end{macrocode} +% St Mary's Road symbol font. +% \begin{macrocode} +\DeclareFontFamily{U}{stmry}{} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{U}{stmry}{m}{n}{stmary}{5,6,7,8,9,10} +% \end{macrocode} +% Wasy symbol font. +% \begin{macrocode} +\DeclareFontFamily{U}{wasy}{} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{U}{wasy}{m}{n}{wasy}{5,6,7,8,9,10} + +\DeclareFontShape{U}{wasy}{b}{n} +{ <->s*\mathscale@TPSF wasyb10 +}{} +% \end{macrocode} +% formal script math symbols +% \begin{macrocode} +\DeclareFontFamily{U}{rsfs}{\skewchar\font127 } + +\DeclareFontShape@TPSF[\mathscale@TPSF]{U}{rsfs}{m}{n}{rsfs}{5,7,10} +% \end{macrocode} +% double stroke computer modern +% \begin{macrocode} +\DeclareFontFamily{U}{dsrom}{} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{U}{dsrom}{m}{n}{dsrom}{8,10,12} + +\DeclareFontFamily{U}{dsss}{} + +\DeclareFontShape@TPSF[\mathscale@TPSF]{U}{dsss}{m}{n}{dsss}{8,10,12} + +\endgroup +% \end{macrocode} + +% Just to make sure in case these have been defined before... +% \begin{macrocode} +\expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax +\expandafter\let\csname OT1/cmr/m/n/10.95\endcsname\relax +\expandafter\let\csname OT1/cmr/m/n/12\endcsname\relax +\expandafter\let\csname T1/cmr/m/n/10\endcsname\relax +\expandafter\let\csname T1/cmr/m/n/10.95\endcsname\relax +\expandafter\let\csname T1/cmr/m/n/12\endcsname\relax +% \end{macrocode} +% +% \subsection{Font shape selection} +% +% \subsubsection{Set text fonts} +% \begin{macrocode} +\newcommand{\setlcmssTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\sfdefault}% Main text font is sans serif. + \renewcommand{\sfdefault}{lcmss}% Choose lcmss as sans serif font. + \renewcommand{\ttdefault}{lcmtt}% Typewriter font lcmtt. +} + +\newcommand{\setcmrTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\rmdefault}% Main text font is roman. + \renewcommand{\rmdefault}{cmr}% Choose cmr as roman font. + \renewcommand{\ttdefault}{cmtt}% Typewriter font. +} + +\newcommand{\setcmfibTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\rmdefault}% Main text font is roman. + \renewcommand{\rmdefault}{cmfib}% Choose cmfib as roman font. + \renewcommand{\ttdefault}{cmtt}% Typewriter font. +} + +\newcommand{\setcmssTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\sfdefault}% Main text font is sans serif. + \renewcommand{\sfdefault}{cmss}% Choose cmss as sans serif font. + \renewcommand{\ttdefault}{cmtt}% Typewriter font. +} + +\newcommand{\setcmbrTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\sfdefault}% Main text font is sans serif. + \renewcommand{\sfdefault}{cmbr}% Choose cmss as sans serif font. + \renewcommand{\ttdefault}{cmtl}% Light Typewriter font. +} + +\newcommand{\setccrTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\rmdefault}% Main text font is roman. + \renewcommand{\rmdefault}{ccr}% Choose ccr as roman font. + \renewcommand{\ttdefault}{cmtt}% Typewriter font. +} + +\csname set\TPSFTextfont TextFonts@TPSF\endcsname +% \end{macrocode} +% +% \subsubsection{Configure Math fonts} +% +% \begin{macrocode} +\newcommand{\setcmmMathFonts@TPSF} +{% + \SetSymbolFont{letters} {normal}{OML}{cmm} {m}{it} + \SetSymbolFont{symbols} {normal}{OMS}{cmsy}{m}{n} + \SetSymbolFont{largesymbols}{normal}{OMX}{cmex}{m}{n} + \SetSymbolFont{letters} {bold} {OML}{cmm} {b}{it} + \SetSymbolFont{symbols} {bold} {OMS}{cmsy}{b}{n} +} + +\newcommand{\setccmMathFonts@TPSF} +{% + \SetSymbolFont{letters} {normal}{OML}{ccm} {m}{it} + \SetSymbolFont{symbols} {normal}{OMS}{ccsy}{m}{n} + \SetSymbolFont{largesymbols}{normal}{OMX}{ccex}{m}{n} + \SetSymbolFont{letters} {bold} {OML}{ccm} {b}{it} + \SetSymbolFont{symbols} {bold} {OMS}{ccsy}{b}{n} +} + +\newcommand{\seteulerMathFonts@TPSF} +{% + \RequirePackage{eulervm} + \def\tpc@ncel##1##2{\m@th\ooalign{$\hfil##1/\hfil$\crcr$##1##2$}} + \def\neq{\mathrel{\m@th\mathpalette\tpc@ncel=}} + \DeclareSymbolFont{auxletters}{OML}{cmm}{m}{it} + \SetSymbolFont{auxletters}{bold}{OML}{cmm}{b}{it} + \DeclareMathSymbol{<}{\mathrel}{auxletters}{"3C} + \DeclareMathSymbol{>}{\mathrel}{auxletters}{"3E} +} + +\newcommand{\setcmbrmMathFonts@TPSF} +{% + \SetSymbolFont{letters} {normal}{OML}{cmbrm} {m}{it} + \SetSymbolFont{symbols} {normal}{OMS}{cmbrs}{m}{n} + \SetSymbolFont{largesymbols}{normal}{OMX}{cmex}{m}{n} + \SetSymbolFont{letters} {bold} {OML}{cmbrm} {b}{it} + \SetSymbolFont{symbols} {bold}{OMS}{cmbrs}{b}{n} +} + +\csname set\TPSFMathfont MathFonts@TPSF\endcsname +% \end{macrocode} +% +% \subsubsection{Configure Operator fonts} +% +% \begin{macrocode} +\ifthenelse{\equal{\TPSFMathfont}{euler}} +{% + \SetSymbolFont{operators}{normal}{\encodingdefault}{\TPSFOperatorfont}{m}{n}% + \SetSymbolFont{operators}{bold}{\encodingdefault}{\TPSFOperatorfont}{bx}{n}% +} +{% + \SetSymbolFont{operators}{normal}{OT1}{\TPSFOperatorfont}{m}{n}% + \SetSymbolFont{operators}{bold}{OT1}{\TPSFOperatorfont}{bx}{n}% +} +% \end{macrocode} +% +% \subsubsection{Alphabets for ``text inside math''} +% +% \begin{macrocode} +\DeclareMathAlphabet {\mathbf}{\encodingdefault}{\TPSFOperatorfont}{bx}{n} +\DeclareMathAlphabet {\mathsf}{\encodingdefault}{\sfdefault}{m}{n} +\DeclareMathAlphabet {\mathit}{\encodingdefault}{\TPSFOperatorfont}{m}{it} +\DeclareMathAlphabet {\mathtt}{\encodingdefault}{\ttdefault}{m}{n} +\SetMathAlphabet\mathsf{bold}{\encodingdefault}{\sfdefault}{bx}{n} +\SetMathAlphabet\mathit{bold}{\encodingdefault}{\TPSFOperatorfont}{bx}{it} +\SetMathAlphabet{\mathtt}{bold}{\encodingdefault}{\ttdefault}{bx}{n} +% \end{macrocode} +% +% |\oldstylenums| follow in style the math font setting. +% \begin{macrocode} +\def\oldstylenums#1{% + \begingroup + \spaceskip\fontdimen\tw@\font + \usefont{OML}{\TPSFMathfont}{\f@series}{it}% + \mathgroup\symletters #1% + \endgroup +} +% \end{macrocode} +% +% \subsubsection{Configure doublestroke fonts} +% +% \begin{macrocode} +\@ifpackageloaded{dsfont} +{% + \ifthenelse{\equal{\TPSFOperatorfont}{cmr}\or\equal{\TPSFOperatorfont}{cmrm}} + {% + \DeclareMathAlphabet{\mathds}{U}{dsrom}{m}{n} + } + {% + \DeclareMathAlphabet{\mathds}{U}{dsss}{m}{n} + } +}{}% +% \end{macrocode} +% +% \Finale +\endinput diff --git a/Master/texmf-dist/source/latex/tpslifonts/tpslifonts.ins b/Master/texmf-dist/source/latex/tpslifonts/tpslifonts.ins new file mode 100644 index 00000000000..8d73c1c2cfd --- /dev/null +++ b/Master/texmf-dist/source/latex/tpslifonts/tpslifonts.ins @@ -0,0 +1,64 @@ +%% +%% -------------------------------------------------------------- +%% Package tpslifonts - part of TeXPower bundle - configure +%% presentation fonts. Copyright (C) 1999-2004 Stephan Lehmke +%% +%% This program is free software; you can redistribute it and/or +%% modify it under the terms of the GNU General Public License +%% as published by the Free Software Foundation; either version 2 +%% of the License, or (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% -------------------------------------------------------------- +%% +%% tpslifonts.ins,v 1.2 2004/07/27 11:33:07 hansfn Exp +%% +%% --------------- start of docstrip commands ------------------ +%% + +\input docstrip + +\preamble + +-------------------------------------------------------------- +Package tpslifonts - part of TeXPower bundle - configure +presentation fonts. Copyright (C) 1999-2004 Stephan Lehmke + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. +-------------------------------------------------------------- + +\endpreamble + +\keepsilent +\usedir{tex/latex/texpower/tpslifonts} +\askonceonly + +\generate{% + \file{tpslifonts.sty}{\from{tpslifonts.dtx}{tpslifonts}} +} + +\ifToplevel{ +\Msg{***********************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* \space\space tpslifonts.sty} +\Msg{*} +\Msg{* Happy TeXing} +\Msg{***********************************************************} +} + +\endbatchfile + diff --git a/Master/texmf-dist/tex/latex/tpslifonts/tpslifonts.sty b/Master/texmf-dist/tex/latex/tpslifonts/tpslifonts.sty index b843c703495..57e181c7af7 100644 --- a/Master/texmf-dist/tex/latex/tpslifonts/tpslifonts.sty +++ b/Master/texmf-dist/tex/latex/tpslifonts/tpslifonts.sty @@ -1,152 +1,45 @@ -% $Id: tpslifonts.sty,v 1.6 2002/11/14 20:45:59 hansfn Exp $ -% -% TeXPower bundle - dynamic online presentations with LaTeX -% Copyright (C) 1999-2003 Stephan Lehmke -% -% This program is free software; you can redistribute it and/or -% modify it under the terms of the GNU General Public License -% as published by the Free Software Foundation; either version 2 -% of the License, or (at your option) any later version. -% -% This program is distributed in the hope that it will be useful, -% but WITHOUT ANY WARRANTY; without even the implied warranty of -% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -% GNU General Public License for more details. -% -%=============================================================================== -% File: tpslifonts.sty -% -% Presentations to be displayed `online' with a video beamer have special needs -% concerning font configuration owing to low `screen' resolution and bad -% contrast caused by possibly bad light conditions combined with color -% highlighting. -% This package tries to cater to these needs by offering a holistic -% configuration of all document fonts, including text, typewriter, and math -% fonts. Special features are `smooth scaling' of Type1 fonts and careful design -% size selection for optimal readability. -% The default is to use ``lcmss'', also called ``slifonts'' for text and the -% usual cmtt and cmm for typewriter and math. There's a large variety of -% options and parameters for choosing different text and math fonts, all from -% the large ``cm'' family of fonts, which has the advantage that readability can -% be enhanced by scaling small design sizes. -% A couple of additional math fonts like ams and doublestroke fonts are -% supported. -% For some of the options to yield satisfying results, it is neccessary to -% install additional (free) Type1 fonts on your system. -% There's no intention to support other font families like the typical -% ``psnfss'' PostScript fonts, as they usually don't come in different design -% sizes, making the effort of tuning them for viewing futile. If you wish to use -% such a font, load it with the usual packages. -% -% This package is part of the TeXPower bundle, to be found at -% -% http://texpower.sourceforge.net/ -% -%================================================================================ -% Author: Stephan Lehmke <Stephan.Lehmke@cs.uni-dortmund.de> -% -% v0.1 Aug 10, 2001 First version for the pre-alpha release of texpower. -% -% v0.2 Nov 17, 2001 Added support for stmaryrd fonts. -% -% v0.3 Oct 18, 2002 Rewritten to go without .fd files. -% Euler package dependence changed to eulervm. -% Added support for ams, lasy, wasysym, rsfs, dstroke fonts. -% -% v0.4 Mar 25, 2003 Added support for cmbright math. -% -% v0.5 Mar 26, 2003 Added support for T1 encoding. -% -% v0.6 May 29, 2003 Change of attitude: I found out how desolate the situation -% of most presentation packages is wrt fonts. Hence, instead -% of trying to be as minimally invasive as possible, -% tpslifonts will try to hijack every single font which might -% possibly be used in a presentation and replace it by -% something sensible. -% No `private' ``lcmr'' to replace ``cmr'' any more - cmr is -% redefined no matter what. -% Now configures (almost) all fonts type1cm and type1ec do, -% plus concrete, cmbright, and euler fonts. -% Added options ``scale5pt'', ``scale6pt'', ``scale7pt'' to -% bound the design sizes of fonts used. -% Added options ``cmr'', ``cmss'', ``cmbright'' and -% ``concrete'' to choose text fonts different from lcmss. -% Improved handling of Option incompatibilities. - +%% +%% This is file `tpslifonts.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% tpslifonts.dtx (with options: `tpslifonts') +%% +%% -------------------------------------------------------------- +%% Package tpslifonts - part of TeXPower bundle - configure +%% presentation fonts. Copyright (C) 1999-2004 Stephan Lehmke +%% +%% This program is free software; you can redistribute it and/or +%% modify it under the terms of the GNU General Public License +%% as published by the Free Software Foundation; either version 2 +%% of the License, or (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% -------------------------------------------------------------- +%% \NeedsTeXFormat{LaTeX2e} - -\ProvidesPackage% -{tpslifonts}% -[2003/05/29 v0.6 Configure presentation fonts.] - - -%============================================================================== - +\ProvidesPackage{tpslifonts} + [2004/07/27 v0.6d Configure presentation fonts.] \RequirePackage{ifthen} - - -%============================================================================== -% Options and general setup. - -%------------------------------------------------------------------------------ -% Text fonts. The default is to use ``slifonts'' (lcmss). - \newcommand{\TPSFTextfont}{lcmss} - -% The option cmr sets ``computer modern roman'' text fonts. - \DeclareOption{cmr}{\renewcommand{\TPSFTextfont}{cmr}} - -% The option cmss sets ``computer modern roman sans serif'' text fonts. - +\DeclareOption{cmfib}{\renewcommand{\TPSFTextfont}{cmfib}} \DeclareOption{cmss}{\renewcommand{\TPSFTextfont}{cmss}} - -% The option cmbright sets ``computer modern bright'' text fonts. - \DeclareOption{cmbright}{\renewcommand{\TPSFTextfont}{cmbr}} - -% The option concrete sets ``concrete'' text fonts. - \DeclareOption{concrete} {% \renewcommand{\TPSFTextfont}{ccr}% \renewcommand{\TPSFMathfont}{ccm}% \renewcommand{\TPSFOperatorfont}{ccr}% } - -%------------------------------------------------------------------------------ -% Design size selection. Usually design sizes are `bounded' by 8pt, that is, if -% an 8pt (or lower) design size of a font exists, it will be scaled to larger -% sizes even if larger design sizes exist, to enhance readability at low -% resolutions. For sizes below 8pt, smaller design sizes are used if available. - \providecommand{\TPSFMaxDesignSize}{8} - -% The option scale5pt causes scaled 5pt design sizes to be used wherever -% possible. - \DeclareOption{scale5pt}{\renewcommand{\TPSFMaxDesignSize}{5}} - -% The option scale6pt causes scaled 6pt design sizes to be used wherever -% possible (for font sizes above 6pt). - \DeclareOption{scale6pt}{\renewcommand{\TPSFMaxDesignSize}{6}} - -% The option scale7pt causes scaled 7pt design sizes to be used wherever -% possible (for font sizes above 7pt). - \DeclareOption{scale7pt}{\renewcommand{\TPSFMaxDesignSize}{7}} - - -%------------------------------------------------------------------------------- -% lcmss text fonts have very high `small letters', making normal-size fonts look -% small and difficult to read. -% The option scaleupmath (scaleuptt) will scale up math (typewriter) fonts -% slightly so they harmonize a little more with text fonts. -% These options do not make much sense with other text fonts, hence a warning -% (but no error message) is generated to remind the user they might have -% overlooked something. - \newboolean{TPSFscaleup} \DeclareOption{scaleupmath} {% @@ -158,18 +51,6 @@ \DeclareOption{scaleuptt} {\providecommand\TPSFttscale{1.2}\setboolean{TPSFscaleup}{true}} - -%------------------------------------------------------------------------------ -% Math fonts. -% Because the availability of different fonts in different encodings is not -% really homogenous, we differentiate between the font used for Operators (plus -% upper case greek, digits and some symbols) and the font used for other -% symbols. In some cases (math extension font), the choices are quite limited -% anyway. - -% The default is to use cmr for operators and such and the standard cmm and -% relatives for symbols. - \newcommand{\TPSFMathfont}{cmm} \newcommand{\TPSFOpF@cmm}{cmrm} @@ -177,53 +58,21 @@ \newcommand{\TPSFOpF@ccm}{ccr} \newcommand{\TPSFOperatorfont}{cmr} - -% The option textops makes the operator font follow the text font. - \newboolean{TPSFtextops} \DeclareOption{textops}{\setboolean{TPSFtextops}{true}} - -% The option eulermath sets euler math fonts (slightly adapted from the eulervm -% package to match lcmss better). -% When using this option, the operator font automatically follows the text -% font. - \DeclareOption{eulermath} {\renewcommand{\TPSFMathfont}{euler}\setboolean{TPSFtextops}{true}} - -% The option eulerdigits works only in conjunction with eulermath and sets the -% euler-digits option of the eulervm package. - \newboolean{TPSFeulerdigits} \DeclareOption{eulerdigits} {% \setboolean{TPSFeulerdigits}{true}% \PassOptionsToPackage{euler-digits}{eulervm}% } - -% The option cmbrightmath sets cmbright math fonts (slightly adapted from the -% cmbright package to match lcmss better). - \DeclareOption{cmbrightmath}{\renewcommand{\TPSFMathfont}{cmbrm}} \newcommand{\TPSFOpF@cmbrm}{cmbrmt} -%------------------------------------------------------------------------------ -% Process options. - \ProcessOptions - -%------------------------------------------------------------------------------ -% Option postprocessing. - -% Parameters \TPSFmathscale and such can be (re)defined from outside the -% tpslifonts package to adjust scaling. If any of these scaling parameters is -% defined before the tpslifonts package is loaded, there is no need to give the -% respective option. -% Here, we test whether the parameters have been provided (either by defining -% them independently or by giving one of the ``scaleup...'' options), and define -% the `real' scaling parameter for font definition accordingly. - \@ifundefined{TPSFmathscale} {\let\TPSFmathscale\@undefined\let\mathscale@TPSF\empty} {\def\mathscale@TPSF{[\TPSFmathscale]}} @@ -239,58 +88,28 @@ \@ifundefined{TPSFttscale} {\let\TPSFttscale\@undefined\let\ttscale@TPSF\empty} {\def\ttscale@TPSF{[\TPSFttscale]}} - -% As mentioned above, the ``scaleup...'' options make sense really only if lcmss -% text fonts are used. Otherwise, we give a warning. - \ifthenelse{\boolean{TPSFscaleup}\and\not\equal{\TPSFTextfont}{lcmss}} {% \PackageWarning{tpslifonts} - {Using the ``scaleup'' Options makes sense only\MessageBreak - when lcmss text fonts are used.\MessageBreak - Watch closely whether the results of scaling math\MessageBreak - and/or typewriter fonts together with ``\TPSFTextfont''\MessageBreak + {Using the ``scaleup'' Options makes sense only\MessageBreak + when lcmss text fonts are used.\MessageBreak + Watch closely whether the results of scaling math\MessageBreak + and/or typewriter fonts together with ``\TPSFTextfont''\MessageBreak text fonts is what you intended to achieve.% }% } {} - -% We need to set the math operator font corresponing to the settings of the -% TPSFtextops switch, the text and math fonts. - \ifthenelse{\boolean{TPSFtextops}} {\let\TPSFOperatorfont\TPSFTextfont} {% \expandafter\let\expandafter\TPSFOperatorfont \csname TPSFOpF@\TPSFMathfont\endcsname } - -% The cmbright package also sets text fonts, so if cmbright math is requested, -% we load the cmbright package first and later overwrite the text font settings -% (if no cmbright text fonts were requested). - \ifthenelse{\equal{\TPSFMathfont}{cmbrm}} {% \RequirePackage[standard-baselineskips]{cmbright}% } -%============================================================================== -% Font shape configuration. - -% We need a couple of macros to help in configuring fonts. -% To increase readability in presentations, design size selection is -% restricted. Without any options, the largest design size used is 8pt. The -% options scale5pt ... scale7pt impose further constraints. -% Another restriction is caused by the availability of design sizes. Not all -% fonts exist in all design sizes. If no design size exists at all in the -% requested range (i.e. the font exists only in size 10), then the smallest -% available size has to be chosen no matter what. - -% \FilterSizes@TPSF<name>{<list>} filters out all sizes (represented as -% nonnegative integer numbers) from the comma-separated <list> which are above -% the threshold in \TPSFMaxDesignSize and stores the result in the macro -% <name>. To avoid inconsistencies if all sizes exceed \TPSFMaxDesignSize, the -% first size is always passed. \newcommand{\FilterSizes@TPSF}[2]{\expandafter\@FilterSizes@TPSF#2,\@nil#1} @@ -308,17 +127,6 @@ \ifx\empty#2\empty\else\@@FilterSizes@TPSF#2\@nil#3\fi \fi } - -% \DeclareFontShape@TPSF[<scale>]{<enc>}{<fam>}{<ser>}{<shp>}{<name>}{<sizes>} -% declares a font with presentation-friendly design size selection (which -% means all design sizes above \TPSFMaxDesignSize are filtered out. The actually -% existing design sizes have to be provided in <sizes> as a comma-separated list -% of numbers. If <s> is one of the sizes, it is expected that the corresponding -% font name can be constructed as <name><s>. -% If the optional argument <scale> is given, it has to be of the form -% [<factor>], where <factor> specifies the scaling of the font (see the -% options ``scaleupmath'' and ``scaleuptt'' above). - \newcommand{\DeclareFontShape@TPSF}[7][] {% \FilterSizes@TPSF\sizes@TPSF{#7}% @@ -343,27 +151,8 @@ \let\prevsize@TPSF\currsize@TPSF \ifx\currsize@TPSF\empty\else\@parsesizes@TPSF#2\@nil\fi } - - -%============================================================================== -% Declaration of font shapes. - -% The following is copied more or less verbatim from type1cm.sty, -% type1ec.sty, and other sources of font definitions for e.g. cmbright fonts. -% For fonts following the usual naming conventions, we use -% \DeclareFontShape@TPSF instead of \DeclareFontShape to implement design size -% bounding. -% For T1 ec fonts, the same is achieved by appropriate redefinition of -% \EC@family. - \begingroup \nfss@catcodes - -%------------------------------------------------------------------------------ -% Text fonts for OT1 encoding. - -% computer modern roman. - \DeclareFontFamily{OT1}{cmr}{\hyphenchar\font=45} \DeclareFontShape@TPSF{OT1}{cmr}{m}{n}{cmr}{5,6,7,8,9,10,12,17} @@ -390,26 +179,50 @@ \DeclareFontFamily{OT1}{cmfr}{\hyphenchar\font=45} \DeclareFontShape{OT1}{cmfr}{m}{n}{% - <-> cmff10 + <->s* cmff10 }{} \DeclareFontShape{OT1}{cmfr}{m}{it}{ - <-> cmfi10 + <->s* cmfi10 }{} \DeclareFontFamily{OT1}{cmdh}{\hyphenchar\font=45} \DeclareFontShape{OT1}{cmdh}{m}{n}{ - <-> cmdunh10 + <->s* cmdunh10 }{} \DeclareFontFamily{OT1}{cmfib}{\hyphenchar\font=45} \DeclareFontShape{OT1}{cmfib}{m}{n}{ - <-> cmfib8 + <->s* cmfib8 }{} -% computer modern sans serif. +\DeclareFontShape{OT1}{cmfib}{m}{sl} + {<->ssub * cmr/m/sl}{} + +\DeclareFontShape{OT1}{cmfib}{m}{it} + {<->ssub * cmr/m/it}{} + +\DeclareFontShape{OT1}{cmfib}{m}{sc} + {<->ssub * cmr/m/sc}{} + +\DeclareFontShape{OT1}{cmfib}{m}{ui} + {<->ssub * cmr/m/ui}{} + +\DeclareFontShape{OT1}{cmfib}{b}{n} + {<->ssub * cmr/b/n}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{n} + {<->ssub * cmr/bx/n}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{sl} + {<->ssub * cmr/bx/sl}{} +\DeclareFontShape{OT1}{cmfib}{bx}{it} + {<->ssub * cmr/bx/it}{} + +\DeclareFontShape{OT1}{cmfib}{bx}{ui} + {<->ssub * cmr/m/ui}{} \DeclareFontFamily{OT1}{cmss}{\hyphenchar\font=45} \DeclareFontShape@TPSF{OT1}{cmss}{m}{n}{cmss}{8,9,10,12,17} @@ -431,9 +244,6 @@ \DeclareFontShape{OT1}{cmss}{bx}{ui} {<->sub*cmr/bx/ui}{} - -% slide computer modern sans serif. - \DeclareFontFamily{OT1}{lcmss}{\hyphenchar\font45 } \DeclareFontShape@TPSF{OT1}{lcmss}{m}{n}{lcmss}{8} @@ -465,9 +275,6 @@ \DeclareFontShape{OT1}{lcmss}{bx}{ui}{% <->sub*cmr/m/ui}{} - -% computer modern bright - \DeclareFontFamily{OT1}{cmbr}{\hyphenchar\font45} \DeclareFontShape@TPSF{OT1}{cmbr}{m}{n}{cmbr}{8,9,10,17} @@ -483,9 +290,6 @@ }{} \DeclareFontShape@TPSF{OT1}{cmbr}{bx}{n}{cmbrbx}{10} - -% concrete roman - \DeclareFontFamily{OT1}{ccr}{\hyphenchar\font45 } \DeclareFontShape@TPSF{OT1}{ccr}{m}{n}{ccr}{5,6,7,8,9,10} @@ -499,93 +303,83 @@ \DeclareFontShape{OT1}{ccr}{bx}{n} {<-> ssub * cmss/bx/n}{} \DeclareFontShape{OT1}{ccr}{bx}{sl}{<-> ssub * cmss/bx/sl}{} \DeclareFontShape{OT1}{ccr}{bx}{it}{<-> ssub * cmss/bx/it}{} -% \DeclareFontShape{OT1}{ccr}{bx}{n} {<-> ssub * cmr/bx/n}{} -% \DeclareFontShape{OT1}{ccr}{bx}{sl}{<-> ssub * cmr/bx/sl}{} -% \DeclareFontShape{OT1}{ccr}{bx}{it}{<-> ssub * cmr/bx/it}{} \DeclareFontShape{OT1}{ccr}{sbc}{n} {<-> ssub * cmss/sbc/n}{} \DeclareFontShape{OT1}{ccr}{sbc}{sl}{<-> ssub * cmss/sbc/n}{} \DeclareFontShape{OT1}{ccr}{sbc}{it}{<-> ssub * cmss/sbc/n}{} \DeclareFontShape@TPSF{OT1}{ccr}{c}{sl}{ccslc}{9} - -%------------------------------------------------------------------------------ -% Text fonts for T1 encoding. - \let\ecscale@TPSF\empty \ifcase\TPSFMaxDesignSize \or\or\or\or\or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <->\ecscale@TPSF#50500% + <->s*\ecscale@TPSF#50500% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6->\ecscale@TPSF#50600% + <-6>s*\ecscale@TPSF#50500% + <6->s*\ecscale@TPSF#50600% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6-7>\ecscale@TPSF#50600% - <7->\ecscale@TPSF#50700% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7->s*\ecscale@TPSF#50700% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6-7>\ecscale@TPSF#50600% - <7-8>\ecscale@TPSF#50700% - <8->\ecscale@TPSF#50800% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8->s*\ecscale@TPSF#50800% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6-7>\ecscale@TPSF#50600% - <7-8>\ecscale@TPSF#50700% - <8-9>\ecscale@TPSF#50800% - <9->\ecscale@TPSF#50900% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9->s*\ecscale@TPSF#50900% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6-7>\ecscale@TPSF#50600% - <7-8>\ecscale@TPSF#50700% - <8-9>\ecscale@TPSF#50800% - <9-10>\ecscale@TPSF#50900% - <10->\ecscale@TPSF#51000% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9-10>s*\ecscale@TPSF#50900% + <10->s*\ecscale@TPSF#51000% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6-7>\ecscale@TPSF#50600% - <7-8>\ecscale@TPSF#50700% - <8-9>\ecscale@TPSF#50800% - <9-10>\ecscale@TPSF#50900% - <10-10.95>\ecscale@TPSF#51000% - <10.95->\ecscale@TPSF#51095% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9-10>s*\ecscale@TPSF#50900% + <10-10.95>s*\ecscale@TPSF#51000% + <10.95->s*\ecscale@TPSF#51095% }{}} \or \providecommand{\EC@family}[5]{% \DeclareFontShape{#1}{#2}{#3}{#4}{% - <-6>\ecscale@TPSF#50500% - <6-7>\ecscale@TPSF#50600% - <7-8>\ecscale@TPSF#50700% - <8-9>\ecscale@TPSF#50800% - <9-10>\ecscale@TPSF#50900% - <10-10.95>\ecscale@TPSF#51000% - <10.95-12>\ecscale@TPSF#51095% - <12->\ecscale@TPSF#51200% + <-6>s*\ecscale@TPSF#50500% + <6-7>s*\ecscale@TPSF#50600% + <7-8>s*\ecscale@TPSF#50700% + <8-9>s*\ecscale@TPSF#50800% + <9-10>s*\ecscale@TPSF#50900% + <10-10.95>s*\ecscale@TPSF#51000% + <10.95-12>s*\ecscale@TPSF#51095% + <12->s*\ecscale@TPSF#51200% }{}} \fi - -% european computer modern roman. - \input{t1cmr.fd} \input{t1cmfr.fd} @@ -594,14 +388,32 @@ \input{t1cmfib.fd} -% european computer modern roman sans serif. +\DeclareFontShape{T1}{cmfib}{m}{it} + {<->ssub * cmr/m/it}{} -\input{t1cmss.fd} +\DeclareFontShape{T1}{cmfib}{m}{sc} + {<->ssub * cmr/m/sc}{} -\DeclareFontShape@TPSF{T1}{cmss}{sbc}{n}{ecssdc}{10} +\DeclareFontShape{T1}{cmfib}{m}{ui} + {<->ssub * cmr/m/ui}{} + +\DeclareFontShape{T1}{cmfib}{b}{n} + {<->ssub * cmr/b/n}{} + +\DeclareFontShape{T1}{cmfib}{bx}{n} + {<->ssub * cmr/bx/n}{} + +\DeclareFontShape{T1}{cmfib}{bx}{sl} + {<->ssub * cmr/bx/sl}{} + +\DeclareFontShape{T1}{cmfib}{bx}{it} + {<->ssub * cmr/bx/it}{} -% european slide computer modern sans serif. +\DeclareFontShape{T1}{cmfib}{bx}{ui} + {<->ssub * cmr/m/ui}{} +\input{t1cmss.fd} +\DeclareFontShape@TPSF{T1}{cmss}{sbc}{n}{ecssdc}{10} \DeclareFontFamily{T1}{lcmss}{} \DeclareFontShape@TPSF{T1}{lcmss}{m}{n}{eclq}{8} @@ -609,7 +421,7 @@ \DeclareFontShape@TPSF{T1}{lcmss}{m}{sl}{ecli}{8} -\DeclareFontShape@TPSF{T1}{lcmss}{m}{Isl}{iecli}{8} +\DeclareFontShape@TPSF{T1}{lcmss}{m}{Isl}{iecli}{8} \DeclareFontShape{T1}{lcmss}{m}{it}{% <->sub*lcmss/m/sl}{} @@ -639,9 +451,6 @@ \DeclareFontShape{T1}{lcmss}{bx}{ui}{% <->sub*cmr/m/ui}{} - -% european computer modern bright - \DeclareFontFamily{T1}{cmbr}{} \DeclareFontShape@TPSF{T1}{cmbr}{m}{n}{ebmr}{8,9,10,17} @@ -667,9 +476,6 @@ \DeclareFontShape{T1}{cmbr}{bx}{n}{% <->sub*cmbr/sb/n% }{} - -% european concrete roman - \DeclareFontFamily{T1}{ccr}{} \DeclareFontShape@TPSF{T1}{ccr}{m}{n}{eorm}{5,6,7,8,9,10} @@ -689,23 +495,11 @@ \DeclareFontShape{T1}{ccr}{bx}{it}{% <->ssub*cmss/bx/it}{} -% \DeclareFontShape{T1}{ccr}{bx}{n}{% -% <->ssub*cmr/bx/n}{} -% \DeclareFontShape{T1}{ccr}{bx}{sl}{% -% <->ssub*cmr/bx/sl}{} -% \DeclareFontShape{T1}{ccr}{bx}{it}{% -% <->ssub*cmr/bx/it}{} \DeclareFontShape{T1}{ccr}{sbc}{n}{% <->ssubf*ecssdc10}{} - -%------------------------------------------------------------------------------ -% Typewriter fonts for OT1 encoding. - -% computer modern typewriter. - \DeclareFontFamily{OT1}{cmtt}{\hyphenchar\font\m@ne} \DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{cmtt}{m}{n}{cmtt}{8,9,10,12} @@ -727,10 +521,6 @@ \DeclareFontShape{OT1}{cmtt}{bx}{ui} {<->sub * cmtt/m/it}{} - -% `Slides' computer modern typewriter exists only for compatibility with T1 -% encoding. - \DeclareFontFamily{OT1}{lcmtt}{\hyphenchar\font\m@ne} \DeclareFontShape@TPSF[\ttscale@TPSF]{OT1}{lcmtt}{m}{n}{cmtt}{8,9,10,12} @@ -752,9 +542,6 @@ \DeclareFontShape{OT1}{lcmtt}{bx}{ui} {<->sub * lcmtt/m/it}{} - -% computer modern typewriter light. - \DeclareFontFamily{OT1}{cmtl}{\hyphenchar\font\m@ne} \DeclareFontShape{OT1}{cmtl}{m}{n}{% @@ -766,10 +553,6 @@ }{} \DeclareFontShape{OT1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} - -%------------------------------------------------------------------------------ -% Typewriter fonts for T1 encoding. - \ifcase\TPSFMaxDesignSize \or\or\or\or\or \providecommand{\EC@ttfamily}[5]{% @@ -822,14 +605,7 @@ <12->s*\ttscale@TPSF#51200% }{}} \fi - -% european computer modern typewriter. - \input{t1cmtt.fd} - -% european `Slides' computer modern typewriter. There exists _one_ dedicated -% font ``ecltt8'' for this setup. - \DeclareFontFamily{T1}{lcmtt}{\hyphenchar\font\m@ne} \DeclareFontShape{T1}{lcmtt}{m}{n}{% @@ -863,9 +639,6 @@ \DeclareFontShape{T1}{lcmtt}{bx}{ui} {<->sub * lcmtt/m/it}{} - -% european computer modern typewriter light. - \DeclareFontFamily{T1}{cmtl}{\hyphenchar\font\m@ne} \DeclareFontShape{T1}{cmtl}{m}{n}{% @@ -877,73 +650,63 @@ }{} \DeclareFontShape{T1}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} - -%------------------------------------------------------------------------------ -% Typewriter fonts for mTT encoding, used by cmtt.sty. - \@ifundefined{T@mTT}{} {% \DeclareFontFamily{mTT}{cmtt}{\hyphenchar\font\m@ne} \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{n}{cmtt}{8,9,10,12} - + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{it}{cmitt}{10} - + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{sl}{cmsltt}{10} - + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{cmtt}{m}{sc}{cmtcsc}{10} \DeclareFontShape{mTT}{cmtt}{m}{ui} {<->sub * cmtt/m/it}{} - + \DeclareFontShape{mTT}{cmtt}{bx}{n} {<->sub * cmtt/m/n}{} - + \DeclareFontShape{mTT}{cmtt}{bx}{it} {<->sub * cmtt/m/it}{} - + \DeclareFontShape{mTT}{cmtt}{bx}{ui} {<->sub * cmtt/m/it}{} - + \DeclareFontFamily{mTT}{lcmtt}{\hyphenchar\font\m@ne} \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{n}{cmtt}{8,9,10,12} - + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{it}{cmitt}{10} - + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{sl}{cmsltt}{10} - + \DeclareFontShape@TPSF[\ttscale@TPSF]{mTT}{lcmtt}{m}{sc}{cmtcsc}{10} - + \DeclareFontShape{mTT}{lcmtt}{m}{ui} {<->sub * lcmtt/m/it}{} - + \DeclareFontShape{mTT}{lcmtt}{bx}{n} {<->sub * lcmtt/m/n}{} - + \DeclareFontShape{mTT}{lcmtt}{bx}{it} {<->sub * lcmtt/m/it}{} - + \DeclareFontShape{mTT}{lcmtt}{bx}{ui} {<->sub * lcmtt/m/it}{} \DeclareFontFamily{mTT}{cmtl}{\hyphenchar\font\m@ne} - + \DeclareFontShape{mTT}{cmtl}{m}{n}{% <->s*\ttscale@TPSF cmtl10% }{} - + \DeclareFontShape{mTT}{cmtl}{m}{sl}{% <->s*\ttscale@TPSF cmsltl10% }{} - + \DeclareFontShape{mTT}{cmtl}{m}{it}{<->ssub*cmtl/m/sl}{} } - -%------------------------------------------------------------------------------ -% Math fonts. - -% computer modern math italic. - \DeclareFontFamily{OML}{cmm}{\skewchar\font127} \DeclareFontShape@TPSF[\mathscale@TPSF]{OML}{cmm}{m}{it}{cmmi}{5,6,7,8,9,10,12} @@ -1025,12 +788,7 @@ \DeclareFontFamily{OMX}{cmex}{} -\DeclareFontShape{OMX}{cmex}{m}{n}{% - <->\mathscale@TPSF cmex10% -}{} - -% Euler fonts (eulervm style). - +\DeclareFontShape@TPSF[\mathscale@TPSF]{OMX}{cmex}{m}{n}{cmex}{7,10} \DeclareFontFamily{U}{zeur}{\skewchar \font =127} \DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{zeur}{m}{n}{zeurm}{5,7,10} @@ -1050,11 +808,8 @@ \DeclareFontFamily{U}{zeuex}{} \DeclareFontShape{U}{zeuex}{m}{n}{ - <-> \eulerscale@TPSF zeuex10 + <->s* \eulerscale@TPSF zeuex10 }{} - -% computer modern bright math slanted. - \DeclareFontFamily{OML}{cmbrm}{\skewchar\font 127} \DeclareFontShape@TPSF[\cmbrscale@TPSF]{OML}{cmbrm}{m}{it}{cmbrmi}{8,9,10} @@ -1118,9 +873,6 @@ \DeclareFontShape{OMS}{cmbr}{m}{n}{<->ssub*cmbrs/m/n}{} \DeclareFontShape{OMS}{cmbr}{m}{b}{<->ssub*cmbrs/m/n}{} - -% Concrete Math Italic - \DeclareFontFamily{OML}{ccm}{\skewchar\font127 } \DeclareFontShape@TPSF[\mathscale@TPSF]{OML}{ccm}{m}{it}{xccmi}{5,6,7,8,9,10} @@ -1153,26 +905,22 @@ \DeclareFontFamily{OMX}{ccex}{} -\DeclareFontShape{OMX}{ccex}{m}{n}{<->\mathscale@TPSF xccex10}{} - -% LaTeX symbols - +\DeclareFontShape{OMX}{ccex}{m}{n}{<->s*\mathscale@TPSF xccex10}{} \DeclareFontFamily{U}{lasy}{} \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{lasy}{m}{n}{lasy}{5,6,7,8,9,10} \DeclareFontShape{U}{lasy}{b}{n}{ - <-> \mathscale@TPSF lasyb10 + <->s* \mathscale@TPSF lasyb10 }{} - -% AMS fonts - \DeclareFontFamily{U}{msa}{} \DeclareFontFamily{U}{msb}{} \ifthenelse{\equal{\TPSFMathfont}{cmbrm}} {% + \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msa}{m}{n}{cmbras}{8,9,10}% + \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msb}{m}{n}{cmbrbs}{8,9,10}% \AtBeginDocument {% \DeclareFontShape@TPSF[\cmbrscale@TPSF]{U}{msa}{m}{n}{cmbras}{8,9,10}% @@ -1188,7 +936,7 @@ \DeclareFontFamily{U}{euex}{} \DeclareFontShape{U}{euex}{m}{n}{ - <-> \eulerscale@TPSF euex10 + <->s* \eulerscale@TPSF euex10 }{} \DeclareFontFamily{U}{euf}{} @@ -1208,31 +956,19 @@ \DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{eus}{m}{n}{eusm}{5,7,10} \DeclareFontShape@TPSF[\eulerscale@TPSF]{U}{eus}{b}{n}{eusb}{5,7,10} - -% St Mary's Road symbol font. - \DeclareFontFamily{U}{stmry}{} \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{stmry}{m}{n}{stmary}{5,6,7,8,9,10} - -% Wasy symbol font. - \DeclareFontFamily{U}{wasy}{} \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{wasy}{m}{n}{wasy}{5,6,7,8,9,10} - + \DeclareFontShape{U}{wasy}{b}{n} -{ <->\mathscale@TPSF wasyb10 +{ <->s*\mathscale@TPSF wasyb10 }{} - -% formal script math symbols - \DeclareFontFamily{U}{rsfs}{\skewchar\font127 } \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{rsfs}{m}{n}{rsfs}{5,7,10} - -% double stroke computer modern - \DeclareFontFamily{U}{dsrom}{} \DeclareFontShape@TPSF[\mathscale@TPSF]{U}{dsrom}{m}{n}{dsrom}{8,10,12} @@ -1243,20 +979,12 @@ \endgroup -% Just to make sure in case these have been defined before... \expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax \expandafter\let\csname OT1/cmr/m/n/10.95\endcsname\relax \expandafter\let\csname OT1/cmr/m/n/12\endcsname\relax \expandafter\let\csname T1/cmr/m/n/10\endcsname\relax \expandafter\let\csname T1/cmr/m/n/10.95\endcsname\relax \expandafter\let\csname T1/cmr/m/n/12\endcsname\relax - -%============================================================================== -% Font shape selection. - -%------------------------------------------------------------------------------ -% Set text fonts. - \newcommand{\setlcmssTextFonts@TPSF} {% \renewcommand{\familydefault}{\sfdefault}% Main text font is sans serif. @@ -1271,6 +999,13 @@ \renewcommand{\ttdefault}{cmtt}% Typewriter font. } +\newcommand{\setcmfibTextFonts@TPSF} +{% + \renewcommand{\familydefault}{\rmdefault}% Main text font is roman. + \renewcommand{\rmdefault}{cmfib}% Choose cmfib as roman font. + \renewcommand{\ttdefault}{cmtt}% Typewriter font. +} + \newcommand{\setcmssTextFonts@TPSF} {% \renewcommand{\familydefault}{\sfdefault}% Main text font is sans serif. @@ -1293,11 +1028,6 @@ } \csname set\TPSFTextfont TextFonts@TPSF\endcsname - - -%------------------------------------------------------------------------------ -% Configure Math fonts. - \newcommand{\setcmmMathFonts@TPSF} {% \SetSymbolFont{letters} {normal}{OML}{cmm} {m}{it} @@ -1337,11 +1067,6 @@ } \csname set\TPSFMathfont MathFonts@TPSF\endcsname - - -%------------------------------------------------------------------------------ -% Configure Operator fonts. - \ifthenelse{\equal{\TPSFMathfont}{euler}} {% \SetSymbolFont{operators}{normal}{\encodingdefault}{\TPSFOperatorfont}{m}{n}% @@ -1351,11 +1076,6 @@ \SetSymbolFont{operators}{normal}{OT1}{\TPSFOperatorfont}{m}{n}% \SetSymbolFont{operators}{bold}{OT1}{\TPSFOperatorfont}{bx}{n}% } - - -%------------------------------------------------------------------------------ -% Alphabets for ``text inside math''. - \DeclareMathAlphabet {\mathbf}{\encodingdefault}{\TPSFOperatorfont}{bx}{n} \DeclareMathAlphabet {\mathsf}{\encodingdefault}{\sfdefault}{m}{n} \DeclareMathAlphabet {\mathit}{\encodingdefault}{\TPSFOperatorfont}{m}{it} @@ -1363,10 +1083,6 @@ \SetMathAlphabet\mathsf{bold}{\encodingdefault}{\sfdefault}{bx}{n} \SetMathAlphabet\mathit{bold}{\encodingdefault}{\TPSFOperatorfont}{bx}{it} \SetMathAlphabet{\mathtt}{bold}{\encodingdefault}{\ttdefault}{bx}{n} - -%------------------------------------------------------------------------------ -% \oldstylenums follow in style the math font setting. - \def\oldstylenums#1{% \begingroup \spaceskip\fontdimen\tw@\font @@ -1374,13 +1090,9 @@ \mathgroup\symletters #1% \endgroup } - -%------------------------------------------------------------------------------ -% Configure doublestroke fonts - \@ifpackageloaded{dsfont} {% - \ifthenelse{\equal{\TPSFOperatorfont}{cmr}} + \ifthenelse{\equal{\TPSFOperatorfont}{cmr}\or\equal{\TPSFOperatorfont}{cmrm}} {% \DeclareMathAlphabet{\mathds}{U}{dsrom}{m}{n} } @@ -1388,12 +1100,6 @@ \DeclareMathAlphabet{\mathds}{U}{dsss}{m}{n} } }{}% - - -% Local Variables: -% fill-column: 80 -% TeX-master: "dummy" -% End: - +\endinput %% %% End of file `tpslifonts.sty'. |