summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/graphbox
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-08-31 20:57:31 +0000
committerKarl Berry <karl@freefriends.org>2014-08-31 20:57:31 +0000
commit0ba5190228a7a7ca3ccd8972ddb21abb5ef69b6f (patch)
tree7fc5d4fd5dc18d4e292a213deb393a7a3fe42b1a /Master/texmf-dist/tex/latex/graphbox
parente41f328b697140ad9a82e66af2baf21f39fe0541 (diff)
graphbox (31aug14)
git-svn-id: svn://tug.org/texlive/trunk@35075 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/graphbox')
-rw-r--r--Master/texmf-dist/tex/latex/graphbox/graphbox.sty129
1 files changed, 129 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/graphbox/graphbox.sty b/Master/texmf-dist/tex/latex/graphbox/graphbox.sty
new file mode 100644
index 00000000000..2b5d25a577f
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/graphbox/graphbox.sty
@@ -0,0 +1,129 @@
+%%
+%% This is file `graphbox.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% graphbox.dtx (with options: `package')
+%%
+%% Copyright (C) 2013-2014 Niklas Beisert
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+\NeedsTeXFormat{LaTeX2e}[1996/12/01]
+\ProvidesPackage{graphbox}[2014/08/31 v1.0 extension for graphicx to adjust containing box]
+\newif\ifGin@box@beamer\Gin@box@beamertrue
+\DeclareOption{nobeamer}{\Gin@box@beamerfalse}
+\ProcessOptions
+
+\RequirePackage{graphicx}
+
+\newsavebox{\Gin@box@box}
+\newlength{\Gin@box@width}
+\newlength{\Gin@box@height}
+\newlength{\Gin@box@raise}
+\newlength{\Gin@box@hspace}
+\newlength{\Gin@box@bwidth}
+\newlength{\Gin@box@bheight}
+
+\def\Gin@box@align{b}
+\def\Gin@box@hsmash{n}
+\def\Gin@box@hshift{0pt}
+\def\Gin@box@vshift{0pt}
+\def\Gin@box@lmargin{0pt}
+\def\Gin@box@rmargin{0pt}
+\def\Gin@box@tmargin{0pt}
+\def\Gin@box@bmargin{0pt}
+\newif\ifGin@box@hide\Gin@box@hidefalse
+\newif\ifGin@box@vsmash\Gin@box@vsmashfalse
+
+\define@key{Gin}{hide}[true]{\lowercase{\Gin@boolkey{#1}}{box@hide}}
+\define@key{Gin}{align}[c]{\def\Gin@box@align{#1}}
+\define@key{Gin}{hsmash}[c]{\edef\Gin@box@hsmash{#1}}
+\define@key{Gin}{vsmash}[c]{\if#1n\Gin@box@vsmashfalse\else%
+ \Gin@box@vsmashtrue\edef\Gin@box@align{%
+ \if#1bt\else\if#1tb\else%
+ \if#1lu\else\if#1ul\else#1\fi\fi\fi\fi\fi}}
+\define@key{Gin}{smash}[cc]{\expandafter\KV@Gin@vsmash\@firstoftwo#1%
+ \expandafter\KV@Gin@hsmash\@secondoftwo#1}
+\define@key{Gin}{hshift}{\def\Gin@box@hshift{#1}}
+\define@key{Gin}{vshift}{\def\Gin@box@vshift{#1}}
+\define@key{Gin}{lmargin}{\def\Gin@box@lmargin{#1}}
+\define@key{Gin}{rmargin}{\def\Gin@box@rmargin{#1}}
+\define@key{Gin}{tmargin}{\def\Gin@box@tmargin{#1}}
+\define@key{Gin}{bmargin}{\def\Gin@box@bmargin{#1}}
+\define@key{Gin}{hmargin}{\def\Gin@box@lmargin{#1}\def\Gin@box@rmargin{#1}}
+\define@key{Gin}{vmargin}{\def\Gin@box@tmargin{#1}\def\Gin@box@bmargin{#1}}
+\define@key{Gin}{margin}{\def\Gin@box@lmargin{#1}\def\Gin@box@rmargin{#1}%
+ \def\Gin@box@tmargin{#1}\def\Gin@box@bmargin{#1}}
+
+\let\old@box@Ginclude@graphics\Ginclude@graphics
+\def\Ginclude@graphics#1{%
+ \sbox{\Gin@box@box}{\old@box@Ginclude@graphics{#1}}%
+ \settowidth{\Gin@box@width}{\usebox{\Gin@box@box}}%
+ \settoheight{\Gin@box@height}{\usebox{\Gin@box@box}}%
+ \def\gwidth{\Gin@box@width}%
+ \def\gheight{\Gin@box@height}%
+ \ifGin@box@vsmash%
+ \def\Gin@box@tmargin{0pt}\def\Gin@box@bmargin{0pt}\fi%
+ \setlength{\Gin@box@raise}{\Gin@box@vshift}%
+ \setlength{\Gin@box@bheight}{\Gin@box@height}%
+ \addtolength{\Gin@box@bheight}{\Gin@box@tmargin}%
+ \addtolength{\Gin@box@bheight}{\Gin@box@bmargin}%
+ \if\Gin@box@align t%
+ \addtolength{\Gin@box@raise}{-\Gin@box@height}%
+ \addtolength{\Gin@box@raise}{1.161290323ex}\fi%
+ \if\Gin@box@align u%
+ \addtolength{\Gin@box@raise}{-\Gin@box@height}\fi%
+ \if\Gin@box@align c%
+ \addtolength{\Gin@box@raise}{-0.5\Gin@box@height}%
+ \addtolength{\Gin@box@raise}{0.580645161ex}\fi%
+ \if\Gin@box@align m%
+ \addtolength{\Gin@box@raise}{-0.5\Gin@box@height}\fi%
+ \setlength{\Gin@box@hspace}{0pt}%
+ \if\Gin@box@hsmash n%
+ \setlength{\Gin@box@bwidth}{\Gin@box@width}%
+ \addtolength{\Gin@box@bwidth}{\Gin@box@lmargin}%
+ \addtolength{\Gin@box@bwidth}{\Gin@box@rmargin}%
+ \setlength{\Gin@box@hspace}{\Gin@box@lmargin}%
+ \else%
+ \setlength{\Gin@box@bwidth}{0pt}%
+ \setlength{\Gin@box@hspace}{\Gin@box@hshift}%
+ \if\Gin@box@hsmash l%
+ \addtolength{\Gin@box@hspace}{-\Gin@box@width}\fi%
+ \if\Gin@box@hsmash c%
+ \addtolength{\Gin@box@hspace}{-0.5\Gin@box@width}\fi%
+ \fi%
+ \ifGin@box@vsmash\expandafter\smash\fi{%
+ \raisebox{\Gin@box@raise}{%
+ \parbox[b]{\Gin@box@bwidth}{%
+ \rule[-\Gin@box@bmargin]{0pt}{\Gin@box@bheight}%
+ \smash{%
+ \makebox[0pt][l]{%
+ \hspace*{\Gin@box@hspace}%
+ \ifGin@box@hide\else\usebox{\Gin@box@box}\fi%
+ }%
+ }%
+ }%
+ }%
+ }%
+}
+
+\@ifclassloaded{beamer}{\ifGin@box@beamer
+ \let\old@box@includegraphics\includegraphics
+ \newcommand<>{\fibox@includegraphics}[2][]{\Gin@box@hidefalse%
+ \beamer@ifempty{#3}%
+ {\alt<\c@beamerpauses->{}{\Gin@box@hidetrue}}%
+ {\alt#3{}{\Gin@box@hidetrue}}%
+ \old@box@includegraphics[#1]{#2}}
+ \AtBeginDocument{\let\includegraphics=\fibox@includegraphics}
+\fi}{}
+\endinput
+%%
+%% End of file `graphbox.sty'.