%% %% This is file `lettrine.sty' v1.6. %% %% IMPORTANT NOTICE: %% %% For the copyright see the source file `lettrine.dtx'. %% %% This file can be distributed and/or modified under the terms %% 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 work has the LPPL maintenance status "maintained". %% %% The Current Maintainer of this work is Daniel Flipo. %% %% Please report errors to: %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesFile{lettrine.sty} [2006/03/17 v1.6 (Daniel Flipo)] \NeedsTeXFormat{LaTeX2e}[1999/12/01] \RequirePackage{keyval} \newcounter{DefaultLines} \setcounter{DefaultLines}{2} \newcommand*{\DefaultOptionsFile}{\relax} \newcommand*{\DefaultLoversize}{0} \newcommand*{\DefaultLraise}{0} \newcommand*{\DefaultLhang}{0} \newdimen\DefaultFindent \setlength{\DefaultFindent}{\z@} \newdimen\DefaultNindent \setlength{\DefaultNindent}{0.5em} \newdimen\DefaultSlope \setlength{\DefaultSlope}{\z@} \newif\ifLettrineImage \newsavebox{\L@lbox} \newsavebox{\L@tbox} \newcounter{L@lines} \newdimen\L@Pindent \newdimen\L@Findent \newdimen\L@Nindent \newdimen\L@lraise \newdimen\L@first \newdimen\L@next \newdimen\L@slope \newdimen\L@height \newcommand*{\L@file}{} \newcommand*{\L@hang}{} \newcommand*{\L@oversize}{} \newcommand*{\L@raise}{} \newcommand*{\L@ante}{} \newif\ifL@image \newcommand*{\LettrineTextFont}{\scshape} \def\Lettrine@height{% \@tempdima=\baselineskip \setlength{\L@height}{\theL@lines\@tempdima}% \ifnum\theL@lines>1 \addtolength{\L@height}{-\@tempdima}% \fi \sbox{\L@tbox}{\LettrineTextFont x}% \addtolength{\L@height}{\ht\L@tbox}% \addtolength{\L@height}{\L@oversize\L@height}} \newcommand*{\LettrineFontHook}{} \newcommand*{\LettrineTestString}{X} \newcommand*{\LettrineFont}{% \Lettrine@height \sbox{\L@tbox}{\LettrineFontHook\fontsize{\L@height}{\L@height}% \selectfont \LettrineTestString}% \@tempcntb=\ht\L@tbox \@tempcnta=\L@height \multiply\@tempcnta by 100 \divide\@tempcntb by 100 \divide\@tempcnta by \@tempcntb \advance\@tempcnta by -9999 \ifnum\@tempcnta>0 \def\@tempa{1.\the\@tempcnta}% \else \def\@tempa{1}% \fi \LettrineFontHook \fontsize{\@tempa\L@height}{\@tempa\L@height}% \selectfont } \newcommand*{\LettrineFontEPS}{% \Lettrine@height\LettrineFontHook \includegraphics[height=\L@height]} \define@key{L}{lines}{\setcounter{L@lines}{#1}} \define@key{L}{lhang}{\renewcommand*{\L@hang}{#1}} \define@key{L}{loversize}{\renewcommand*{\L@oversize}{#1}} \define@key{L}{lraise}{\renewcommand*{\L@raise}{#1}} \define@key{L}{ante}{\renewcommand*{\L@ante}{#1}} \define@key{L}{findent}{\setlength{\L@Findent}{#1}} \define@key{L}{nindent}{\setlength{\L@Nindent}{#1}} \define@key{L}{slope}{\setlength{\L@slope}{#1}} \define@key{L}{image}[true]{\csname L@image#1\endcsname} \newcommand*{\LettrineOptionsFor}[2]{\@namedef{l@#1-keys}{#2}} \newdimen\LettrineWidth \newdimen\LettrineHeight \newdimen\LettrineDepth \def\lettrine{\@ifnextchar[\@lettrine{\@lettrine[]}} \def\@lettrine[#1]#2#3{% \setcounter{L@lines}{\theDefaultLines}% \renewcommand*{\L@hang}{\DefaultLhang}% \renewcommand*{\L@oversize}{\DefaultLoversize}% \renewcommand*{\L@raise}{\DefaultLraise}% \renewcommand*{\L@ante}{}% \setlength{\L@Findent}{\DefaultFindent}% \setlength{\L@Nindent}{\DefaultNindent}% \setlength{\L@slope}{\DefaultSlope}% \ifLettrineImage\L@imagetrue\else\L@imagefalse\fi \if\DefaultOptionsFile\relax \else \begingroup \InputIfFileExists{\DefaultOptionsFile}% {}% {\PackageWarning{lettrine.sty}% {File \DefaultOptionsFile\space not found}% }% \def\color##1##{\l@color{##1}}% \let\l@color\@gobbletwo \def\textcolor##1##{\l@textcolor{##1}}% \def\l@textcolor##1##2##3{##3}% \expandafter\ifx\csname l@#2-keys\endcsname\relax \gdef\l@LOKeys{}% \else \xdef\l@LOKeys{\csname l@#2-keys\endcsname}% \fi \endgroup \def\KV@prefix{KV@L@}% \let\@tempc\relax \expandafter\KV@do\l@LOKeys,\relax, \sbox{\L@lbox}{\LettrineFont #2}% \setlength{\LettrineWidth}{\wd\L@lbox}% \def\KV@prefix{KV@L@}% \let\@tempc\relax \expandafter\KV@do\l@LOKeys,\relax, \fi \setkeys{L}{#1}% \ifL@image \sbox{\L@lbox}{\LettrineFontEPS{#2}}% \else \sbox{\L@lbox}{\LettrineFont #2}% \fi \sbox{\L@tbox}{\LettrineTextFont{#3}}% \@tempdima=\baselineskip \ifnum\theL@lines=1 \setlength{\L@first}{\ht\L@lbox}% \addtolength{\L@first}{-\ht\L@tbox}% \setlength{\L@lraise}{\z@}% \else \setlength{\L@first}{-\theL@lines\@tempdima}% \addtolength{\L@first}{\@tempdima}% \sbox{\@tempboxa}{\LettrineTextFont x}% \addtolength{\L@first}{-\ht\@tempboxa}% \setlength{\L@lraise}{-\L@raise\L@first}% \addtolength{\L@first}{\L@lraise}% \addtolength{\L@first}{\ht\L@lbox}% \addtolength{\L@lraise}{-\theL@lines\@tempdima}% \addtolength{\L@lraise}{\@tempdima}% \fi \par \ifdim\L@first>0.2\p@\vskip\L@first\fi \setlength{\L@Pindent}{\wd\L@lbox}% \addtolength{\L@Pindent}{-\L@hang\wd\L@lbox}% \settowidth{\L@first}{\L@ante}% \addtolength{\L@Pindent}{\L@first}% \addtolength{\L@Pindent}{\L@Findent}% \setlength{\L@first}{\linewidth}% \addtolength{\L@first}{-\L@Pindent}% \addtolength{\L@Nindent}{\L@Pindent}% \setlength{\L@next}{\linewidth}% \addtolength{\L@next}{-\L@Nindent}% \addtolength{\L@Pindent}{\rightmargin}% \addtolength{\L@Nindent}{\rightmargin}% \setlength{\LettrineWidth}{\wd\L@lbox}% \setlength{\LettrineHeight}{\ht\L@lbox}% \setlength{\LettrineDepth}{\dp\L@lbox}% \addtocounter{L@lines}{1}% \def\L@parshape{\c@L@lines \the\L@Pindent \the\L@first}% \@tempcnta=\tw@ \@whilenum \@tempcnta<\c@L@lines\do{% \edef\L@parshape{\L@parshape \the\L@Nindent \the\L@next}% \addtolength{\L@Nindent}{\L@slope}% \addtolength{\L@next}{-\L@slope}% \advance\@tempcnta\@ne}% \edef\L@parshape{\L@parshape \rightmargin \the\linewidth}% \noindent \parshape=\L@parshape\relax \smash{\llap{\mbox{\L@ante}\raisebox{\L@lraise}{\usebox{\L@lbox}}% \hskip \the\L@Findent}}% \usebox{\L@tbox}% } \InputIfFileExists{lettrine.cfg} {\typeout{Loading lettrine.cfg}} {\typeout{lettrine.cfg not found, using default values}} \endinput %% %% End of file `lettrine.sty'.