summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/shadowtext/shadowtext.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/shadowtext/shadowtext.sty')
-rw-r--r--macros/latex/contrib/shadowtext/shadowtext.sty80
1 files changed, 80 insertions, 0 deletions
diff --git a/macros/latex/contrib/shadowtext/shadowtext.sty b/macros/latex/contrib/shadowtext/shadowtext.sty
new file mode 100644
index 0000000000..a6be493235
--- /dev/null
+++ b/macros/latex/contrib/shadowtext/shadowtext.sty
@@ -0,0 +1,80 @@
+%% This is file `shadowtext.sty',
+%% Copyright 2012 Yori Zwols
+%
+% 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.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Y. Zwols.
+%
+%
+% Version history
+% v0.3: - Fixed some errors in the documentation
+% - Colors specified in \shadowcolor should now be specified using
+% color names, not RGB values. The command for specifying colors
+% using RGB values has been renamed to \shadowrgb.
+% (I apologize for the backwards incompatibility).
+% - The base line of the text is now correct.
+%
+
+\NeedsTeXFormat{LaTeX2e}[1996/12/01]
+\ProvidesPackage{shadowtext}
+ [2012/05/07 v0.3 Shadow Text]
+
+\RequirePackage{color}
+
+\makeatletter
+
+
+
+\newlength\st@shadowoffsetx
+\newlength\st@shadowoffsety
+
+\st@shadowoffsetx=1pt
+\st@shadowoffsety=1pt
+
+\newcommand\shadowoffset[1]{\setlength\st@shadowoffsetx{#1}\setlength\st@shadowoffsety{#1}}
+\newcommand\shadowoffsetx[1]{\setlength\st@shadowoffsetx{#1}}
+\newcommand\shadowoffsety[1]{\setlength\st@shadowoffsety{#1}}
+\newcommand\shadowcolor[1]{\def\st@shadowcolor{#1}}
+\newcommand\shadowrgb[1]{\definecolor{st@shadowcolorrgb}{rgb}{#1}\shadowcolor{st@shadowcolorrgb}}
+
+\shadowrgb{0.66,0.66,0.66}
+
+\newlength\st@temp@width
+\newlength\st@temp@height
+\newlength\st@pic@width
+\newlength\st@pic@height
+
+\newcommand\shadowtext[1]%
+{%
+ \begingroup%
+ \settowidth{\st@temp@width}{#1}%
+ \settoheight{\st@temp@height}{#1}%
+ \setlength{\st@pic@width}{\st@temp@width}%
+ \setlength{\st@pic@height}{\st@temp@height}%
+ \addtolength{\st@pic@width}{\st@shadowoffsetx}%
+ \addtolength{\st@pic@height}{\st@shadowoffsety}%
+ %
+ \edef\num@tw{\strip@pt\st@temp@width}%
+ \edef\num@th{\strip@pt\st@temp@height}%
+ \edef\num@pw{\strip@pt\st@pic@width}%
+ \edef\num@ph{\strip@pt\st@pic@height}%
+ \edef\num@offsetx{\strip@pt\st@shadowoffsetx}%
+ \edef\num@offsety{\strip@pt\st@shadowoffsety}%
+ \raisebox{-\st@shadowoffsety}{
+ \begin{picture}(\num@pw,\num@ph)(0,0)
+ \put(\num@offsetx,0){\makebox(\num@tw,\num@th)[tl]{\color{\st@shadowcolor}\def\color##1{}\ignorespaces #1}}
+ \put(0,\num@offsety){\makebox(\num@tw,\num@th)[tl]{\ignorespaces #1}}
+ \end{picture}}%
+ \endgroup%
+ \ignorespaces%
+}
+
+\makeatother