summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/crbox/crbox.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/crbox/crbox.sty')
-rwxr-xr-xmacros/latex/contrib/crbox/crbox.sty116
1 files changed, 116 insertions, 0 deletions
diff --git a/macros/latex/contrib/crbox/crbox.sty b/macros/latex/contrib/crbox/crbox.sty
new file mode 100755
index 0000000000..95a619f03d
--- /dev/null
+++ b/macros/latex/contrib/crbox/crbox.sty
@@ -0,0 +1,116 @@
+%%
+%% This is file `crbox.sty',
+
+%%
+%% __________________________________
+%% Copyright © 2011–2013 Persian TeX Group
+%%
+%% License information appended.
+%%
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{crbox}[2013/04/04 typesetting boxes with crossing lines in the four corners]
+\RequirePackage{biditools}
+\newif\ifcurved
+\newif\ifhollowcurved
+
+\newdimen\length@corner@paper \length@corner@paper1cm
+\newdimen\thickness@corner@paper \thickness@corner@paper0.4pt
+
+\newcommand\crbox[1][]{\def\@tempa{#1}%
+\ifx\@tempa\@void \toks@{}\else
+\toks@\expandafter{\csname#1true\endcsname}\fi
+\edef\option@cr{\noexpand\curvedfalse\noexpand\hollowcurvedfalse\the\toks@}%
+\leavevmode\@crbox}
+
+\let\option@cr\@void
+\bidi@AtEndPreamble{%
+\@ifpackageloaded{bidi}{%
+\def\@crbox#1{\vbox{\setbox\tw@\vbox{\vskip\fboxsep
+\hbox{\hskip\fboxsep\hbox{#1}\hskip\fboxsep}%
+\vskip\fboxsep}\offinterlineskip%
+\dimen@\thickness@corner@paper \@tempdima\length@corner@paper
+\option@cr \font@corner \@tempdimb\z@
+\ifhollowcurved \advance\@tempdima-1em \curvedtrue
+\let\llap\hbox \let\rlap\hbox
+\else \@tempdimb-\dimen@ \fi
+\advance\@tempdimb\@tempdima
+\ifcurved
+\def\@makecorner##1##2{\setbox\z@\hbox to \wd\tw@
+{\rlap{\if@RTL\char##2\else\char##1\fi}\copy\thr@@\hfil\copy\thr@@\llap{\if@RTL\char##1\else\char##2\fi}}%
+\ifhollowcurved\else\dp\z@\z@ \ht\z@\dimen@\fi}%
+\else
+\def\@makecorner##1##2{\setbox\z@\hbox to \wd\tw@
+{\copy\thr@@\hfil\copy\thr@@}}%
+\fi
+\ifdim\dimen@<0.4\p@
+\chardef\ch@pa16 \chardef\r@pa17%
+\chardef\r@ba18 \chardef\ch@ba19%
+\else%
+\chardef\ch@pa8 \chardef\r@pa9%
+\chardef\r@ba10 \chardef\ch@ba11%
+\fi %
+\setbox\thr@@\hbox to \@tempdima{\leaders\hrule\@height\dimen@\hfil}%
+\setbox\@ne\vbox to \@tempdimb{\leaders\vrule\@width\dimen@\vfil}%
+\@makecorner\ch@ba\r@ba
+\setbox\@ne\hbox to \wd\tw@{\copy\@ne\hfil\copy\@ne}%
+\copy\z@ \copy\@ne
+\vskip-\ht\@ne \vskip-\dp\z@ \vskip-\ht\z@
+\copy\tw@
+\@makecorner\ch@pa\r@pa
+\vskip-\ht\z@ \vskip-\dp\z@ \vskip-\ht\@ne
+\copy\@ne\copy\z@}}%
+}{%
+\def\@crbox#1{\vbox{\setbox\tw@\vbox{\vskip\fboxsep
+\hbox{\hskip\fboxsep\hbox{#1}\hskip\fboxsep}%
+\vskip\fboxsep}\offinterlineskip%
+\dimen@\thickness@corner@paper \@tempdima\length@corner@paper
+\option@cr \font@corner \@tempdimb\z@
+\ifhollowcurved \advance\@tempdima-1em \curvedtrue
+\let\llap\hbox \let\rlap\hbox
+\else \@tempdimb-\dimen@ \fi
+\advance\@tempdimb\@tempdima
+\ifcurved
+\def\@makecorner##1##2{\setbox\z@\hbox to \wd\tw@
+{\rlap{\char##1}\copy\thr@@\hfil\copy\thr@@\llap{\char##2}}%
+\ifhollowcurved\else\dp\z@\z@ \ht\z@\dimen@\fi}%
+\else
+\def\@makecorner##1##2{\setbox\z@\hbox to \wd\tw@
+{\copy\thr@@\hfil\copy\thr@@}}%
+\fi
+\ifdim\dimen@<0.4\p@
+\chardef\ch@pa16 \chardef\r@pa17%
+\chardef\r@ba18 \chardef\ch@ba19%
+\else%
+\chardef\ch@pa8 \chardef\r@pa9%
+\chardef\r@ba10 \chardef\ch@ba11%
+\fi %
+\setbox\thr@@\hbox to \@tempdima{\leaders\hrule\@height\dimen@\hfil}%
+\setbox\@ne\vbox to \@tempdimb{\leaders\vrule\@width\dimen@\vfil}%
+\@makecorner\ch@ba\r@ba
+\setbox\@ne\hbox to \wd\tw@{\copy\@ne\hfil\copy\@ne}%
+\copy\z@ \copy\@ne
+\vskip-\ht\@ne \vskip-\dp\z@ \vskip-\ht\z@
+\copy\tw@
+\@makecorner\ch@pa\r@pa
+\vskip-\ht\z@ \vskip-\dp\z@ \vskip-\ht\@ne
+\copy\@ne\copy\z@}}%
+}}
+\font\font@corner=ghab
+
+\endinput
+%%
+%% Copyright © 2011–2013 by Persian TeX Group <persian-tex@tug.org>
+%%
+%% 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 Persian TeX Group.
+%%
+%%
+%%
+%%
+%%
+%% End of file `crbox.sty'.