blob: 5f2f4c5cce50d708503ba3baa98ceec41ce7f001 (
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
|
%%
%% This is file `wrapfig-xetex-bidi.def',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% bidi.dtx (with options: `wrapfig-xetex-bidi.def')
%%
%% ______________________________________
%% Copyright © 2009–2012 Vafa Khalighi
%%
%% License information appended.
%%
%%
\ProvidesFile{wrapfig-xetex-bidi.def}[2010/07/25 v0.2 bidi adaptations for wrapfig package for XeTeX engine]
\let\WF@@everypar\bidi@n@everypar
\def\WF@putfigmaybe{%
\ifinner
\vskip-\parskip \global\WF@floatfalse
\let\pagetotal\maxdimen % kludge flag for "not top of page"
\else % outer page
\@tempdima\pagedepth % save page depth
{\advance\parskip\if@RTL\baselineskip\else\@tempdima\fi\vskip-\parskip}% back up to baseline
\penalty\interlinepenalty % update pg. parameters
\@tempdimb\pagegoal \advance\@tempdimb-\pagetotal % room left on page
\ifdim\@tempdimb<\z@ % \WF@info{Page overfull already;}%
\global\WF@floatfalse
\ifdim-\@tempdimb>\pageshrink \else \pagebreak \fi
\else
\ifdim\WF@size>\@tempdimb
\ifWF@float \dimen@.5\baselineskip \else \dimen@ 2\baselineskip\fi
\ifdim\pagestretch>\dimen@ \dimen@\pagestretch \fi
\ifdim\pagefilstretch>\z@ \dimen@\@tempdimb \fi
\ifdim\pagefillstretch>\z@ \dimen@\@tempdimb \fi
\advance\dimen@.5\baselineskip
\ifdim\dimen@>\@tempdimb % \WF@info{Page nearly full; can stretch}%
\global\WF@floatfalse \pagebreak
\fi
\else % \WF@info{Fits in \the\@tempdimb;}%
\global\WF@floatfalse
\fi\fi
\vskip\@tempdima\relax % (return erased page depth)
\fi
\noindent
\ifWF@float
\WF@fltmes
\else % putting here;
\WF@info{Put \WF@wfname here:}%
{\ifodd\if@twoside\c@page\else\@ne\fi % assign l/r to i/o placement
\lccode`i`l\lccode`o`r\else \lccode`i`r\lccode`o`l\fi
\xdef\WF@place{\the\lccode\lccode\WF@place}}% twice to get only l or r
\hbox to\z@{% llap or rlap depending on {l} or {r}; calc effective width
\@tempdima\wd\WF@box \@tempdimb\WF@ovh
\advance\@tempdima-\@tempdimb \advance\@tempdima\columnsep
\@tempdimb\hsize \advance\@tempdimb-\@tempdima
\xdef\WF@adjlw{\the\@tempdima}%
\ifnum `l=\WF@place % fig on left
\if@RTL%
\kern\@tempdimb \kern\columnsep
\def\@tempa{\hss}% position to left of the gap
\else%
\hss % figure overlaps space to the left
\def\@tempa{\kern\columnsep}% position to left of the gap
\fi%
\else % fig on right
\if@RTL%
\hss
\@tempdima\z@
\def\@tempa{\kern\columnsep}
\else%
\@tempdima\z@ % no left indentation
\kern\@tempdimb \kern\columnsep
\def\@tempa{\hss}% figure overlaps space to the right
\fi%
\fi
\ifdim\@tempdimb<\hsize
\xdef\WF@wrapil{\the\@tempdima \the\@tempdimb}% indentation and length
\xdef\WF@adjtlm{\the\@tempdima}%
\else
\xdef\WF@wrapil{\z@ \the\hsize}%
\xdef\WF@adjlw{\z@}\xdef\WF@adjtlm{\z@}%
\fi
\ifdim\pagetotal=\z@ % \WF@info{Put \WF@wfname at top of p.\thepage}%
\global\advance\WF@size-\intextsep
\else % \WF@info{Putting \WF@wfname in middle of page}%
\setbox\WF@box\hbox{\lower\intextsep\box\WF@box}%
\fi \dp\WF@box\z@ \box\WF@box \@tempa
}% end \hbox to 0pt
\aftergroup\WF@startwrapping % after the \endgroup which immediately follows
\fi}
%%
%% Copyright © 2009–2012 Vafa Khalighi <vkhalighi@me.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 `wrapfig-xetex-bidi.def'.
|