summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/bidi/wrapfig-xetex-bidi.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/bidi/wrapfig-xetex-bidi.def')
-rw-r--r--Master/texmf-dist/tex/latex/bidi/wrapfig-xetex-bidi.def101
1 files changed, 101 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/bidi/wrapfig-xetex-bidi.def b/Master/texmf-dist/tex/latex/bidi/wrapfig-xetex-bidi.def
new file mode 100644
index 00000000000..efda5dd6e15
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/bidi/wrapfig-xetex-bidi.def
@@ -0,0 +1,101 @@
+%%
+%% This is file `wrapfig-xetex-bidi.def',
+
+%%
+%% __________________________________
+%% Copyright © 2009-2010 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\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-2010 by Vafa Khalighi <vafakh84@gmail.com>
+%%
+%% Distributable 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 "maintained" (as per LPPL maintenance status)
+%% by Vafa Khalighi.
+%%
+%%
+%%
+%%
+%%
+%% End of file `wrapfig-xetex-bidi.def'.