summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-08-27 22:38:54 +0000
committerKarl Berry <karl@freefriends.org>2006-08-27 22:38:54 +0000
commit2607d53137ede06e9780342b225218743e100bb4 (patch)
treec6c88c805dd21a5bbb6ad6f26d3d53c517f4b866 /Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex
parentfb0d58de45c0fc32bab09a839c186de46f75628e (diff)
oberdiek update from tds zip (28aug06)
git-svn-id: svn://tug.org/texlive/trunk@2054 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex')
-rw-r--r--Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex103
1 files changed, 103 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex b/Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex
new file mode 100644
index 00000000000..d86dbe2f6a9
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/oberdiek/settobox-example.tex
@@ -0,0 +1,103 @@
+%%
+%% This is file `settobox-example.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% settobox.dtx (with options: `example')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2000, 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file settobox.dtx
+%% and the derived files
+%% settobox.sty, settobox.pdf, settobox.ins, settobox.drv,
+%% settobox-example.tex.
+%%
+\documentclass{article}
+
+\usepackage{settobox}
+\usepackage{calc}
+
+\newsavebox{\mybox}
+
+\setlength{\fboxsep}{0pt}
+\setlength{\parindent}{20pt}
+\setlength{\parskip}{10pt}
+\pagestyle{empty}
+
+ % \test{#1}
+ % The macro is called with commands in #1 that manipulates
+ % the box \mybox. These commands along with the result of
+ % the manipulation is shown. Thus the essence of the
+ % macro is:
+ %
+ % a) \sbox{\mybox}{The cracy fox.}
+ % b) #1 % manipulates \mybox
+ % c) Print #1 commands.
+ % d) Print box with frame
+ %
+ % The implemenation looks more weird:
+\makeatletter
+\newcommand*{\test}[1]{%
+ \par
+ \begingroup
+ \raggedright
+ \edef\x{\detokenize{#1}}
+ \let\do\@makeother
+ \dospecials
+ \catcode`\~\active
+ \catcode`\ =10\relax
+ \def~{\\}%
+ \noindent
+ \texttt{\scantokens\expandafter{\x}}
+ \par
+ \endgroup
+ \begingroup
+ \let~\relax
+ \sbox{\mybox}{The cracy fox.}
+ #1%
+ A---\fbox{\usebox\mybox}---B
+ \endgroup
+ \par
+}
+\makeatother
+
+\begin{document}
+
+\test{\setboxwidth{\mybox}{1.25\width}}
+\test{\setboxheight{\mybox}{0pt}}
+\test{\setboxheight{\mybox}{2\height}}
+\test{\setboxdepth{\mybox}{\height}}
+\test{\setboxmoveleft{\mybox}{5pt}}
+\test{%
+ \setboxmoveleft{\mybox}{5pt}~%
+ \setboxwidth{\mybox}{\width + 5pt}%
+}
+\test{\setboxmoveright{\mybox}{0.5\width}}
+\test{\setboxlower{\mybox}{\height}}
+\test{\setboxraise{\mybox}{\depth}}
+\test{%
+ \setboxmoveright{\mybox}{5pt}~%
+ \setboxwidth{\mybox}{\width + 5pt}~%
+ \setboxheight{\mybox}{\height + 5pt}~%
+ \setboxdepth{\mybox}{\depth + 5pt}%
+}
+
+\end{document}
+\endinput
+%%
+%% End of file `settobox-example.tex'.