]> www.wagner.pp.ru Git - sites/home_page.git/blob - software/TeX/disklabel.sty
fixed broken geography/fGIS/tclext.html
[sites/home_page.git] / software / TeX / disklabel.sty
1 %% disklabel.sty
2 %% Author: Victor V. Wagner <vitus@ice.ru>
3 %% Author: Artem V. Chuprina <ran@lpcs.math.msu.ru>
4 %%
5 %% printing a labels for CD and Zip disk and cassette boxes
6 %% provides environments
7 %%
8 %% ziplabel --- for IOMEGA ZIP disks
9 %% cdlabel --- for CDs
10 %% cassettelabel --- for cassettes
11 %%
12 %% disklabelbackside, disklabeltwoside --- generic labels.
13 %%              Set lengths \coverwidth, \coverheight and \coverdepth
14 %%              appropriately before use.
15 %%
16 %% \begin{disklabelbackside}[backside label]{left-or-both-side label}
17 %% Main label paragraph
18 %% \end{disklabelbackside}
19 %% makes ----------------------------------------
20 %%       |       |   |                          |
21 %%       |       |   |  Main label paragraph    |
22 %%       |   B   | L |                          |
23 %%       |   S   | S |                          |
24 %%       |   L   | L |                          |
25 %%       |       |   |                          |
26 %%       |       |   |                          |
27 %%       ----------------------------------------
28 %% Where BSL is a anticlockwise-rotated backside or both-side label,
29 %% LSL is a anticlockwise-rotated left-or-both-side label.
30 %%
31 %% \begin{disklabeltwoside}[leftside label]{right-or-both-side label}
32 %% Main label paragraph
33 %% \end{disklabeltwoside}
34 %% makes ------------------------------------
35 %%       |   |                          |   |
36 %%       |   |  Main label paragraph    |   |
37 %%       | L |                          | R |
38 %%       | S |                          | S |
39 %%       | L |                          | L |
40 %%       |   |                          |   |
41 %%       |   |                          |   |
42 %%       ------------------------------------
43 %% Where LSL is a anticlockwise-rotated leftside or both-side label,
44 %% RSL is a anticlockwise-rotated right-or-both-side label.
45 %%
46 %% BSL, LSL and RSL are read in LR mode, so they should be hboxes or one-line
47 %% text. Main label paragraph is read in paragraph mode.
48 %%
49 %% Copyright (c) by Victor B. Wagner & Artem V. Chuprina 1998
50 %%
51 \def\fileversion{0.0}
52 \def\filedate{1998/10/04}
53 \ProvidesPackage{disklabel}[\filedate\space\fileversion\space Disk labelling]
54 \NeedsTeXFormat{LaTeX2e}
55 \RequirePackage{rotating}
56
57 \newlength{\coverwidth}
58 \newlength{\coverheight}
59 \newlength{\coverdepth}
60 \newlength{\coverbackside}
61 \newlength{\labelpagewidth}
62 \newlength{\covermargin}
63 \setlength{\covermargin}{4mm}
64 %
65 % Page setup
66 %
67 \pagestyle{empty}
68 \oddsidemargin=-0.75in
69 \textwidth=210mm
70 \topmargin=-0.5in % Leave something for techical purposes
71 \headsep=0pt
72 \headheight=0pt
73 \textheight=290mm
74 %
75 \def\disklabelbackside{\@ifnextchar[{\diskl@belbacksidenonequ@l}{\diskl@belbacksideequ@l}}
76 \def\diskl@belbacksideequ@l#1{\diskl@belbackside{#1}{#1}}
77 \def\diskl@belbacksidenonequ@l[#1]{\diskl@belbackside{#1}}
78 \def\diskl@belbackside#1#2{%
79     \labelpagewidth=\coverwidth%
80     \advance\labelpagewidth by -2\covermargin%
81     \vbox
82     \bgroup
83         \hrule
84         \hbox
85         \bgroup%
86             \vrule%
87             \hbox to \coverbackside
88             {%
89                 \hfil\sideways%
90                 \hbox to \coverheight{\hfil#1\hfil}%
91                 \endsideways\hfil%
92             }%
93             \vrule%
94             \hbox to \coverdepth
95             {%
96                 \hfil\sideways%
97                 \hbox to \coverheight{\hfil#2\hfil}%
98                 \endsideways\hfil%
99             }%
100             \vrule%
101             \hbox to \coverwidth
102             \bgroup%
103                 \hsize=\labelpagewidth%
104                 \hspace{\covermargin}%
105                 \vbox to \coverheight%
106                 \bgroup%
107                     \vspace{\covermargin}
108 }
109 \def\enddisklabelbackside{
110                     \vss
111                 \egroup%
112                 \hspace{\covermargin}%
113             \egroup%
114             \vrule%
115         \egroup%
116         \hrule
117     \egroup
118 }
119
120 \def\disklabeltwoside{\@ifnextchar[{\diskl@beltwosidenonequ@l}{\diskl@beltwosideequ@l}}
121 \def\diskl@beltwosideequ@l#1{\diskl@beltwoside{#1}{#1}}
122 \def\diskl@beltwosidenonequ@l[#1]{\diskl@beltwoside{#1}}
123 \def\diskl@beltwoside#1#2{%
124     \labelpagewidth=\coverwidth%
125     \advance\labelpagewidth by -2\covermargin%
126     \vbox
127     \bgroup
128         \hrule
129         \hbox
130         \bgroup%
131             \vrule%
132             \hbox to \coverdepth
133             {%
134                 \hfil\sideways%
135                 \hbox to \coverheight{\hfil#1\hfil}%
136                 \endsideways\hfil%
137             }%
138             \def\diskl@beltwoside@secondparameter{#2}%
139             \vrule%
140             \hbox to \coverwidth
141             \bgroup%
142                 \hsize=\labelpagewidth%
143                 \hspace{\covermargin}%
144                 \vbox to \coverheight%
145                 \bgroup%
146                     \vspace{\covermargin}
147 }
148 \def\enddisklabeltwoside{
149                     \vss
150                 \egroup%
151                 \hspace{\covermargin}%
152             \egroup%
153             \vrule%
154             \hbox to \coverdepth
155             {%
156                 \hfil\sideways%
157                 \hbox to \coverheight{\hfil\diskl@beltwoside@secondparameter\hfil}%
158                 \endsideways\hfil%
159             }%
160             \vrule%
161         \egroup%
162         \hrule
163     \egroup
164 }
165
166 \def\ziplabel{%
167     \setlength{\coverwidth}{96mm}%
168     \setlength{\coverheight}{96mm}%
169     \setlength{\coverdepth}{7mm}%
170     \setlength{\coverbackside}{2cm}%
171     \disklabelbackside%
172 }
173 \def\endziplabel{\enddisklabelbackside}
174
175 \def\cassettelabel{%
176     \setlength{\coverwidth}{65mm}%
177     \setlength{\coverheight}{100mm}%
178     \setlength{\coverdepth}{13mm}%
179     \setlength{\coverbackside}{20mm}%
180     \disklabelbackside%
181 }
182 \def\endcassettelabel{\enddisklabelbackside}
183
184 \def\cdlabel{%
185     \setlength{\coverwidth}{138mm}%
186     \setlength{\coverheight}{117mm}%
187     \setlength{\coverdepth}{6mm}%
188     \setlength{\coverbackside}{0cm}%
189     \disklabeltwoside%
190 }
191 \def\endcdlabel{\enddisklabeltwoside}
192 \endinput