summaryrefslogtreecommitdiff
path: root/macros/generic/frame
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/generic/frame
Initial commit
Diffstat (limited to 'macros/generic/frame')
-rw-r--r--macros/generic/frame/Changes12
-rw-r--r--macros/generic/frame/Makefile72
-rw-r--r--macros/generic/frame/README9
-rw-r--r--macros/generic/frame/frame-doc.pdfbin0 -> 35896 bytes
-rw-r--r--macros/generic/frame/frame-doc.tex97
-rw-r--r--macros/generic/frame/frame.sty9
-rw-r--r--macros/generic/frame/frame.tex58
7 files changed, 257 insertions, 0 deletions
diff --git a/macros/generic/frame/Changes b/macros/generic/frame/Changes
new file mode 100644
index 0000000000..d5ba90b132
--- /dev/null
+++ b/macros/generic/frame/Changes
@@ -0,0 +1,12 @@
+$Id: Changes 320 2010-05-15 09:42:13Z herbert $
+
+--- frame.tex
+1.0 2010-05-15 - LPPL license (hv)
+ - small changes to the code (hv)
+
+--- frame.sty
+2010-05-15 - wrapper file for LaTeX (hv)
+
+
+--- frame-doc.tex
+2010-05-14 - updated and LaTeX2e compatible (hv)
diff --git a/macros/generic/frame/Makefile b/macros/generic/frame/Makefile
new file mode 100644
index 0000000000..0b5e380d1c
--- /dev/null
+++ b/macros/generic/frame/Makefile
@@ -0,0 +1,72 @@
+
+# `Makefile' for `frame-doc.pdf', hv, 2007/03/17
+
+.SUFFIXES : .tex .ltx .dvi .ps .pdf .eps
+
+PACKAGE = frame
+
+MAIN = $(PACKAGE)-doc
+
+TDS = ~/PSTricks/PSTricks-TDS
+
+LATEX = latex
+
+ARCHNAME = $(MAIN)-$(shell date +%y%m%d)
+
+ARCHFILES = $(PACKAGE).sty $(PACKAGE).tex $(PACKAGE).pro $(MAIN).tex README Changes Makefile
+
+all : doc clean
+doc: $(MAIN).pdf
+
+$(MAIN).pdf : $(MAIN).ps
+# GS_OPTIONS=-dAutoRotatePages=/None
+ ps2pdf $<
+
+$(MAIN).ps : $(MAIN).dvi
+ dvips $<
+
+$(MAIN).dvi : $(MAIN).tex
+ $(LATEX) $<
+ $(LATEX) $<
+# if ! test -f $(basename $<).glo ; then touch $(basename $<).glo; fi
+# if ! test -f $(basename $<).idx ; then touch $(basename $<).idx; fi
+# makeindex -t $(basename $<).ilg -s pst-doc.ist -o $(basename $<).ind $(basename $<).idx
+# makeindex -s gglo.ist -t $(basename $<).glg -o $(basename $<).gls \
+# $(basename $<).glo
+# bibtex $(basename $<)
+# $(LATEX) $<
+# $(LATEX) $<
+
+clean :
+ $(RM) $(addprefix $(MAIN), .log .aux .glg .glo .gls .ilg .idx .ind .tmp .toc .out .blg .Roessler .bbl )
+ $(RM) $(addprefix $(MAIN), .dvi .ps .xcp)
+ $(RM) data3d.Roessler
+
+veryclean : clean
+ $(RM) $(addprefix $(MAIN), .pdf .bbl .blg)
+
+arch :
+ zip $(ARCHNAME).zip $(ARCHFILES)
+
+tds:
+ cp -u Changes $(TDS)/doc/generic/$(PACKAGE)/
+ cp -u README $(TDS)/doc/generic/$(PACKAGE)/
+ cp -u $(MAIN).pdf $(TDS)/doc/generic/$(PACKAGE)/
+#
+ cp -u Changes $(TDS)/tex/latex/$(PACKAGE)/
+ cp -u $(PACKAGE).sty $(TDS)/tex/latex/$(PACKAGE)/
+#
+ cp -u Changes $(TDS)/tex/generic/$(PACKAGE)/
+ cp -u $(PACKAGE).tex $(TDS)/tex/generic/$(PACKAGE)/
+#
+ cp -u Changes $(TDS)/dvips/$(PACKAGE)/
+ cp -u $(PACKAGE).pro $(TDS)/dvips/$(PACKAGE)/
+ cp -u $(PACKAGE).pro ~/Links/dvips-local/
+#
+ cp -u Changes $(TDS)/source/$(PACKAGE)/
+ cp -u $(MAIN).tex $(TDS)/source/$(PACKAGE)/
+ cp -u $(MAIN).bib $(TDS)/source/$(PACKAGE)/
+ cp -u Makefile $(TDS)/source/$(PACKAGE)/
+
+
+# EOF
diff --git a/macros/generic/frame/README b/macros/generic/frame/README
new file mode 100644
index 0000000000..800b7107e3
--- /dev/null
+++ b/macros/generic/frame/README
@@ -0,0 +1,9 @@
+Save the files frame.sty|tex in a directory, which is part of your
+local TeX tree.
+Then do not forget to run texhash to update this tree.
+For more information see the documentation of your LATEX distribution
+on installing packages into your LATEX distribution or the
+TeX Frequently Asked Questions:
+(http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instpackages).
+
+
diff --git a/macros/generic/frame/frame-doc.pdf b/macros/generic/frame/frame-doc.pdf
new file mode 100644
index 0000000000..b3683a587d
--- /dev/null
+++ b/macros/generic/frame/frame-doc.pdf
Binary files differ
diff --git a/macros/generic/frame/frame-doc.tex b/macros/generic/frame/frame-doc.tex
new file mode 100644
index 0000000000..169ef569e5
--- /dev/null
+++ b/macros/generic/frame/frame-doc.tex
@@ -0,0 +1,97 @@
+%% BEGIN frame-doc
+%%
+%% $Id: frame-doc.tex 320 2010-05-15 09:42:13Z herbert $
+\documentclass[12pt]{article}
+\usepackage[T1]{fontenc}
+\usepackage{mathpazo,url}
+\usepackage[colorlinks,linktocpage]{hyperref}
+
+\usepackage{frame}
+\let\Ffv\fileversion
+% Usage:
+% \fancyframebox {rule thickness} {separation from inner guy} {inner guy}
+%
+% \makeemptybox {width} {height} {depth}
+\begin{document}
+\title{Documentation for frame.tex:\\
+ fancy frames for generic TeX}
+\author{Timothy Van Zandt\thanks{The documentation was put into
+ \LaTeX\ format by Herbert Vo\ss}\\ \url{tvz@Princeton.EDU}}
+\date{Version \Ffv\\[3pt] \today}
+
+\maketitle
+\thispagestyle{empty}
+
+\begin{abstract}
+\texttt{frame.tex/frame.sty} provides fancy frames for generic TeX
+\end{abstract}
+
+\clearpage
+\tableofcontents
+\clearpage
+
+\section{Usage}
+
+\setbox0=\hbox{\it the center}
+\count11=1
+\loop\ifnum\count11<11
+ \setbox0=\hbox{\fancyframebox{.1pt}{5pt}{\unhbox0}}
+ \advance\count11 by1
+\repeat
+
+\vbox{\centerline{\box0}\vss}
+
+This paragraph is probably rather hard to read. I have used \TeX's
+rule-drawing and macro capability to set 10 boxes on top of the
+text. This was rather easy to do in \TeX. I challenge anyone
+to come up with as simple a method for {\it troff}.
+
+\def\\{\char`\\}\def\{{\char`\{}\def\}{\char`\}}
+The command I used was:
+
+$$\hbox{\tt \\fancyframebox\{.1pt\}\{5pt\}\{{\it text to be boxed}\}}$$
+
+{\tt \\fancyframebox} makes a framed {\tt \\hbox} containing its
+third argument, surrounded by extra space (its second argument),
+and rules on all four sides whose width is its first argument.
+To get 10 boxes, you just re-frame 10 times. I used a {\tt \\loop}
+construct, but one could just write out 10 nested {\tt \\fancyframebox}
+calls.
+
+In order to center the fancy boxes, I put them into {\tt \\box0} and
+used {\tt \\centerline\{\\box0\}} to write it out. To make the
+text come out on top, I put it in a {\tt \\vbox to 0pt} construct,
+making \TeX\ try to squeeze everything vertically to zero. A
+{\tt \\vss} allowed the {\tt \\vbox} to shrink (without it \TeX
+\ would still have done the job, but would have complained about
+an ``overfull {\tt \\vbox}'').[Ed.-Example was changed...]
+
+Thus, the final set of commands, including the \TeX\ loop instructions,
+to typeset the boxes was
+
+\bigskip
+
+\begin{verbatim}
+\setbox0=\hbox{\it the center}
+\count11=1
+\loop\ifnum\count11<11
+ \setbox0=\hbox{\fancyframebox{.1pt}{5pt}{\unhbox0}}
+ \advance\count11 by1
+\repeat
+
+\vbox{\centerline{\box0}\vss}
+\end{verbatim}
+
+\bigskip
+
+Simple---at least when you consider the task\dots.
+
+\section{Macros}
+
+
+\begin{verbatim}
+\fancyframebox{rule thickness}{separation from inner guy}{inner guy}
+\makeemptybox{width}{height}{depth}
+\end{verbatim}
+
+\end{document}
diff --git a/macros/generic/frame/frame.sty b/macros/generic/frame/frame.sty
new file mode 100644
index 0000000000..edf678098a
--- /dev/null
+++ b/macros/generic/frame/frame.sty
@@ -0,0 +1,9 @@
+%% $Id: frame.sty 320 2010-05-15 09:42:13Z herbert $
+\ProvidesPackage{frame}[2010/05/15 package wrapper for
+ frame.tex (hv)]
+\input{frame.tex}
+\ProvidesFile{frame.tex}
+ [\filedate\space v\fileversion\space `frame' (tvz,hv)]
+%
+\endinput
+
diff --git a/macros/generic/frame/frame.tex b/macros/generic/frame/frame.tex
new file mode 100644
index 0000000000..de9f915913
--- /dev/null
+++ b/macros/generic/frame/frame.tex
@@ -0,0 +1,58 @@
+%%
+%% $Id: frame.tex 320 2010-05-15 09:42:13Z herbert $
+%%
+%% COPYRIGHT 1992/2010, by Timothy Van Zandt, tvz@Princeton.EDU
+%% COPYRIGHT 2010, by Herbert Voss, hvoss@tug.org
+%%
+%% Copyright:
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
+%%
+%% DESCRIPTION:
+%% frame.tex/frame.sty provides fancy frames for generic TeX
+%
+% Usage:
+% \fancyframebox {rule thickness} {separation from inner guy} {inner guy}
+%
+% \makeemptybox {width} {height} {depth}
+%%
+%
+\def\fileversion{1.0}
+\def\filedate{2010/05/15}
+%
+\csname FrameLoaded\endcsname
+\let\FrameLoaded\endinput
+%
+\edef\TheAtCode{\the\catcode`\@}
+\catcode`\@=11\relax
+\message{\space\space v\fileversion\space\space \filedate\space\space <tvz>}
+
+\newbox\fancyboxA
+\newbox\fancyboxB
+\newdimen\fancyboxD
+
+\def\makeemptybox#1#2#3{\setbox\fancyboxA=\hbox{}\wd\fancyboxA=#1\relax
+ \ht\fancyboxA=#2\relax \dp\fancyboxA=#3\relax \box\fancyboxA }
+
+\def\fancyframebox#1#2#3{%
+ \leavevmode
+ \setbox\fancyboxB=\hbox{#3}%
+ \dimen\fancyboxD=#1\relax
+ \advance\dimen\fancyboxD by #2\relax
+ \advance\dimen\fancyboxD by \dp\fancyboxB
+ \hbox{%
+ \lower\dimen\fancyboxD\hbox{%
+ \vbox{%
+ \hrule height #1\relax
+ \hbox{%
+ \vrule width #1\relax
+ \kern #2\relax
+ \vbox{\vskip #2\relax\box\fancyboxB\vskip #2\relax}%
+ \kern #2\relax
+ \vrule width #1\relax}%
+ \hrule height #1\relax}}}}
+%
+\expandafter\catcode`\@=\TheAtCode\relax
+\endinput
+%% END frame.tex/frame.sty