summaryrefslogtreecommitdiff
path: root/texmf-dist/source/latex/aeb-tilebg/doc/aebbgtile_man.tex
blob: 166711eb861e7a20d24c53ad083330dd90f4adcc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
% makeindex < aebpro_man.idx > aebpro_man.ind
\documentclass{article}
\usepackage[fleqn]{amsmath}
\usepackage[
    web={centertitlepage,designv,forcolorpaper,tight*,latextoc,pro},
    eforms,
    linktoattachments,
%    attachments={../aeb_pro.dtx},
%    uselayers,
    aebxmp
]{aeb_pro}
\usepackage{graphicx,array,fancyvrb}
\usepackage[altbullet]{lucidbry}
%\usepackage{myriadpro}
%\usepackage{calibri}

%\usepackage{makeidx}
%\makeindex
\usepackage{acroman}

\def\meta#1{$\langle\textit{\texttt{#1}}\rangle$}
\let\ameta\meta

\usepackage[active]{srcltx}

\urlstyle{tt}

%\def\tutpath{doc/tutorial}
%\def\tutpathi{tutorial}
\def\expath{../examples}

\DeclareDocInfo
{
    university={\AcroTeX.Net},
    title={The \textsf{aeb\_tilebg} Package\texorpdfstring{\\}{: }Creating Tiled Backgrounds},
    author={D. P. Story},
    email={dpstory@acrotex.net},
    subject=Documentation for the aeb\_tilebg package,
    talksite={\url{www.acrotex.net}},
    version={1.2, 2018/04/26},
    keywords={LaTeX, Web package, tiled backgrounds, Adobe Acrobat},
    copyrightStatus=True,
    copyrightNotice={Copyright (C) \the\year, D. P. Story},
    copyrightInfoURL={http://www.acrotex.net}
}

\def\dps{$\hbox{$\mathfrak D$\kern-.3em\hbox{$\mathfrak P$}%
   \kern-.6em \hbox{$\mathcal S$}}$}

%\def\anglemeta#1{$\langle\textit{\texttt{#1}}\rangle$}
%\def\meta#1{\textit{\texttt{#1}}}
\def\darg#1{\texttt{\{#1\}}}
\def\takeMeasure{\bgroup\obeyspaces\takeMeasurei}
\def\takeMeasurei#1{\global\setbox\webtempboxi\hbox{\ttfamily#1}\egroup}
\def\bxSize{\wd\webtempboxi+2\fboxsep+2\fboxrule}
\let\pkg\textsf
\let\env\texttt
\let\opt\texttt
\let\app\textsf

\let\amtIndent\parindent %\leftmargini
\def\SUB#1{${}_{\text{#1}}$}

\newdimen\aebdimen \aebdimen 0pt %\advance\aebdimen\partopsep
\newcommand\bVerb[1][]{\begingroup#1\vskip\aebdimen\parindent0pt}%
\def\eVerb{\vskip\aebdimen\endgroup\noindent}

\makeatletter
\renewcommand{\paragraph}
    {\@startsection{paragraph}{4}{0pt}{6pt}{-3pt}{\bfseries}}
\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.5em}}
\renewcommand*\descriptionlabel[1]{\hspace\labelsep
    \normalfont #1}
\newcommand{\aebDescriptionlabel}[1]{%
    \setlength\dimen@{\amtIndent+\labelsep}%
    {\hspace*{\dimen@}#1}}
\makeatother
\newenvironment{aebDescript}
    {\begin{list}{}{\setlength{\labelwidth}{0pt}%
        \setlength{\leftmargin}{\leftmargin}%
        \setlength{\leftmargin}{\leftmargin+\amtIndent}%
        \setlength\itemindent{-\leftmargin}%
        \let\makelabel\aebDescriptionlabel
    }}{\end{list}}

\universityLayout{fontsize=Large}
\titleLayout{fontsize=LARGE}
\authorLayout{fontsize=Large}
\tocLayout{fontsize=Large,color=aeb}
\sectionLayout{indent=-62.5pt,fontsize=large,color=aeb}
\subsectionLayout{indent=-31.25pt,color=aeb}
\subsubsectionLayout{indent=0pt,color=aeb}
\subsubDefaultDing{\texorpdfstring{$\bullet$}{\textrm\textbullet}}

%\pagestyle{empty}
%\parindent0pt\parskip\medskipamount


\chngDocObjectTo{\newDO}{doc}
\begin{docassembly}
var titleOfManual="The aeb_tilebg MANUAL";
var manualfilename="Manual_BG_Print_tilebg.pdf";
var manualtemplate="Manual_BG_Brown.pdf"; // Blue, Green, Brown
var _pathToBlank="C:/Users/Public/Documents/ManualBGs/"+manualtemplate;
var doc;
var buildIt=true;
if ( buildIt ) {
    console.println("Creating new " + manualfilename + " file.");
    doc = \appopenDoc({cPath: _pathToBlank, bHidden: true});
    var _path=this.path;
    var pos=_path.lastIndexOf("/");
    _path=_path.substring(0,pos)+"/"+manualfilename;
    \docSaveAs\newDO({ cPath: _path });
    doc.closeDoc();
    doc = \appopenDoc({cPath: manualfilename, oDoc:this, bHidden: true});
    f=doc.getField("ManualTitle");
    f.value=titleOfManual;
    doc.flattenPages();
    \docSaveAs\newDO({ cPath: manualfilename });
    doc.closeDoc();
} else {
    console.println("Using the current "+ manualfilename + " file.");
}
var _path=this.path;
var pos=_path.lastIndexOf("/");
_path=_path.substring(0,pos)+"/"+manualfilename;
\addWatermarkFromFile({
    bOnTop:false,
    bOnPrint:false,
    cDIPath:_path
});
\executeSave();
\end{docassembly}
\begin{document}

\maketitle

\selectColors{linkColor=black}
\tableofcontents
\selectColors{linkColor=webgreen}

%\setTileBgGraphic[scale=.5]{brewtile1}
%\setTileBgGraphic[scale=.5]{math-bkgrd}
%\setTileBgGraphic[scale=.25]{bike_10}
%\setTileBgGraphic[scale=.2]{tile/tmfpurple_50}
%\setTileBgGraphic[scale=1]{g8pat26}
%\setTileBgGraphic[scale=.5]{th11an12_20}
% n_rows, n_columns, left,right,top, bottom
%\autosetScreensizeWithMargins{4}{3}{.25in}{.25in}{24pt}{.25in}
%\autosetScreensizeWithMargins{7}{5}{.25in}{.25in}{24pt}{.25in}

%\textBgColor{cornsilk}

%\setTileBgGraphic[scale=.75]{tile/brewtile1}

\section{Introduction}

This package, \texttt{aeb\_tilebg}, is a simple application
of established packages \textsf{graphicx}, \textsf{multido} and
\pkg{web}.

Download your favorite tiled background swatch from the Internet or create one yourself,
convert it to an \texttt{.eps} or a \texttt{.pdf} format (depending
if you use \textsf{distiller} or \textsf{pdftex}), place that image
in the same folder as your source document. Anywhere in your
document, use the command \verb!\setTileBgGraphic! to bring in your
tiled background using the \textsf{graphicx} package; for example,
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small,commandchars=!()]
\setTileBgGraphic[scale=.5]{!meta(graphics_file)}
\end{Verbatim}
The \textsf{multido} package places these images in the background,
starting from the upper-left corner (the lower left corner if the
\texttt{uselltiling} option is taken) going across and down
(respectively, going across and up), one row at a time. The \pkg{web}
package is used to manage the graphical template created.

During the development of this package, I Googled ``backgrounds'',
``tiled backgrounds'' and ``math tiled backgrounds'' and found,
amongst many, the following links
\begin{quote}
\url{http://www.patswebgraphics.com/tiled.html}\\
\url{http://www.rhiossampler.com/Backgrounds/TBGIndex.htm}\\
\url{http://www.backgroundcity.com/}\\
\url{http://www.wou.edu/~burtonl/mathart/mathart.html}
\end{quote}
I downloaded a few of the swatches and used them during the testing
phase. The mathematical tiles of last the URL listed above are
particularly interesting.

\section{Alternate package name: \texorpdfstring{\protect\pkg{aeb-tilebg}}{aeb-tilebg}}

This package is listed on CTAN as \pkg{aeb-tilebg}, there is now a `dummy' package by
that name that loads \pkg{aeb\_tilebg} with the specified options.

\section{The Preamble and Package Options}

In the preamble, place the \textsf{aeb\_tilebg} package like so
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small,commandchars=!()]
\usepackage[!meta(options)]{aeb_tilebg}
\end{Verbatim}
This must be placed after the introduction of the web package. A
typical preamble might be
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small,commandchars=!()]
\documentclass{article}
\usepackage[!meta(driver),tight,designiv,usetemplates]{web}
\usepackage[!meta(options)]{aeb_tilebg}
\end{Verbatim}
where \meta{driver} can be \texttt{dvipsone}, \texttt{dvips} or
\texttt{pdftex} (which include the \textsf{lualatex} application) and
\texttt{xetex}. Only the \texttt{usetemplates} option and the driver type
are required options here, the others are optional.\footnote{The \textsf{web} package
automatically detects \textsf{pdftex} and \textsf{xetex} so they need not be specified.}

The options of the \textsf{aeb\_tilebg} package are as follows:
\begin{enumerate}
\item \texttt{uselltiling}: When the package tiles a background, it
begins in the upper left corner, goes across the row from left to
right, then moves downward to the next row. This is the default
behavior. The algorithm uses the multido command and floating point
arithmetic; there may be some round off that leaves the tiles not
quite contiguous, though I haven't observed this myself. If the
upper-left starting point does not give satisfactory results, try
using \texttt{uselltiling}, this option causes \textsf{aeb\_tilebg}
to begin tiling in the lower-left corner; tiling moves left-to-right
and upward.  This uses a faster, more accurate algorithm of multido
and should be superior and give the contiguous tiling you want.
\item \texttt{draft}: Tiling slows down {\LaTeX} compilation and
obscures the text content as viewed in the previewer; therefore, use
the \texttt{draft} to suppress tiling during the content development
phase of the document.  Remove the option to build the final
document.
\item \texttt{ignoreforpaper}: The default behavior of
\textsf{aeb\_tilebg} is to automatically remove the tiling when the
\texttt{forpaper} option of the \pkg{web} package is selected. To
ignore this default ``forpaper'' behavior, select the
\texttt{ignoreforpaper} option; then, even if the \texttt{forpaper}
option is used, tiling of the document will occur.
\end{enumerate}

\section{The Commands}

There are only a few commands of this package, which we list and
discuss in this section.

To specify the graphics file that is to be tiled, use the
\cs{setTileBgGraphic}, the central command of this package:
\bVerb\takeMeasure{\string\setTileBgGraphic[\meta{key\_values}]\darg{\meta{filename}}}%
\begin{dCmd}[commandchars=!()]{\bxSize}
\setTileBgGraphic[!meta(key_values)]{!meta(filename)}
\end{dCmd}
\endgroup
\PD The two parameters are passed to the \cs{includegraphics}
command of the \textsf{graphicx} package, consequently, their descriptions are
the same: the \texttt{\ameta{filename}} is the base name of the graphics
file and \texttt{\ameta{key\_values}} are any options of the
\cs{includegraphics} command desired. The package automatically
inserts the \texttt{hiresbb} option of \cs{includegraphics} to get a
better fit of the tiles; specifying this option, therefore, is not
needed.

\CmdLoc This command can be placed in the preamble to tile beginning
at the first page, or anywhere in the body of the document to tile
the current page, and all pages thereafter. The tile graphic can be
changed freely, just by specifying a new graphics file in the
\cs{setTileBgGraphic} command.

Below is an example of usage:
\bVerb\takeMeasure{\string\setTileBgGraphic[scale=.5]\darg{IndianBlanket}}%
\begin{dCmd*}[commandchars=!()]{\bxSize}
\setTileBgGraphic[scale=.5]{IndianBlanket}
\end{dCmd*}
\eVerb
The \texttt{scale} option re-scales the graphics by a factor given
as its value.  This option is often used to set the size of the
tile, appropriate to the screen size. Other useful options are
\texttt{width} and \texttt{height}.

You can disable and enable tiling using the following two commands:%
\bVerb\takeMeasure{\string\disableTiling\quad\string\enableTiling}%
\begin{dCmd}[commandchars=!()]{\bxSize}
\disableTiling!quad\enableTiling
\end{dCmd}
\eVerb
When you execute \cs{enableTiling}, the graphic tile currently
defined will be used. You can change the tiling as well

You can disable tiling by using the \verb!\disableTiling! command then\dots
\bVerb\takeMeasure{\string\setTileBgGraphic[scale=.2]\darg{tmfpurple\_50}}%
\begin{dCmd*}[commandchars=!()]{\bxSize}
\disableTiling
...
\enableTiling
\setTileBgGraphic[scale=.2]{tmfpurple_50}
\end{dCmd*}
\eVerb
For \texttt{multido}, the number of iterations must be specified in
advance. The \textsf{aeb\_tilebg} package uses \cs{multidostop} to
break out of a \texttt{multido} loop early. By default it is set at
10, but can be changed through the \cs{maxiterations}
command,\footnote{It may become necessary to increase this number if
you decide to have a lot of tiles per page (increasing the size of
your file, I might add) or if you use the \texttt{ignoreforpaper}
command, where you are now trying to tile a larger area than
typically is done for the screen.}%
\bVerb\takeMeasure{\string\maxiterations\darg{\meta{number}}}%
\begin{dCmd}[commandchars=!()]{\bxSize}
\maxiterations{!meta(number)}
\end{dCmd}
\eVerb
here, the parameter \meta{number} is the maximum number of iterations to
be performed by the (nested) \texttt{multido}'s that tile the background.
The default is \verb!\maxiterations{10}!.

\exSrc{tilebg_tst} The file \texttt{tilebg\_tst.tex} is the demo file
for the above series of commands.

\newtopic The tiling algorithm automatically determines how many
rows and columns you need to completely cover the background. This,
of course, leads to partial tiles appearing in the background. In
most cases this is not a problem; however, if you are particularly
picky, you want only complete tiles to appear, no partials please.
To accomplish this wonder feat of magic, use the
\cs{autosetScreensizeWithMargins} command.%
\bVerb\takeMeasure{\small\string\autosetScreensizeWithMargins\darg{\meta{n\_rows}}%
\darg{\meta{n\_cols}}\darg{\meta{lm}}\darg{\meta{rm}}\darg{\meta{tm}}\darg{\meta{bm}}}%
\begin{dCmd}[fontsize=\small,commandchars={!()}]{\bxSize}
\autosetScreensizeWithMargins{!meta(n_rows)}{!meta(n_cols)}{!meta(lm)}{!meta(rm)}{!meta(tm)}{!meta(bm)}
\end{dCmd}
\endgroup
\PD The command has six parameters, as listed below and described
briefly.
\begin{enumerate}
\item \meta{n\_rows}: number of rows
\item \meta{n\_cols}: number of columns
\item \meta{lm}: length of left margin
\item \meta{rm}: length of right margin
\item \meta{tm}: length of top margin
\item \meta{bm}: length of bottom margin
\end{enumerate}
\Important This command, which sets the screen dimensions of the
document, can be used only in the preamble. When using this command,
do not specify a design argument for the \pkg{web} package,\footnote{This is
referring to the \pkg{web} options of
\texttt{designi}--\texttt{designvii}.} and don't use either the
\cs{margins} or \cs{screensize} commands of \pkg{web} as these two
commands are used by \cs{autosetScreensizeWithMargins}.

An example of usage is\setbox\webtempboxi\hbox{\ttfamily\string\autosetScreensizeWithMargins\{7\}\{5\}\{.25in\}\{.25in\}\{24pt\}\{.25in\}}%
\begin{dCmd*}{\wd\webtempboxi+2\fboxsep}
\setTileBgGraphic[scale=.25]{bike_10}
\autosetScreensizeWithMargins{7}{5}{.25in}{.25in}{24pt}{.25in}
\end{dCmd*}
The last four parameters are typical margin settings for the \pkg{web}
package.

\exSrc{tilebg_tst_auto} \texttt{tilebg\_tst\_auto.tex} is the demo file
for the \cs{autosetScreensizeWithMargins} command.

\section{Reducing the file size}

Tiling the background increases the file size of the document. I believe
pdftex and xetex can reuse a graphics file to reduce the file size, and
does a decent job.

\subsection{Tiling using the \textsf{graphicxsp} package}

One approach to reducing file size is to embed your tile graphic once and
use and reuse it without significantly increasing file size. How is this
done? Using the \textsf{graphicxsp} package.

We outline the method through example. In the preamble, we have,
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small,commandchars=!()]
\usepackage[tight,designiv,usetemplates]{web}
\usepackage{graphicxsp}
\usepackage{aeb_tilebg}

\embedEPS[transparencyGroup]{bike}{tile/bike_10}
\setTileBgGraphic[name=bike,
  transparency={/ca .3},scale=.25]{tile/bike_10}
%\autosetScreensizeWithMargins{7}{5}{.25in}{.25in}{24pt}{.25in}
\end{Verbatim}
You can optionally set the dimensions of the page to exactly 7 rows and 5
columns. With \textsf{graphicxsp}, you embed the graphic using
\cs{embedEPS} and give it a name, \texttt{bike} in this example. In the
optional argument of \cs{setTileBgGraphic} we pass that name using the
\meta{name} key and pass some transparency settings as well. See the
documentation of \texttt{graphicxsp} for more information.

\exSrc{tilebg_tst_sp} \texttt{tilebg\_test\_sp.tex} is the test file for
demonstrating this method. Acrobat Distiller is required as the PDF
creator.

\subsection{Tiling using \textsf{graphicxsp} and layers}

One criticism of a background or tiled background is that it is really not
desired when the document is printed. However, if you put the background
in layers and set the layers never to print, the problem is solved. To use
layers, the \texttt{uselayers} option of the \textsf{aeb\_pro} package
must be used (with Distiller as the PDF creator). To get the tiles to
appear in their a layer (all in the same layer), use the
\textsf{aeb\_tilebg} \cs{placeTilesinLayers} command.
\bVerb\takeMeasure{\string\placeTilesinLayers[\meta{name}]\darg{\meta{KV-pairs}}}%
\begin{dCmd}[commandchars={!()}]{\bxSize}
\placeTilesinLayers[!meta(name)]{!meta(KV-pairs)}
\end{dCmd}
\eVerb
The \meta{name} argument is the name of the layer, the default is
\texttt{tileBG}. The \meta{KV-pairs} argument consists of key-value pairs
that are recognized by the \cs{xBld} command of {\AEBP}, refer to the
documentation of \cs{xBld} in the {\AEBP} manual.

We outline the method through example. In the preamble, we have,
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small,commandchars=!()]
\usepackage[
    graphicxsp,uselayers,
    web={tight,designiv,usetemplates}
]{aeb_pro}
\usepackage{aeb_tilebg}
\embedEPS[transparencyGroup]{bike}{tile/bike_10}
\placeTilesinLayers{initState=on,print=never}
\setTileBgGraphic[name=bike,
  transparency={/ca .3},scale=.25]{tile/bike_10}
\end{Verbatim}
This is pretty much the same as the previous example, except \textsf{aeb\_pro}
is used with the \texttt{uselayers} option.

\exSrc{tilebg_tst_layers}\texttt{tilebg\_tst\_layers.tex} is the test file for
demonstrating this method. Acrobat Distiller is required as the PDF
creator, the \texttt{Standard\_transparency.joboptions}, which ships with \pkg{aeb\_pro},
is required to distill this file so it has a transparent background.

\begin{comment}
\subsection{Using Acrobat Pro}

The key to this technique is to use the
\texttt{addWatermarkFromFile()} JavaScript method for Acrobat. For
convenience, it is suggested that the \texttt{aeb\_pro} package be
used to make this technique straightforward. The preamble might look
like the following:
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small]
\documentclass{article}
\usepackage[
    web={tight,usetemplates}
]{aeb_pro}
\usepackage{aeb_tilebg}
\end{Verbatim}

The steps are as follows:
\begin{enumerate}
    \item Open the file \texttt{tilebg\_blank.tex}. This is a simple
    file that produces one (or more) page(s). Set the design
    parameter of \Web, as desired, or, remove the design option, set
    your own screen size, or let \cs{autosetScreensizeWithMargins}
    set the size by using, as described above (using a graphic tile
    of your choice).
    \item Compile the file, distill, and save the \texttt{.pdf} with a name
    of your choice.
    \item Now, in your document, the one that uses
    \texttt{aeb\_pro}, insert the \texttt{docassembly} environment
    in the preamble:
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small]
\begin{docassembly}
\addWatermarkFromFile({
    bOnTop:false,
    cDIPath:"/C/acrotex/aeb_tilebg/bike_bg.pdf"
});
\executeSave();
\end{docassembly}
\end{Verbatim}
    \item If you are not using \cs{autosetScreensizeWithMargins},
    in the preamble, set up the file without any tiling by executing
    \cs{disableTiling}. If you are using the command
    \cs{autosetScreensizeWithMargins}, the screen size must be set
    up to match the screen size of your background template;
    in this case, your preamble should read something like this
\begin{Verbatim}[xleftmargin=\amtIndent,fontsize=\small]
\setTileBgGraphic[scale=.25]{tile/bike_10}
\autosetScreensizeWithMargins{7}{5}{.25in}{.25in}{24pt}{.25in}
\disableTiling
\end{Verbatim}
\item Compile and distill, the Acrobat JavaScript retrieves your
background template embeds it in the PDF document, and uses and
reuses the graphic on each of the specified pages.
\end{enumerate}
\exSrc{tilebg_tst_pro} See the files \texttt{tilebg\_blank.tex} and
\texttt{tilebg\_tst\_pro.tex} for an example.
\end{comment}

\subsection{Comparison of file sizes}

We build and noted the file size of one of the test files under various
conditions.
\begin{flushleft}
\hspace*{\amtIndent}\begin{tabular}{llll}
\textbf{Driver}&\textbf{graphicx}&\textbf{graphicxsp}&\textbf{Reduced Size PDF}\\
\texttt{dvips}&797KB&42KB&23KB\\
\texttt{pdftex}&62KB&--&--\\
\texttt{xetex}&27KB&--&--
\end{tabular}
\end{flushleft}
Using the standard graphics package \texttt{graphicx}, \texttt{dvips} does
the worst with \texttt{xetex} doing best. For \texttt{dvips}, with the
test file uses \texttt{graphicxsp}, the file size is reduced to
\texttt{43KB}, and reduced further when the Reduced Size PDF operation is
performed by Acrobat, accessed through the menu
\texttt{File\;>\;Save\;As\;Other\;>\;Reduced\;Size\;PDF}.\footnote{The user-interface is often redesigned, this is the location
for Acrobat~11.}

% 797KB (no sp)
% 42KB (sp) 23KB (reduced)
% 51KB, 26KB reduced  (sp in layers)

% 62KB (pdftex)
% 27KB (xetex)

\newtopic\noindent
Now, I simply must get back to my retirement. \dps

\end{document}