diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytikzbackgrounds.code.tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytikzbackgrounds.code.tex | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytikzbackgrounds.code.tex b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytikzbackgrounds.code.tex new file mode 100644 index 00000000000..260a8f9a28a --- /dev/null +++ b/Master/texmf-dist/tex/generic/pgf/libraries/pgflibrarytikzbackgrounds.code.tex @@ -0,0 +1,131 @@ +\ProvidesPackageRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/libraries/pgflibrarytikzbackgrounds.code.tex,v 1.1 2005/08/13 18:59:56 tantau Exp $ + +% Copyright 2005 by Till Tantau <tantau@cs.tu-berlin.de>. +% +% This program can be redistributed and/or modified under the terms +% of the GNU Public License, version 2. + + +% Layers + +\pgfdeclarelayer{background} +\pgfsetlayers{background,main} + + +% Main style + +\tikzstyle{background rectangle}= [draw] +\tikzstyle{background top}= [draw] +\tikzstyle{background bottom}= [draw] +\tikzstyle{background left}= [draw] +\tikzstyle{background right}= [draw] +\tikzstyle{background grid}= [help lines,draw] + +\define@key{tikz}{inner frame sep}{\def\tikz@framexsep{#1}\def\tikz@frameysep{#1}} +\define@key{tikz}{inner frame xsep}{\def\tikz@framexsep{#1}} +\define@key{tikz}{inerr frame ysep}{\def\tikz@frameysep{#1}} +\def\tikz@framexsep{1ex} +\def\tikz@frameysep{1ex} + +\define@key{tikz}{outer frame sep}{\def\tikz@outerframexsep{#1}\def\tikz@outerframeysep{#1}} +\define@key{tikz}{outer frame xsep}{\def\tikz@outerframexsep{#1}} +\define@key{tikz}{outer frame ysep}{\def\tikz@outerframeysep{#1}} +\def\tikz@outerframexsep{0ex} +\def\tikz@outerframeysep{0ex} + + +% Looseness + +\tikzstyle{loose background}= [inner frame sep=2ex] +\tikzstyle{tight background}= [inner frame sep=0ex] + + + +% Showing background styles + +\tikzstyle{framed}= [style=show background rectangle] +\tikzstyle{gridded}= [style=show background grid] + +\tikzstyle{show background rectangle}=[execute at end picture=\tikz@background@framed] +\tikzstyle{show background top}= [execute at end picture=\tikz@background@top] +\tikzstyle{show background bottom}= [execute at end picture=\tikz@background@bottom] +\tikzstyle{show background left}= [execute at end picture=\tikz@background@left] +\tikzstyle{show background right}= [execute at end picture=\tikz@background@right] +\tikzstyle{show background grid}= [execute at end picture=\tikz@background@grid] + + +% Implementation + +\def\tikz@background@save{% + \ifx\tikz@bg@minx\@undefined% + \pgf@xb=\pgf@picminx% + \pgf@yb=\pgf@picminy% + \pgf@xc=\pgf@picmaxx% + \pgf@yc=\pgf@picmaxy% + \setlength{\pgf@x}{\tikz@framexsep}% + \setlength{\pgf@y}{\tikz@frameysep}% + \advance\pgf@xb by-\pgf@x% + \advance\pgf@yb by-\pgf@y% + \advance\pgf@xc by\pgf@x% + \advance\pgf@yc by\pgf@y% + \edef\tikz@bg@minx{\the\pgf@xb}% + \edef\tikz@bg@miny{\the\pgf@yb}% + \edef\tikz@bg@maxx{\the\pgf@xc}% + \edef\tikz@bg@maxy{\the\pgf@yc}% + \setlength{\pgf@x}{\tikz@outerframexsep}% + \setlength{\pgf@y}{\tikz@outerframeysep}% + \advance\pgf@xb by-\pgf@x% + \advance\pgf@yb by-\pgf@y% + \advance\pgf@xc by\pgf@x% + \advance\pgf@yc by\pgf@y% + \edef\tikz@bg@outerminx{\the\pgf@xb}% + \edef\tikz@bg@outerminy{\the\pgf@yb}% + \edef\tikz@bg@outermaxx{\the\pgf@xc}% + \edef\tikz@bg@outermaxy{\the\pgf@yc}% + \fi% +} + +\def\tikz@background@framed{% + \tikz@background@save% + \pgfonlayer{background} + \path[style=background rectangle] (\tikz@bg@minx,\tikz@bg@miny) rectangle (\tikz@bg@maxx,\tikz@bg@maxy); + \endpgfonlayer +} + +\def\tikz@background@top{% + \tikz@background@save% + \pgfonlayer{background} + \path[style=background top] (\tikz@bg@outerminx,\tikz@bg@maxy) -- (\tikz@bg@outermaxx,\tikz@bg@maxy); + \endpgfonlayer +} + +\def\tikz@background@bottom{% + \tikz@background@save% + \pgfonlayer{background} + \path[style=background bottom] (\tikz@bg@outerminx,\tikz@bg@miny) -- (\tikz@bg@outermaxx,\tikz@bg@miny); + \endpgfonlayer +} + +\def\tikz@background@left{% + \tikz@background@save% + \pgfonlayer{background} + \path[style=background left] (\tikz@bg@minx,\tikz@bg@outerminy) -- (\tikz@bg@minx,\tikz@bg@outermaxy); + \endpgfonlayer +} + +\def\tikz@background@right{% + \tikz@background@save% + \pgfonlayer{background} + \path[style=background right] (\tikz@bg@maxx,\tikz@bg@outerminy) -- (\tikz@bg@maxx,\tikz@bg@outermaxy); + \endpgfonlayer +} + +\def\tikz@background@grid{% + \tikz@background@save% + \pgfonlayer{background} + \path[style=background grid] (\tikz@bg@minx,\tikz@bg@miny) grid (\tikz@bg@maxx,\tikz@bg@maxy); + \endpgfonlayer +} + + +\endinput |