\def\filename{pvscript.dtx} \def\fileversion{1.3} \def\filedate{2012/04/10} \let\docversion=\fileversion \let\docdate=\filedate % \iffalse meta-comment % % Copyright 1996-2012 by Gerd Neugebauer % % This file may be distributed and/or modified under the conditions % of the LaTeX Project Public License, either version 1.3c of this % license or (at your option) any later version. The latest version % of this license is in http://www.latex-project.org/lppl.txt and % version 1.3c or later is part of all distributions of LaTeX % version 2005/12/01 or later. % % This file has the LPPL maintenance status "maintained". % % \fi % \iffalse %%% File: pvscript.dtx %% Copyright (C) 1996-2012 Gerd Neugebauer %% all rights reserved. %<package>\NeedsTeXFormat{LaTeX2e} %<package>\ProvidesPackage{pvscript}[2012/04/10 v1.2 LaTeX package pvscript] %<*driver> \documentclass{ltxdoc} \usepackage{german} \selectlanguage{\english} \usepackage{pvscript} \GetFileInfo{pvscript.sty} \RecordChanges \PageIndex \begin{document} \title{The \texttt{pvscript} package\thanks {This file has version number \fileversion, dated \filedate.}\\ for use with \LaTeX2e} \author{Gerd Neugebauer\\Im Lerchelsb\"ohl 5\\64521 Gro\ss-Gerau\\Germany\\ \texttt{gene@gerd-neugebauer.de}} \date{\docdate} \maketitle \DocInput{pvscript.dtx} \end{document} %</driver> % \fi % % \CheckSum{63} %% \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 \~} % % \changes{v1.0}{1996/03/03}{First release} % \changes{v1.1}{1996/05/19}{Macro textpvscript added.} % \changes{v1.2}{1996/07/18}{Some commands made robust.} % \changes{v1.3}{2012/04/10}{License clarified and address updated.} % % % \section{Introduction} % % The font pvscript provides a handwritten font. It can be found on % the CTAN in the directory \texttt{tex-archive/fonts/script}. % This package provides means to use this font. % % This package has been created for an article in "`Die \TeX nische % Kom\"odie"' \cite{dtk96.1:neugebauer:krakelig}. This article % contains some more details on the package and its use. % % % \section{Usage} % % This file can be used as a package by placing its name % in the argument of |\usepackage|. Afterwards the font family pvscript % is defined. This could also have been done by providing a % font definition file. % % % \DescribeMacro{\pvscript} % The command |\pvscript| changes the current font family to pvscript and % the encoding to OT1. Usually this should be used in a \TeX{} group only % since it changes the font encoding and redefines the umlaut macro. % % The following example on the left produces the result on the % right.\smallskip % % \noindent % \begin{minipage}{.5\textwidth}\small\tt\raggedright % \verb|{\pvscript| Lorem ipsum dolor sit amet, consectetur % adipisicing elit, sed do eiusmod tempor incididunt ut labore et % dolore magna aliqua. Ut enim ad minim veniam, quis nostrud % exercitation ullamco laboris nisi ut aliquip ex ea commodo % consequat. Duis aute irure dolor in reprehenderit in voluptate % velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint % occaecat cupidatat non proident, sunt in culpa qui officia % deserunt mollit anim id est % laborum. \verb|}| \end{minipage}\hfill % \begin{minipage}{.45\textwidth} % \pvscript Lorem ipsum dolor sit amet, consectetur adipisicing % elit, sed do eiusmod tempor incididunt ut labore et dolore magna % aliqua. Ut enim ad minim veniam, quis nostrud exercitation % ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis % aute irure dolor in reprehenderit in voluptate velit esse cillum % dolore eu fugiat nulla pariatur. Excepteur sint occaecat % cupidatat non proident, sunt in culpa qui officia deserunt mollit % anim id est laborum. \end{minipage} \medskip % % \DescribeMacro{\textpvscript} % The macro |\textpvscript| typesets its argument in the pvscript font. % % The following example on the left produces the result on the % right.\smallskip % % \noindent % \begin{minipage}{.55\textwidth}\small\tt\raggedright % \verb|\textpvscript{| Lorem ipsum dolor sit\verb|}| amet, % consectetur adipisicing elit, sed do eiusmod tempor incididunt ut % labore et dolore magna aliqua.\end{minipage}\hfill % \begin{minipage}{.40\textwidth} % \textpvscript{Lorem ipsum dolor sit} amet, consectetur % adipisicing elit, sed do eiusmod tempor incididunt ut labore et % dolore magna aliqua. \end{minipage} \medskip % % % \begin{thebibliography}{1} % % \bibitem{dtk96.1:neugebauer:krakelig} % Gerd Neugebauer. % \newblock Von {\glqq}krakelig{\grqq} bis {\glqq}wie gemalt{\grqq}. % \newblock {\em {D}ie {\TeX}nische {K}om{\"o}die}, 1/96:25--42, June 1996. % % \end{thebibliography} % % \StopEventually{} % % % \section{Implementation} % % % First we declare a new font family for the pvscript font. % \begin{macrocode} \DeclareFontFamily{OT1}{pvscript}{} % \end{macrocode} % % This font is available in the normal shape and in a bold variant. % Here we can get the desired font by (silently) scaling the present fonts. % % \begin{macrocode} \DeclareFontShape{OT1}{pvscript}{m}{n}{<-> s * [12.84]script10}{} \DeclareFontShape{OT1}{pvscript}{bx}{n}{<-> s * [12.84]scriptb10}{} \DeclareFontShape{OT1}{pvscript}{b}{n}{<-> sub * pvscript/bx/n}{} % \end{macrocode} % % Next we define some macros to perform the mapping of umlaut % characters which have to be combined out of two characters each. % \begin{macrocode} \newcommand\pvscript@a{\mbox{\rlap{\kern.25em\symbol{34}}a}} \newcommand\pvscript@o{\mbox{\rlap{\kern.1em\symbol{34}}o}} \newcommand\pvscript@u{\mbox{\rlap{\kern.1em\symbol{34}}u}} \newcommand\pvscript@A{\mbox{\rlap{\kern.5em\raisebox{1ex}{\symbol{34}}}A}} \newcommand\pvscript@O{\mbox{\rlap{\kern.4em\raisebox{1ex}{\symbol{34}}}O}} \newcommand\pvscript@U{\mbox{\rlap{\kern.4em\raisebox{1ex}{\symbol{34}}}U}} % \end{macrocode} % % Now we define the font changing command. % % \begin{macro}{pvscript} % The macro |\pvscript| selects the pvscript family. % \begin{macrocode} \DeclareRobustCommand\pvscript{ \let\pvscript@original@umlaut=\" \def\"##1{% \@ifundefined{pvscript@##1}{% \pvscript@original@umlaut{##1}}{% \@nameuse{pvscript@##1}}}% \def\ss{ss}% \fontfamily{pvscript}% \fontencoding{OT1}% \selectfont} % \end{macrocode} % \end{macro} % % \begin{macro}{textpvscript} % The macro |\textpvscript| typesets its argument in the pvscript font. % \begin{macrocode} \newcommand\textpvscript[1]{\begingroup\pvscript #1\endgroup} % \end{macrocode} % \end{macro} % % \PrintChanges % \PrintIndex % % \Finale % \endinput