summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/bidi/lettrine-xetex-bidi.def
blob: 59d258c057dc10b25e058c3c3c010d460f39335a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
%%
%% This is file `lettrine-xetex-bidi.def',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% bidi.dtx  (with options: `lettrine-xetex-bidi.def')
%% 
%%   ______________________________________
%%   Copyright © 2009–2013  Vafa Khalighi
%% 
%%   License information appended.
%% 
%% 
\ProvidesFile{lettrine-xetex-bidi.def}[2011/09/16 v0.1 bidi adaptations for lettrine package for XeTeX engine]
\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}%
    \settowidth{\LettrineWidth}{\usebox{\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}%
  \addtocounter{L@lines}{1}%
  \if@RTL\def\L@parshape{\c@L@lines 0pt \the\L@first}\else\def\L@parshape{\c@L@lines \the\L@Pindent \the\L@first}\fi
  \@tempcnta=\tw@
  \@whilenum \@tempcnta<\c@L@lines\do{%
     \if@RTL\edef\L@parshape{\L@parshape 0pt \the\L@next}\else\edef\L@parshape{\L@parshape \the\L@Nindent \the\L@next}\fi
     \addtolength{\L@Nindent}{\L@slope}%
     \addtolength{\L@next}{-\L@slope}%
     \advance\@tempcnta\@ne}%
  \if@RTL \edef\L@parshape{\L@parshape 0pt \the\linewidth}\else\edef\L@parshape{\L@parshape \rightmargin \the\linewidth}\fi
  \noindent\leavevmode
  \parshape=\L@parshape
  $\smash{\if@RTL\rlap{\hskip \the\L@Findent\mbox{\L@ante}\raisebox{\L@lraise}{\usebox{\L@lbox}}%
          }\else\llap{\mbox{\L@ante}\raisebox{\L@lraise}{\usebox{\L@lbox}}%
          \hskip \the\L@Findent}\fi}$%
  \usebox{\L@tbox}}
%% 
%% Copyright © 2009–2013  Vafa Khalighi <vafa[dot]kgh[at]gmail[dot]com>
%% 
%% It may be distributed and/or modified under the LaTeX Project Public License,
%% version 1.3c or higher (your choice). The latest version of
%% this license is at: http://www.latex-project.org/lppl.txt
%% 
%% This work is “author-maintained” (as per LPPL maintenance status)
%% by Vafa Khalighi.
%% 
%% 
%% 
%%
%% End of file `lettrine-xetex-bidi.def'.