%---------------------------------------------------------------------- % myconcrete.sty, Jeff Erickson, 09 Dec 1996, tweaked 02 Aug 1998 % % This is a micture of Frank Jensen's ``beton'' package and someone % else's ``concmath'' package that has the features of both. Unlike % ``beton'', this package defines all sizes of Concrete Roman that % might appear in a typical document (and several larger sizes that % might only appear on slides). % % Since there is no Concrete Roman Bold, switch to Computer Modern % Sans Serif for bold text instead of Computer Modern Roman. Two % serifed fonts in the same document look really oogly. But that's % just my opinion. % % Herman Zapf specified slightly more spacing between the lines for % this fonts than for Computer Modern. To get the old line spacing, % which looks very tight for this font, use the option [verytight]. % For intermediate spacing, use the option [tight]. % % Other options: % [oldstyle-equation-numbers] % [concrete-math] %---------------------------------------------------------------------- \ProvidesPackage{myconcrete} %% This package doesn't provide any options at the moment, %% so there are no \DeclareOption or \ProcessOptions commands. %% Declare the font family ccr, but *don't* load OT1ccr.fd, because %% we're about to override it. \DeclareFontFamily{OT1}{ccr}{}{} %% Declare font shapes for sizes 29.86, 35.83 and 40 (text fonts). %% This package was originally written for poster sizes, %% therefore we provide some additional magsteps. %% Also provide smaller font sizes, because they actually get used for %% footnotes, captions, etc.! \DeclareFontShape{OT1}{ccr}{m}{n}{ <5> <6> <7> <8> <9> gen * ccr <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> <29.86> <35.83> <40> ccr10}{} \DeclareFontShape{OT1}{ccr}{m}{it}{ <5> <6> <7> <8> <9> <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> <29.86> <35.83> <40> ccti10}{} \DeclareFontShape{OT1}{ccr}{m}{sl}{ <5> <6> <7> <8> <9> ccsl9 <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> <29.86> <35.83> <40> ccsl10}{} \DeclareFontShape{OT1}{ccr}{m}{sc}{ <5> <6> <7> <8> <9> <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> <29.86> <35.83> <40> cccsc10}{} %% Switch to Computer Modern Sans Serif Bold Extended for bold, %% Computer Modern Sans Serif Slanted for bold italic/slanted %% Concrete Roman Small Caps for bold small caps %% Concrete Roman Small Caps for sans serif small caps %% If you really prefer Computer Modern Roman, change ``cmss'' to ``cmr'' \DeclareFontShape{OT1}{ccr}{bx}{n} {<-> ssub * cmss/bx/n }{} \DeclareFontShape{OT1}{ccr}{bx}{it}{<-> ssub * cmss/m/sl}{} \DeclareFontShape{OT1}{ccr}{bx}{sl}{<-> ssub * cmss/m/sl}{} \DeclareFontShape{OT1}{ccr}{bx}{sc}{<-> ssub * ccr/m/sc}{} \DeclareFontShape{OT1}{cmss}{m}{sc}{<-> ssub * ccr/m/sc}{} %% Make Concrete Roman the primary text font \renewcommand{\rmdefault}{ccr} %% Use bigger baselines because Herman Zapf says so. \def\beton@baselineskip@table {<\@viiipt>10<\@ixpt>11.5<\@xpt>13<\@xipt>14.5<\@xiipt>16} %% Alternately, use smaller baselines becuase I need the room. \def\beton@tight@baselineskip@table {<\@viiipt>9.8<\@ixpt>11.25<\@xpt>12.7<\@xipt>14.15<\@xiipt>15.6} \def\beton@new@setfontsize#1#2#3% {\edef\@tempa{\def\noexpand\@tempb####1<#2}% \@tempa>##2<##3\@nil{\def\beton@baselineskip@value{##2}}% \edef\@tempa{\noexpand\@tempb\beton@baselineskip@table<#2}% \@tempa><\@nil \ifx\beton@baselineskip@value\@empty \def\beton@baselineskip@value{#3}% \fi \beton@old@setfontsize{#1}{#2}\beton@baselineskip@value} \def\beton@tight@setfontsize#1#2#3% {\edef\@tempa{\def\noexpand\@tempb####1<#2}% \@tempa>##2<##3\@nil{\def\beton@baselineskip@value{##2}}% \edef\@tempa{\noexpand\@tempb\beton@tight@baselineskip@table<#2}% \@tempa><\@nil \ifx\beton@baselineskip@value\@empty \def\beton@baselineskip@value{#3}% \fi \beton@old@setfontsize{#1}{#2}\beton@baselineskip@value} \AtBeginDocument {\let\beton@old@setfontsize=\@setfontsize \let\@setfontsize=\beton@new@setfontsize} \DeclareOption{standard-baselineskips} {\AtBeginDocument{\let\@setfontsize=\beton@old@setfontsize}} \DeclareOption{verytight} {\AtBeginDocument{\let\@setfontsize=\beton@old@setfontsize}} \DeclareOption{tight} {\AtBeginDocument{\let\@setfontsize=\beton@tight@setfontsize}} \DeclareOption{oldstyle-equation-numbers} {\@ifundefined{chapter} {\def\theequation{{\beton@oldstyle\arabic{equation}}}} {\def\theequation{{\beton@oldstyle\thechapter}.% {\beton@oldstyle\arabic{equation}}}}} \DeclareRobustCommand\beton@oldstyle{\usefont{OML}{ccm}\f@series{it}} \DeclareRobustCommand\oldstylenums[1]% {\begingroup \spaceskip\fontdimen\tw@\font \TextOldstyle \MathOldstyle #1% \endgroup} \let\TextOldstyle=\beton@oldstyle \providecommand\MathOldstyle{\mathgroup\symletters} \DeclareOption{concrete-math} {\DeclareSymbolFont{operators}{OT1}{ccr}{m}{n}% \DeclareSymbolFont{letters}{OML}{ccm}{m}{it}} \def\dash---{\thinspace---\hskip.16667em\relax} \def\qback{\kern-.15em} % between , or . and '' \def\t#1{{\edef\next{\the\font}\beton@oldstyle\accent"7F\next#1}} \ProcessOptions \AtBeginDocument{\normalsize} \endinput -- 30 --