From 0911a28069c130f2db6a4698711e502ced60420b Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Thu, 12 Jan 2006 23:52:54 +0000
Subject: chemarrow

git-svn-id: svn://tug.org/texlive/trunk@749 c570f23f-e606-0410-a88d-b1316a301751
---
 .../texmf-dist/tex/latex/chemarrow/chemarrow.sty   | 167 +++++++++++++++++++++
 1 file changed, 167 insertions(+)
 create mode 100644 Master/texmf-dist/tex/latex/chemarrow/chemarrow.sty

(limited to 'Master/texmf-dist/tex/latex/chemarrow/chemarrow.sty')

diff --git a/Master/texmf-dist/tex/latex/chemarrow/chemarrow.sty b/Master/texmf-dist/tex/latex/chemarrow/chemarrow.sty
new file mode 100644
index 00000000000..fae4e2e841b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/chemarrow/chemarrow.sty
@@ -0,0 +1,167 @@
+%
+% New arrow heads for chemical reaction schemes
+%
+% Author: Thomas Schroeder schroeder@ictw.chemie.uni-karlsruhe.de
+%
+% Version: 0.7 February 3 2001
+%
+% macro chemarrow.sty based on TeXBook and a source file provided
+% by Andreas Hertwig Andreas.Hertwig@chemie.uni-karlsruhe.de
+%
+% font arrow.mf based on cryst.mf by Ulrich Mueller
+%
+%----------------------------------------------------------------------------
+% TeX Usage of various Chemical Arrow drawing macros
+%-----------------------------------------------------------------------------
+% \chemarrow                                % simple unsized reaction arrow
+% \larrowfill{90pt}                         % parameter is length of harpoon
+% \rarrowfill{90pt}                         % parameter is length of harpoon
+% \rightleftharpoonsfill{90pt}              % parameter is length of harpoons
+% \leftrightharpoonsfill{90pt}              % parameter is length of harpoons
+% \autoleftarrow{upper_stuff}{lower_stuff}          % sizes automatically
+% \autorightarrow{upper_stuff}{lower_stuff}         % sizes automatically
+% \autorightleftharpoons{upper_stuff}{lower_stuff}  % sizes automatically
+% \autoleftrightharpoons{upper_stuff}{lower_stuff}  % sizes automatically
+%----------------------------------------------------------------------------
+\DeclareFontFamily{U}{arr}{\hyphenchar\font=-1}
+%\DeclareFontShape{U}{arr}{m}{n}{<9> <10> <10.95> <12> <14.4> <17.28> <20.74> <24.88> <29.86> <35.83> <43.00> <51.6> <61.92> <74.3> <89.16> <107.0> arrow}{}
+\DeclareFontShape{U}{arr}{m}{n}{ <-> arrow}{}
+\newcommand{\arro}{\usefont{U}{arr}{m}{n}}
+%-----------------------------------------------------------------------------
+% definitions taken from `am-plain.tex'
+%
+\catcode`@=11
+\newdimen\z@ \z@=0pt % can be used both for 0pt and 0
+\newskip\z@skip \z@skip=0pt plus0pt minus0pt
+\def\m@th{\mathsurround=\z@}%   from am-plain.tex
+%-----------------------------------------------------------------------------
+% dimensions used in calculating the `auto' fill macros
+%
+ \newdimen\autotop  \newdimen\autobottom    \newdimen\autosize
+%-----------------------------------------------------------------------------
+% Same as `\rightarrowfill' from the TeXBook, but with `\leftharpoondown'
+%
+\def\leftharpoondownfill{$\m@th\mathord{\textrm{\arro\symbol{70}}}\mkern-6mu%
+  \cleaders\hbox{$\mkern-2mu\mathord{\textrm{\arro\symbol{71}}}\mkern-2mu$}\hfill
+  \mkern-6mu\mathord{\textrm{\arro\symbol{71}}}$}
+%-----------------------------------------------------------------------------
+
+\def\leftharpoonupfill{$\m@th\mathord{\textrm{\arro\symbol{69}}}\mkern-6mu%
+  \cleaders\hbox{$\mkern-2mu\mathord{\textrm{\arro\symbol{71}}}\mkern-2mu$}\hfill
+  \mkern-6mu\mathord{\textrm{\arro\symbol{71}}}$}
+
+
+%-----------------------------------------------------------------------------
+% Same as `\rightarrowfill' from the TeXBook, but with `\rightharpoondown'
+%
+
+\def\rightharpoonupfill{$\m@th\mathord{\textrm{\arro\symbol{71}}}\mkern-6mu%
+  \cleaders\hbox{$\mkern-2mu\mathord{\textrm{\arro\symbol{71}}}\mkern-2mu$}\hfill
+  \mkern-6mu\mathord{\textrm{\arro\symbol{66}}}$}
+
+
+\def\rightharpoondownfill{$\m@th\mathord{\textrm{\arro\symbol{71}}}\mkern-6mu%
+  \cleaders\hbox{$\mkern-2mu\mathord{\textrm{\arro\symbol{71}}}\mkern-2mu$}\hfill
+  \mkern-6mu\mathord{\textrm{\arro\symbol{67}}}$}
+
+
+%-----------------------------------------------------------------------------
+
+\def\leftchemarrowfill{$\m@th\mathord{\textrm{\arro\symbol{68}}}\mkern-6mu%
+  \cleaders\hbox{$\mkern-2mu\mathord{\textrm{\arro\symbol{71}}}\mkern-2mu$}\hfill
+  \mkern-6mu\mathord{\textrm{\arro\symbol{71}}}$}
+
+%\def\rightchemarrowfill{$\m@th\mathord-\mkern-6mu%
+%  \cleaders\hbox{$\mkern-2mu\mathord-\mkern-2mu$}\hfill
+%  \mkern-6mu\mathord{\textrm{\arro\symbol{65}}}$}
+
+\def\rightchemarrowfill{$\m@th\mathord{\textrm{\arro\symbol{71}}}\mkern-6mu%
+  \cleaders\hbox{$\mkern-2mu\mathord{\textrm{\arro\symbol{71}}}\mkern-2mu$}\hfill
+  \mkern-6mu\mathord{\textrm{\arro\symbol{65}}}$}
+
+
+%-----------------------------------------------------------------------------
+% Similar to `\rightleftharpoons from the TeXBook,
+%    except using `\rightharpoonupfill' and `\rightharpoondownfill'.
+%
+% The first parameter is the length of the harpoons.
+%
+\def\rightleftharpoonsfill#1{%
+\mathop{\vcenter{\hbox{\ooalign{\raise.4ex
+          \hbox{$\hbox to#1{\hspace*{.05em}\rightharpoonupfill}$}\crcr
+        $\hbox to#1{\leftharpoondownfill\hspace*{.05em}}$}}}}\limits}
+%-----------------------------------------------------------------------------
+
+\def\leftrightharpoonsfill#1{%
+\mathop{\vcenter{\hbox{\ooalign{\raise.4ex
+          \hbox{$\hbox to#1{\leftharpoonupfill\hspace*{.05em}}$}\crcr
+        $\hbox to#1{\hspace*{.05em}\rightharpoondownfill}$}}}}\limits}
+
+
+%-----------------------------------------------------------------------------
+%   define the simplest possible chemical reaction right arrow, unsized
+%
+\def\chemarrow{\textrm{\arro\symbol{65}}}
+%-----------------------------------------------------------------------------
+
+%-----------------------------------------------------------------------------
+% Make a long leftarrow with its length specified by the passed parameter:
+% Usage: \larrowfill{125pt}  or  \larrowfill{1.0in}   or   \larrowfill{2.2cm}
+%
+\def\larrowfill#1{\mathop{\hbox to #1{\mathstrut\leftchemarrowfill}}\limits}
+%-----------------------------------------------------------------------------
+
+%-----------------------------------------------------------------------------
+% Make a long rightarrow with its length specified by the passed parameter:
+% Usage: \rarrowfill{125pt}  or  \rarrowfill{1.0in}   or   \rarrowfill{2.2cm}
+%
+\def\rarrowfill#1{\mathop{\hbox to #1{\mathstrut\rightchemarrowfill}}\limits}
+%-----------------------------------------------------------------------------
+
+%-----------------------------------------------------------------------------
+% Make a long leftarrow with its length slightly longer than the larger
+%    of the lower and upper parameters:
+%
+% Usage: \autoleftarrow{upper_stuff}{lower_stuff}
+%
+\def\autoleftarrow#1#2{{%
+    \setbox0=\hbox{#1}\autotop=\wd0\setbox0=\hbox{#2}\autobottom=\wd0%
+    \ifdim\autobottom>\autotop\autosize=\autobottom\else\autosize=\autotop\fi%
+    \advance\autosize by 2em%
+    \mathop{\hbox to \autosize{\mathstrut\leftchemarrowfill}}\limits%
+    ^{\hbox{#1}}_{\hbox{#2}}}}%
+%-----------------------------------------------------------------------------
+
+%-----------------------------------------------------------------------------
+% Make a long rightarrow with its length slightly longer than the larger
+%    of the lower and upper parameters:
+%
+% Usage: \autorightarrow{upper_stuff}{lower_stuff}
+%
+\def\autorightarrow#1#2{{%
+    \setbox0=\hbox{#1}\autotop=\wd0\setbox0=\hbox{#2}\autobottom=\wd0%
+    \ifdim\autobottom>\autotop\autosize=\autobottom\else\autosize=\autotop\fi%
+    \advance\autosize by 2em%
+    \mathop{\hbox to \autosize{\mathstrut\rightchemarrowfill}}\limits%
+    ^{\hbox{#1}}_{\hbox{#2}}}}%
+%-----------------------------------------------------------------------------
+
+%-----------------------------------------------------------------------------
+\def\autorightleftharpoons#1#2{%
+\setbox0=\hbox{#1}\autotop=\wd0\setbox0=\hbox{#2}\autobottom=\wd0%
+\ifdim\autobottom>\autotop\autosize=\autobottom\else\autosize=\autotop\fi%
+\advance\autosize by 2em%
+\mathop{\vcenter{\hbox{\ooalign{\raise.4ex%
+          \hbox{$\hbox to \autosize{\hspace*{.05em}\rightharpoonupfill}$}\crcr%
+                $\hbox to \autosize{\leftharpoondownfill\hspace*{.05em}}$}}}}%
+            \limits^{\hbox{#1}}_{\hbox{#2}}}
+%-----------------------------------------------------------------------------
+
+\def\autoleftrightharpoons#1#2{%
+\setbox0=\hbox{#1}\autotop=\wd0\setbox0=\hbox{#2}\autobottom=\wd0%
+\ifdim\autobottom>\autotop\autosize=\autobottom\else\autosize=\autotop\fi%
+\advance\autosize by 2em%
+\mathop{\vcenter{\hbox{\ooalign{\raise.4ex%
+          \hbox{$\hbox to \autosize{\leftharpoonupfill\hspace*{.05em}}$}\crcr%
+                $\hbox to \autosize{\hspace*{.05em}\rightharpoondownfill}$}}}}%
+            \limits^{\hbox{#1}}_{\hbox{#2}}}
-- 
cgit v1.2.3

