%\CheckSum{252} % % \iffalse % % Copyright (c) 1999-2001 Walter Schmidt % % This program may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.1 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.1 or later is part of all distributions of LaTeX % version 1999/06/01 or later. % % This program consists of the files hvmaths.txt, hvmaths.dtx % and hvmaths.ins. % % \fi % % \iffalse % \NeedsTeXFormat{LaTeX2e}[1997/12/01] %<*driver> \ProvidesFile{hvmaths.drv} % %<+package>\ProvidesPackage{hvmaths} [2001/05/06 v1.2b (WaS/MicroPress)] % %<*driver> \documentclass{ltxdoc} \usepackage{url} \begin{document} \DocInput{hvmaths.dtx} \end{document} % % \fi % % \GetFileInfo{hvmaths.drv} % \DeleteShortVerb{\|} % \MakeShortVerb{\+} % % \title{The \LaTeX{} macro package \textsf{hvmaths}} % \author{Walter Schmidt} % \date{(\fileversion{} -- \filedate)} % \maketitle % % % \section{Overview} % The \LaTeX{} macro package \textsf{hvmaths} % supports typesetting with the font familiy `Micropress HV-Math', version~1.2. % This font family is made up from Adobe Helvetica and additional % fonts so as to provide the character sets for \LaTeX's text, % text companion (partially) and mathematical font encodings. % % % \section{Usage} % Loading the package % \begin{verse} % +\usepackage{hvmaths}+ % \end{verse} % effects the following: % \begin{itemize} % \item % The default sans serif font family for typesetting text % is changed to \texttt{hvr}, i.\,e.\ Micropress HV-Math. % \item % The sans serif font family will be the default for the whole document. % \item The MicroPress~HV-Math fonts will be used for typesetting math, too. % \item A new mathematical alphabet +\mathbold+ provides bold slanted % letters, including Greek. % \item The HV-Math versions of the AMS fonts are used, when the % packages \textsf{amsfonts} or \textsf{amssymb} are loaded % additionally. % \end{itemize} % Using the \textsf{hvmaths} package requires also the package % \textsf{keyval}, which is part of the \textsc{Graphics} bundle % and should be part of any decent \LaTeX\ system. % % % \subsection{Font encoding} % The package does \emph{not} change the default output font % encoding from OT1. It is, however, recommended to make use of % HV-Math through the extended T1 and TS1 encodings, % so as to provide access to all glyphs. % This is enabled by the following additional commands: % \begin{verse} % +\usepackage[T1]{fontenc}+\\ % +\usepackage{textcomp}+ % \end{verse} % % % \subsection{Inter-line spacing} % Due to the relatively large x-height of Helvetica, the leading % of the standard \LaTeX{} document classes may be to small. % Since this is a question of document design and line width, % the package does \emph{not} care for this. (See, however, the % description of the \textsf{scaled} option below!) % % % \subsection{Package options} % \subsubsection{The option \textsf{slantedGreek}} % When the macro package is loaded using this option, % uppercase Greek letters will, by default, be slanted. % Regardless of the option, the new commands % +\upDelta+ and +\upOmega+ will \emph{always} provide an % upright \( \Delta \) and \( \Omega \). % % \subsubsection{The option \textsf{roman}} % This option will cause HV-Math to be mapped % to the default `roman' font family instead of % the `sans serif' one. This is provided for compatibility with the % package \textsf{hvmath} only and should normally not be used. % % \subsubsection{The option \textsf{sans}} % Loading the package with this option will only change % the sans serif text font family to Helvetica. % The default font family and the math fonts are untouched. % Thus, the \textsf{hvmaths} package will behave like the PSNFSS % package \textsf{helvet}. % % Using both \textsf{sans} and \textsf{roman} does not % make sense, of course, and the \textsf{sans} option is ignored then. % % % \subsubsection{The option \textsf{scaled}} % The cap height of Helvetica is noticeably larger than the cap height % of most other fonts (incl.\ CM) when used at the same nominal size. % As a result, it may become difficult to mix fonts or add further % math alphabets. % This can be fixed by loading the \textsf{hvmaths} % package with the option %\texttt{[scaled=}$\langle\textit{scale}\rangle$\texttt{]}, % e.g.: % \begin{quote} % +\usepackage[scaled=.92]{hvmaths}+ % \end{quote} % This will load the font family \texttt{hvr} (Helvetica) for sans-serif, % scaled down to 92\% of its `natural' size, which is suitable % for use with Adobe Times. % % The $\langle$\textit{scale}$\rangle$ can be omitted: % \begin{quote} % +\usepackage[scaled]{hvmaths}+ % \end{quote} % A default scaling of 0.95 will be assumed then, which makes the % height of the Helvetica capitals comply with most other typeface % families. % % As a side effect, % the default line spacing of the standard \LaTeX{} document classes % may be sufficient for the now scaled-down Helvetica, % especially when the line width is not too large. % % % \section{Availability and support} % The latest version of this package can be obtained from the directory % \begin{verse} % \path{macros/latex/contrib/supported/psnfssx/hvmath} % \end{verse} % of any CTAN host. % % \noindent The HV-Math fonts are provided by % \begin{verse} % MicroPress, Inc.\\ % 6830~Harrow~Street, % Forest Hills NY 11375, % USA\\ % \path{} % \end{verse} % Please, address questions or bug reports via email to % \begin{verse} % \path{}. % \end{verse} % % \StopEventually{\par\vfill\noindent{\sffamily\footnotesize % Adobe is a trademark of Adobe Systems Incorporated. % Helvetica is a trademark of Linotype-Hell AG. % HV-Math is a trademark of MicroPress, Inc. % \par }} % % % \section{The package} % % \subsection{Declaring and processing options} % Options processing uses the \textsf{keyval} package % and a hack borrowed from \textsf{hyperref}: % \begin{macrocode} %<*package> \RequirePackage{keyval} \newif\ifHv@slantedGreek \newif\ifHv@roman \newif\ifHv@sans \define@key{Hvm}{scaled}[.95]{% \expandafter\def\csname OM1@hvr@scale\endcsname{#1} \expandafter\def\csname OT1@hvr@scale\endcsname{#1} \expandafter\def\csname T1@hvr@scale\endcsname{#1} } \define@key{Hvm}{slantedGreek}[true]{% \csname Hv@slantedGreek#1\endcsname } \define@key{Hvm}{roman}[true]{% \csname Hv@roman#1\endcsname } \define@key{Hvm}{sans}[true]{% \csname Hv@sans#1\endcsname } \def\ProcessOptionsWithKV#1{% \let\@tempc\relax \let\Hv@tempa\@empty \@for\CurrentOption:=\@classoptionslist\do{% \@ifundefined{KV@#1@\CurrentOption}% {}% {\edef\Hv@tempa{\Hv@tempa,\CurrentOption,}}% }% \edef\Hv@tempa{% \noexpand\setkeys{#1}{% \Hv@tempa\@ptionlist{\@currname.\@currext}% }% }% \Hv@tempa } \ProcessOptionsWithKV{Hvm} \AtEndOfPackage{% \let\@unprocessedoptions\relax } % \end{macrocode} % The HV-Math \texttt{.fd} files will evaluate % +\T1@hvr@scale+, +\OT1@hvr@scale+ and +\OM1@hvr@scale+, % thus determining whether or not the fonts are to be scaled. % % % \subsection{Setting up the text fonts} % \begin{macrocode} \ifHv@roman \Hv@sansfalse \DeclareFontSubstitution{OT1}{hvr}{m}{n} \renewcommand{\rmdefault}{hvr} \else \renewcommand{\sfdefault}{hvr} \ifHv@sans\else \renewcommand{\familydefault}{\sfdefault} \fi \fi % \end{macrocode} % % % \subsection{Setting up the math fonts} % The remaining code is not to be executed when the \textsf{sans} % option has been specified: % \begin{macrocode} \ifHv@sans\endinput\fi % \end{macrocode} % \begin{macrocode} \DeclareSymbolFont{operators}{OT1}{hvr}{m}{n}% \DeclareSymbolFont{letters}{OML}{hvm}{m}{it}% \DeclareSymbolFont{symbols}{OMS}{hvsy}{m}{n}% \DeclareSymbolFont{largesymbols}{OMX}{hvex}{m}{n}% \SetSymbolFont{operators}{bold}{OT1}{hvr}{bx}{n}% \SetSymbolFont{letters}{bold}{OML}{hvm}{b}{it}% \SetSymbolFont{symbols}{bold}{OMS}{hvsy}{b}{n}% \DeclareMathAlphabet{\mathbf}{OT1}{hvr}{bx}{n}% \DeclareMathAlphabet{\mathit}{OT1}{hvr}{m}{it}% \SetMathAlphabet\mathit{bold}{OT1}{hvr}{bx}{it}% % \end{macrocode} % % Define +\hslash+: % \begin{macrocode} \DeclareMathSymbol{\hbar}{\mathord}{letters}{128} % \end{macrocode} % % Define +\mathbold+: % \begin{macrocode} \DeclareMathAlphabet{\mathbold}{OML}{hvm}{b}{it}% % \end{macrocode} % % Make +\mathbold+ act on lowercase Greek, too: % \begin{macrocode} \DeclareMathSymbol{\alpha}{\mathalpha}{letters}{11} \DeclareMathSymbol{\beta}{\mathalpha}{letters}{12} \DeclareMathSymbol{\gamma}{\mathalpha}{letters}{13} \DeclareMathSymbol{\delta}{\mathalpha}{letters}{14} \DeclareMathSymbol{\epsilon}{\mathalpha}{letters}{15} \DeclareMathSymbol{\zeta}{\mathalpha}{letters}{16} \DeclareMathSymbol{\eta}{\mathalpha}{letters}{17} \DeclareMathSymbol{\theta}{\mathalpha}{letters}{18} \DeclareMathSymbol{\iota}{\mathalpha}{letters}{19} \DeclareMathSymbol{\kappa}{\mathalpha}{letters}{20} \DeclareMathSymbol{\lambda}{\mathalpha}{letters}{21} \DeclareMathSymbol{\mu}{\mathalpha}{letters}{22} \DeclareMathSymbol{\nu}{\mathalpha}{letters}{23} \DeclareMathSymbol{\xi}{\mathalpha}{letters}{24} \DeclareMathSymbol{\pi}{\mathalpha}{letters}{25} \DeclareMathSymbol{\rho}{\mathalpha}{letters}{26} \DeclareMathSymbol{\sigma}{\mathalpha}{letters}{27} \DeclareMathSymbol{\tau}{\mathalpha}{letters}{28} \DeclareMathSymbol{\upsilon}{\mathalpha}{letters}{29} \DeclareMathSymbol{\phi}{\mathalpha}{letters}{30} \DeclareMathSymbol{\chi}{\mathalpha}{letters}{31} \DeclareMathSymbol{\psi}{\mathalpha}{letters}{32} \DeclareMathSymbol{\omega}{\mathalpha}{letters}{33} \DeclareMathSymbol{\varepsilon}{\mathalpha}{letters}{34} \DeclareMathSymbol{\vartheta}{\mathalpha}{letters}{35} \DeclareMathSymbol{\varpi}{\mathalpha}{letters}{36} \DeclareMathSymbol{\varphi}{\mathalpha}{letters}{39} \DeclareMathSymbol{\varrho}{\mathalpha}{letters}{37} \DeclareMathSymbol{\varsigma}{\mathalpha}{letters}{38} % \end{macrocode} % % The option \textsf{slantedGreek}: % \begin{macrocode} \let\upOmega\Omega \let\upDelta\Delta \ifHv@slantedGreek \DeclareMathSymbol{\Gamma}{\mathalpha}{letters}{0} \DeclareMathSymbol{\Delta}{\mathalpha}{letters}{1} \DeclareMathSymbol{\Theta}{\mathalpha}{letters}{2} \DeclareMathSymbol{\Lambda}{\mathalpha}{letters}{3} \DeclareMathSymbol{\Xi}{\mathalpha}{letters}{4} \DeclareMathSymbol{\Pi}{\mathalpha}{letters}{5} \DeclareMathSymbol{\Sigma}{\mathalpha}{letters}{6} \DeclareMathSymbol{\Upsilon}{\mathalpha}{letters}{7} \DeclareMathSymbol{\Phi}{\mathalpha}{letters}{8} \DeclareMathSymbol{\Psi}{\mathalpha}{letters}{9} \DeclareMathSymbol{\Omega}{\mathalpha}{letters}{10} \fi % \end{macrocode} % % % \subsection{Peaceful coexistence with AMS-\LaTeX} % \begin{macrocode} \AtBeginDocument{% % \end{macrocode} % % Fix multiple integrals from \textsf{amsmath} for use with HV-Math fonts: % \begin{macrocode} \@ifpackageloaded{amsmath}{% \def\intkern@{\mkern-6mu} }{} % \end{macrocode} % % Use the HV-Math versions of the AMS symbol fonts: % \begin{macrocode} \expandafter\ifx\csname OM1@hvr@scale\endcsname\relax \let\@l@scale\@empty \else \edef\@l@scale{s*[\csname OM1@hvr@scale\endcsname]}% \fi \DeclareFontFamily{U}{msa}{} \DeclareFontShape{U}{msa}{m}{n}{<->\@l@scale hvam10}{} \DeclareFontFamily{U}{msb}{} \DeclareFontShape{U}{msb}{m}{n}{<->\@l@scale hvbm10}{} % \end{macrocode} % \begin{macrocode} } % \end{macrocode} % % % \subsection{Initialization} % Finally, change the current font to `Helvetica': % \begin{macrocode} \normalfont % % \end{macrocode} % % % \section*{DocStrip modules in this file \texttt{hvmaths.dtx}} % \begin{quote} % \begin{tabular}{ll} % module: & contents:\\[0.5ex] % +package+ & package \textsf{hvmaths}\\ % +driver+ & driver for documentation \\ % \end{tabular} % \end{quote} % The next line of code prevents DocStrip from adding the % character table to the modules: % \begin{macrocode} %\endinput % \end{macrocode} % \Finale %% \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 \~} %%