\documentclass[german, DIV=9, pagesize=auto]{scrartcl}

\usepackage{fixltx2e}
\usepackage{etex}
\usepackage{lmodern}
\usepackage{mflogo}
\usepackage{wasysym}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{babel}
\usepackage{array}
\usepackage[utf8]{inputenc}
\usepackage{microtype}
\usepackage[unicode=true]{hyperref}

\newcommand*{\mail}[1]{\href{mailto:#1}{\texttt{#1}}}
\newcommand*{\pkg}[1]{\textsf{#1}}
\newcommand*{\cs}[1]{\texttt{\textbackslash#1}}
\makeatletter
\newcommand*{\cmd}[1]{\cs{\expandafter\@gobble\string#1}}
\makeatother

\addtokomafont{title}{\rmfamily}

\title{Das Paket \pkg{chemarrow}}
\subtitle{Neue Pfeilspitzen fuer chemische Reaktionen}
\author{Thomas Schroeder\\\mail{schroeder@ictw.chemie.uni-karlsruhe.de}}
\date{4. Februar 2001}


\begin{document}

\maketitle

\tableofcontents

\section{Wozu das ganze?}

\LaTeX\ ist sehr vielseitig zum Setzen der unterschiedlichsten Texte 
einsetzbar, aber der Satz chemischer Reaktionen ist aesthetisch nicht sehr 
ansprechend, da die vorhandenen Pfeile \cmd{\rightarrow}, \cmd{\leftarrow} und 
\cmd{\rightleftharpoons} für diesen Zweck zu kurz sind und die Pfeilspitzen nicht 
unbedingt dem "`Standard"' entsprechen, den man in Lehrbuechern und Zeitschriften 
vorfindet.

Das Makro \texttt{chemarrow.sty} soll in Verbindung mit dem Zeichensatz \texttt{arrow.mf} das 
Setzen chemischer Reaktionsgleichungen in \LaTeX\ vereinfachen und vor allem 
verschoenern. 


\section{Dateien}

\begin{tabular}{@{}>{\ttfamily}l>{\raggedright\arraybackslash}p{85mm}@{}}
  arrow.mf                 & \MF\ Sourcecode von \pkg{arrow}                            \\
  arrow.tfm                & \texttt{.tfm} Datei von \pkg{arrow} für \TeX               \\
  chemarrow.sty            & Makro zum Setzen von Pfeilen für Reaktionsgleichungen      \\
  Readme.txt               & englische Liesmich Datei                                   \\
  testchem.tex             & Testdatei für \texttt{chemarrow.sty} und \texttt{arrow.mf} \\
  Liesmich.txt             & deutsche Liesmich Datei                                    \\
  Type 1/arrow Mac.sit.hqx & Type~1 Version von \pkg{arrow} für den Mac                 \\
  Type 1/arrow PC.zip      & Type~1 Version \pkg{arrow} für PC/Unix                     \\
  Type 1/arrow.mp          & \MP\ Sourcecode zu \pkg{arrow}
\end{tabular}

\medskip

Die FontLab Datei \texttt{arrow.vfb} in den beiden Type~1 Archiven muss nicht mitkopiert 
werden, ich habe sie nur dazugepackt, falls jemand mein Design verbessern 
will \smiley


\section{Verwendung}

Die Beispieldatei \texttt{testchem.tex} sollte Aufschluss genug geben, wie das Packet 
\texttt{chemarrow.sty} verwendet wird, auch gibt es in \texttt{chemarrow.sty} eine 
Kurzanleitung aller definierten Befehle. Zur Benutzung muss \texttt{arrow.tfm} in 
einen Ordner kopiert werden, in dem \LaTeX\ nach \texttt{.tfm} Files sucht, \texttt{arrow.mf}
muss in einen Ordner kopiert werden, in dem \MF\ nach \MF\ Sourcen 
sucht. Die benoetigten \texttt{.pk} Dateien sollten dann automatisch vom DVI 
Previewer oder vom Druckertreiber erzeugt  werden.

Ich habe zusaetzlich noch PostScript Type~1 Zeichensaetze fuer den Mac und fuer
PCs/Unix im \texttt{.pfb} Format beigelegt zur Erzeugung von PDF Dokumenten. Dazu muessen 
die Type~1 Zeichensaetze in einen Ordner kopiert werden, wo \TeX\ und Freunde 
nach Type~1 Zeichensaetzen suchen, am besten dort hin, wo sich die Computer 
Modern Type~1 Zeichensaetze befinden.

Damit dvips weiss, dass es nicht die \texttt{.pk} Zeichensaetze von \texttt{arrow.mf} sondern 
die Type~1 Zeichensaetze einbinden soll, muss noch ein Eintrag in 
\texttt{psfonts.map} gemacht werden. 
%
\begin{itemize}
\item Für Macs:\\
  \verb+arrow arrow <arrow+
  
\item PC/Unix:\\
  \verb+arrow arrow <arrow.pfb+
\end{itemize}

Bei der Verwendung von pdf\TeX\ statt dvips und Acrobat Distiller muß ein 
Eintrag in \texttt{pdftex.map} gemacht werden:
%
\begin{verbatim}
arrow <arrow.pfb
\end{verbatim}


\section{Disclaimer}

Das Makro \texttt{chemarrow.sty} und der Font \texttt{arrow.mf} sind schnelle Hacks fuer 
meine eigenen Zwecke, ob sie auf anderen Systemen einwandfrei funktionieren, 
kann ich nicht garantieren. Dafuer veroeffentliche ich das ganze Packet als 
sogennante Free Software, d.\,h.\ jeder kann damit machen, was er will. Ich 
moechte nur darum bitten, bei Veraenderungen und Wiederveroeffentlichung 
meinen Namen durch den eigenen zu ergaenzen oder zu ersetzen. Danke.

Fuer Anregungen und Verbesserungen bin ich dankbar und freue mich.


\section{Entstehung}

Bei der Suche nach neuen Pfeilen bin ich auf den relativ neuen Zeichensatz 
\texttt{cryst.mf} von Ulrich Mueller gestossen, der mir ganz gut gefallen hat, und nach 
ein paar Modifikationen ist daraus \texttt{arrow.mf} entstanden.

Von Andreas Hertwig habe ich ein Makro bekommen, mit dem man verlaengerbare 
Reaktionspfeile setzen kann. Dieses habe ich an meine Beduerfnisse angepasst, 
und die Original Pfeilspitzen durch Pfeilspitzen aus \texttt{arrow.mf} ersetzt. Das 
Original Makro wurde wohl auf einer \TeX\ Mailingliste gepostet, der Autor 
ist aber leider nicht mehr bekannt. Falls er dieses liest moechte ich mich 
herzlich fuer die Vorlage bedanken!

Der zeitaufwendigste und komplizierteste Teil war die Umsetzung der 
\MF\ Sourcen in einen Type~1 Zeichensatz. Leider gibt es kein freies 
Programm fuer diese Zwecke wie ich enttaeuscht feststellen musste \frownie
Weiterhin musste ich feststellen, dass das Einbinden von \texttt{.pk} Zeichensaetzen in 
PDF Dokumente keine schoenen Ergebnisse liefert, das Verwenden von Type~1 
Zeichensaetzen ist fuer eine leserliche und ansehnliche Darstellung 
Pflicht \frownie

Aus \texttt{arrow.mp}, einem leicht modifizierten \texttt{arrow.mf}, habe ich mit \MP\ % 
und \texttt{mfplain} Graphiken im EPS Format erzeugt, und diese in die Demo 
von FontLab~3.0 importiert. Nach einigen Arbeitsschritten und 
Verkleinerung auf 79\% konnte ich dann einen Type~1 Zeichensatz abspeichern.


\section{Probleme}

Leider bin ich kein Experte auf dem Gebiet der Erstellung von Zeichensaetzen. 
Das ist wohl der Grund dafuer, warum die Pfeile in einem PDF Dokument auf 
manchen Plattformen erst ab 125\% Vergroesserung zu erkennen sind. Unterhalb 
dieser Vergroesserung sieht man nur Striche \frownie

Ich denke, mit einem anstaendigen Hinting duerfte sich dieses Problem loesen 
lassen, aber das uebersteigt meine derzeitigen Faehigkeiten und die 
Laufdauer der Demo von Fontlab \smiley

Wenn also jemand weiss, wie man diese letzte Unschoenheit beseitigen kann, 
waere ich fuer eine Antwort dankbar.


\section{Zukuenftige Versionen}

Ehrlich gesagt weiss ich nicht, ob es zukuenftige Versionen dieses Packetes 
geben wird, denn fuer meine Zwecke tut eigentlich alles, wie es soll. Etwas 
unschoen ist die direkte Verdrahtung des \pkg{arrow} Zeichensatzes in 
\texttt{chemarrow.sty}, dies werde ich evtl.\ bei Gelegenheit aendern. Weiterhin 
unschoen ist das Problem bei PDF Dokumenten, wenn sich da eine Loesung 
ergibt, werde ich sie veroeffentlichen.


\section{Dank}

\begin{itemize}
\item D. E. Knuth fuer \TeX
\item L. Lamport fuer \LaTeX\
\item dem \LaTeX3 Team fuer \LaTeXe
\item A. Hertwig fuer die freundliche Bereitstellung des Original Makros
\item dem unbekannten Autor des Original Makros
\item U. Mueller fuer \texttt{cryst.mf}
\end{itemize}


\section{Autor}

Thomas Schroeder\\
\mail{schroeder@ictw.chemie.uni-karlsruhe.de}

\end{document}
