diff options
author | Karl Berry <karl@freefriends.org> | 2007-05-18 16:19:22 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2007-05-18 16:19:22 +0000 |
commit | 162011115f4cce85d5ece07bc50d195760e16c97 (patch) | |
tree | 8cfbdbe758a9728ccdaf6fa3e0811d97a62b87e1 /Master/texmf-dist/source/latex/randbild | |
parent | e04af15e92b35556249aa0d9c27b77f25ce10ffe (diff) |
randbild 0.2 (16may07)
git-svn-id: svn://tug.org/texlive/trunk@4309 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/randbild')
-rw-r--r-- | Master/texmf-dist/source/latex/randbild/randbild.dtx | 64 |
1 files changed, 57 insertions, 7 deletions
diff --git a/Master/texmf-dist/source/latex/randbild/randbild.dtx b/Master/texmf-dist/source/latex/randbild/randbild.dtx index 5b5e9fcd10b..2ba65bbe00e 100644 --- a/Master/texmf-dist/source/latex/randbild/randbild.dtx +++ b/Master/texmf-dist/source/latex/randbild/randbild.dtx @@ -1,4 +1,4 @@ -% \iffalse meta-comment +% \iffalse meta-comment -*- coding: iso-8859-1 -*- % %% (C) 2005-2006 Paul Ebermann %% @@ -24,7 +24,7 @@ % \iffalse %<package>\NeedsTeXFormat{LaTeX2e}[2003/12/01] %<package>\ProvidesPackage{randbild} -%<package> [2006/04/04 v0.1b Bild am Seitenrand (PE)] +%<package> [2007/05/15 v0.2 Bild am Seitenrand (PE)] % %<*driver> \documentclass[draft]{ltxdoc} @@ -36,7 +36,7 @@ %</driver> % \fi % -% \CheckSum{34} +% \CheckSum{49} % % % \changes{v0.0}{2005/12/11}{Anfang der Fassung als DTX} @@ -99,8 +99,11 @@ %\end{verbatim} % % \DescribeEnv{randbildbasis} +% \DescribeEnv{randbild*} % Die Umgebung 'randbildbasis' funktioniert genauso wie 'randbild', nur -% wird kein Achsenkreuz gezeichnet. +% wird kein Achsenkreuz gezeichnet. Ein alternativer Name dafür ist +% 'randbild*' (weil ich jetzt schon mindestens zum fünften Mal diesen Namen +% verwendet habe, als ich 'randbildbasis' haben wollte). % % \DescribeMacro{\showgrid} % Mit dem Makro '\showgrid' kann man seinem Bild ein @@ -158,11 +161,23 @@ % \end{macro} % \end{macro} % +% \changes{v0.2}{2006/09/19}{Verwendung von \cs{@bsphack} +% und \cs{@Esphack} (bei 'randbild' und 'randbildbasis'), +% um die Umgebungen an der Verwendungsstelle +% unbemerkbar zu machen. +% Außerdem wurden einige überflüssige Leerzeichen (bzw. Zeilenenden) +% entfernt.} % \begin{environment}{randbild} % Die wichtigste (und namensgebende) Umgebung dieses Paketes. % \begin{macrocode} \newenvironment*{randbild}[3][\ ]{% % \end{macrocode} +% Mit '\@bsphack' (und dem '\@Esphack' am Ende) sorgen wir dafür, dass +% die Umgebung an der Stelle, wo sie verwendet wird, keine Spuren in der +% Ausgabe hinterlässt -- auch keine doppelten Leerzeichen o.ä. +% \begin{macrocode} + \@bsphack% +% \end{macrocode} % Wir rufen hier einfach die Umgebung 'randbildbasis' mit unseren drei Parametern auf. % \begin{macrocode} \begin{randbildbasis}[#1]{#2}{#3}% @@ -177,7 +192,8 @@ % \end{macrocode} % Am Ende dieser Umgebung beenden wir natürlich auch 'randbildbasis'. % \begin{macrocode} - \end{randbildbasis} + \end{randbildbasis}% + \@Esphack% } % \end{macrocode} % \end{environment} @@ -190,12 +206,13 @@ % Da wir am Ende der Umgebung leider nicht mehr auf die Parameter % zugreifen können, müssen wir uns den Titel hier merken. % \begin{macrocode} + \@bsphack% \renewcommand{\randbild@titel}{#1}% % \end{macrocode} % Wir setzen zunächst die Maßeinheit ('unit') und die % Linienbreite für unsere Zeichnung auf passende Werte. % \begin{macrocode} - \psset{linewidth=.5pt,unit=0.5cm} + \psset{linewidth=.5pt,unit=0.5cm}% % \end{macrocode} % Da es '\fbox' und '\marginpar' leider nicht in Umgebungsform gibt, müssen wir % zunächst (mit 'lrbox') eine Box erstellen und als '\randbild@box' speichern, um @@ -208,6 +225,25 @@ % hier kann man also nach Herzenslust pstricks-Befehle nutzen. % \begin{macrocode} \begin{pspicture}(#2)(#3)% +% \end{macrocode} +% \changes{v0.2}{2007/05/15}{Bugfix mit Leerzeichen: \cs{ignorespaces}.} +% Ich habe noch nicht ganz verstanden, warum das folgende '\ignorespaces' +% notwendig ist, wo doch eigentlich schon 'pspicture' dafür sorgt, dass +% Leerzeichen (und Zeilenenden) ignoriert werden -- aber leider nicht in +% Zusammenarbeit mit '\multips'. +% Jedenfalls habe ich danach etwa zwei Stunden gesucht, bei +% einem Beispiel wie im Rand\footnote{Für die Darstellung +% des Beispiels hier (nach Behebung des Bugs) habe ich ein +% explizites Leerzeichen ({\tt\char`\\\char`\ }) verwendet, +% im Original war das nur ein ungeschützer Zeilenumbruch.}. +% \begin{randbild*}[Beispiel]{-2,-2}{2,2}\ % +% \psset{linewidth=0.2pt} +% \multips(-2,0)(4,0){2}{\psline(0,-2)(0,2)} +% \multips(0,-2)(0,4){2}{\psline(-2,0)(2,0)} +% \end{randbild*} +% Dieses '\ignorespaces' behebt das Problem. +% \begin{macrocode} + \ignorespaces }{% % \end{macrocode} % Am Ende der 'randbildbasis'-Umgebung beenden wir zunächst die 'pspicture'-Umgebung @@ -230,7 +266,11 @@ % am Rand rundum abgeschnitten wird (0.1 cm Abstand), und einen Rahmen % bekommt. % \begin{macrocode} - \fbox{\clipbox[0.2]{\usebox{\randbild@box}}}% + \fbox{% + \clipbox[0.2]{% + \usebox{\randbild@box}% + }% + }% % \end{macrocode} % Auf einer weiteren Zeile (mit wenig Abstand) \dots % \begin{macrocode} @@ -241,9 +281,19 @@ % \begin{macrocode} {\small\randbild@titel}% }% + \@Esphack% }% % \end{macrocode} % \end{environment} +% \begin{environment}{randbild*} +% \changes{v0.2}{2007/04/26}{Neue Umgebung 'randbild*' als +% Alias für 'randbildbasis'.} +% Jetzt definieren wir uns noch einen Alias für 'randbildbasis': +% \begin{macrocode} + \expandafter\let\csname randbild*\endcsname\randbildbasis + \expandafter\let\csname endrandbild*\endcsname\endrandbildbasis +% \end{macrocode} +% \end{environment} % \begin{macro}{\showgrid} % Unser Koordinatengitter ist eine Spezialisierung von 'psgrid'. % Mit '\newpsobject' legen wir die Parameter fest. |