summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/pdftricks/test.tex
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-07-07 09:59:40 +0000
committerManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-07-07 09:59:40 +0000
commitc877f0c3b30848217693e23c8a66379d51e2b9d2 (patch)
treee4d69222e26c75bef43b702e8a8de0ae1e382b82 /Master/texmf-dist/doc/latex/pdftricks/test.tex
parentea7c7351861e5ff6aca84880673b8b5bc3d6e8ee (diff)
pdftricks v1.16 2003/08/10
git-svn-id: svn://tug.org/texlive/trunk@9326 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/pdftricks/test.tex')
-rw-r--r--Master/texmf-dist/doc/latex/pdftricks/test.tex254
1 files changed, 94 insertions, 160 deletions
diff --git a/Master/texmf-dist/doc/latex/pdftricks/test.tex b/Master/texmf-dist/doc/latex/pdftricks/test.tex
index 06083b49313..9ac4ef0b08b 100644
--- a/Master/texmf-dist/doc/latex/pdftricks/test.tex
+++ b/Master/texmf-dist/doc/latex/pdftricks/test.tex
@@ -1,10 +1,8 @@
\documentclass{ltxguide}
-\usepackage{txfonts,url}
-\usepackage[shell,debug]%
- {pdftricks}
+\usepackage{times,url}
+\usepackage[shell]{pdftricks}
\begin{psinputs}
-\usepackage{txfonts}
\usepackage{pstricks}
\usepackage{color}
\usepackage{pstcol}
@@ -17,12 +15,12 @@
\end{psinputs}
% 1. run pdfLaTeX
-% 2. run script `pst2pdf' by invoking ./pst2pdf
+% 2. run script `psrun' by invoking ./psrun
% 3. second run of pdfLaTeX
\begin{document}
-%\NoProcess[1-6]
+\NoProcess[1,3]
\title{Trivial Experiments with psTricks manipulation}
@@ -41,20 +39,19 @@
\maketitle
\section{Objectives}
-
|psTricks| macros cannot be used with pdf\TeX, since the high level
-PostScript language commands generated by the |psTricks| are unknown
-to pdf\TeX. As such, a package \emph{viz.}, |pdfTricks.sty| has been
-written to circumvent this limitation, so that the extensive
-facilities offered by the powerful |psTricks| package can be made use
-of in a pdf\TeX{} document. This is brought by making use of the shell
-escape function available in the |web2c| \TeX{} compiler, while this
-package is of no use to other commercial implementations.
-
-Shell escape provides us the facility of stopping a \TeX{} run midway,
-perform the functions that we do with a shell command, complete those
-functions, return to the \TeX{} run and finish the job. Within a
-package, this facility can be invoked by using
+PostScript language commands generated by the |psTricks| are unknown to
+pdf\TeX. As such, a package \emph{viz.}, |pdfTricks.sty| has been
+written to circumvent this limitation, so that the extensive facilities
+offered by the powerful |psTricks| package can be made use of in a
+pdf\TeX{} document. This is brought by making use of the shell escape
+function available in the |web2c| \TeX{} compiler, while this package
+is of no use to other commercial implementations.
+
+Shell escape provides us the facility of stopping a \TeX{} run
+midway, perform the functions that we do with a shell command, complete
+those functions, return to the \TeX{} run and finish the job. Within a
+package, this facility can be invoked by using
|\write18{shell command}|. So if you use a line:
\begin{decl}
|write18 ls -l|
@@ -72,20 +69,19 @@ default. You can either turn it on by changing the line in your
|shell_escape = t|
\end{decl}
which will be `|f|' by default. You have to recreate all the formats
-like |pdflatex.fmt| or whatever you might need. This is not a wise
-step though, since it makes you open to the assault of Trojan macros
-without your knowledge.
+like |pdflatex.fmt| or whatever you might need. This is not a wise step
+though, since it makes you open to the assault of Trojan macros without
+your knowledge.
-The more elegant way will be to invoke shell escape with a switch,
-each time you run the compiler like:
+The more elegant way will be to invoke shell escape with a switch, each
+time you run the compiler like:
\begin{decl}
|pdflatex -shell-escape <file name>|
\end{decl}
This eliminates the vulnerability to macros/packages written by
-intelligent criminal minds.
+intelligent criminal minds.
\section{Usage}
-
The usage is very simple, as usual you have to load the package with a
package loading line in the preamble of your document:
@@ -93,10 +89,11 @@ package loading line in the preamble of your document:
|\usepackage{pdftricks}|
\end{decl}
-All the packages that are needed for the compilation of the |pstricks|
-code shall be enclosed within an environment |\begin{psinputs}| \dots
- |\end{psinputs}| in order to make it available to all the figure
-documents during compilation. An example of this will look like
+All the packages that are needed for the compilation of the
+|pstricks| code shall be enclosed within an environment
+|\begin{psinputs}| \dots |\end{psinputs}| in order to make it
+available to all the figure documents during compilation. An
+example of this will look like
\begin{decl}
|\begin{psinputs}|\\
| \usepackage{pstricks}|\\
@@ -113,39 +110,43 @@ documents during compilation. An example of this will look like
\end{decl}
Each |pspicture| environment along with any macro code shall be
-enclosed within an environment \emph{viz.}, |pdfpic|. This will enable
-pdf\LaTeX{} to write external files like |fig1.tex|, |fig2.tex|,
-\dots, depending on the number of |psTricks| figures you have included
-in your document. |pdftricks| will intelligently find out whether your
-pdf\TeX{} implementation has shell escape facility enabled or not.
-Depending on this, there are two ways of approaching the problem which
-are given in the succeeding sections.
+enclosed within an environment \emph{viz.}, |pdfpic|. This will
+enable pdf\LaTeX{} to write external files like |fig1.tex|,
+|fig2.tex|, \dots, depending on the number of |psTricks| figures
+you have included in your document. |pdftricks| will
+intelligently find out whether your pdf\TeX{} implementation has
+shell escape facility enabled or not. Depending on this, there
+are two ways of approaching the problem which are given in the
+succeeding sections.
\subsection{With shell escape}
-With shell escape option invoked, one need not bother anything. The
-usual compilation with pdf\LaTeX{} will result in a |pdf| document
-with all the figures appearing in the correct positions. pdf\TeX{}
-will do the necessary job of writing all the |pstricks| code to self
-standing external |*.tex| documents, escapes to shell, compiles the
-|*.tex| document, converts to |*.eps|, translates to |*.pdf| and
-includes in the location where the |pstricks| code appeared.
+With shell escape option invoked, one need not bother anything.
+The usual compilation with pdf\LaTeX{} will result in a |pdf|
+document with all the figures appearing in the correct
+positions. pdf\TeX{} will do the necessary job of writing all
+the |pstricks| code to self standing external |*.tex| documents,
+escapes to shell, compiles the |*.tex| document, converts to
+|*.eps|, translates to |*.pdf| and includes in the location
+where the |pstricks| code appeared.
\subsection{Without shell escape}
-A special shell script viz., |pst2pdf| is also provided. Now as the
-second step, you have to execute this shell script, |pst2pdf| which
-will compile all the newly written |fig1.tex|,\dots, and respective
-|*.dvi| will be generated, which will be translated into respective
-|*.eps| files and finally translated to |*.pdf| by calling |epstopdf|.
-As a final step, you shall run pdf\LaTeX{} again, so that the |*.pdf|
-figures will be included with the usual |\includegraphics| command
-automatically in the locations wherever the |pstricks| code appeared.
+A special shell script viz., |pst2pdf| is also provided. Now as
+the second step, you have to execute this shell script,
+|pst2pdf| which will compile all the newly written
+|fig1.tex|,\dots, and respective |*.dvi| will be generated,
+which will be translated into respective |*.eps| files and
+finally translated to |*.pdf| by calling |epstopdf|. As a final
+step, you shall run pdf\LaTeX{} again, so that the |*.pdf|
+figures will be included with the usual |\includegraphics|
+command automatically in the locations wherever the |pstricks|
+code appeared.
See an example below:
\begin{verbatim}
-\begin{pdfdisplay}
+\begin{pdfpic}
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
\definecolor{LemonChiffon}{rgb}{1,0.98,0.8}
@@ -168,14 +169,12 @@ See an example below:
\psline(! x ValueTempA sub y ValueTempB sub)
(! x ValueTempA add y ValueTempB add)}}
\end{pspicture}
-\end{pdfdisplay}
+\end{pdfpic}
\end{verbatim}
-
This |psTricks| code will result in the following graphic:
-\configure[pdfgraphic][color=red,rulesep=12pt,
- linecolor=gray30,
- linewidth=2pt]
-\begin{pdfdisplay}
+\configure[pdfgraphic][color=red,
+ linecolor=gray30]
+\begin{pdfpic}
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
\definecolor{LemonChiffon}{rgb}{1,0.98,0.8}
@@ -198,7 +197,7 @@ This |psTricks| code will result in the following graphic:
atan rotate -9 0 moveto 18 0 rlineto stroke }
\fi}}
\endpspicture
-\end{pdfdisplay}
+\end{pdfpic}
The following are the steps in the sequential order:
\begin{decl}
@@ -210,24 +209,26 @@ The following are the steps in the sequential order:
\section{Options and Hooks}
\begin{description}
-
-\item[|shell|] This option will invoke the shell escape functions.
-\item[|noshell|] This option will suppress the shell escape functions
- and will assume that there is no shell escape facility.
+\item[|shell|] This option will invoke the shell escape
+functions.
+
+\item[|noshell|] This option will suppress the shell escape
+functions and will assume that there is no shell escape
+facility.
-\item[|NoProcess|] A new command |\NoProcess| has been introduced in
- this version to facilitate the suppressing of pdf generation of
- those figures whose pdf's are already available. This might prove
- helpful when you have more figures to process and many of them are
- perfected and don't need recompilation and translation everytime you
- run pdf\LaTeX. The usage is:
+\item[|NoProcess|] A new command |\NoProcess| has been introduced in this version
+to facilitate the suppressing of pdf generation of those figures
+whose pdf's are already available. This might prove helpful when
+you have more figures to process and many of them are perfected
+and don't need recompilation and translation everytime you run
+pdf\LaTeX. The usage is:
\begin{decl}
|\NoProcess{<comma separated and/or hyphen separated ranges>}|
\end{decl}
-If you have ten figures and if you want to suppress the processing of
-the figure numbers 1, 2, 4 to 8 you can issue the command at the top
-of the document as:
+If you have ten figures and if you want to suppress the
+processing of the figure numbers 1, 2, 4 to 8 you can issue the
+command at the top of the document as:
\begin{decl}
|\NoProcess{1,2,4-8}|
\end{decl}
@@ -240,32 +241,30 @@ included.
|\configure[pdfgraphic][height=3in]|\\
|\configure[pdfgraphic][width=2in,height=3in]|
\end{decl}
-the functionality is same as the |width| and |height| options as in
-the |\includegraphics| command. But the graphic will be restricted to
+the functionality is same as the |width| and |height| options as in the
+|\includegraphics| command. But the graphic will be restricted to
aspect ratio.
\section{Limitations/Dependencies}
-
\begin{itemize}
\item Usage is limited to |web2c| \TeX{} implementations.
\item The shell escape commands used in this package are typical
- \textsc{Unix} commands and as such it best works in
- \textsc{Linux/Unix} flavours.
+\textsc{Unix} commands and as such it best works in \textsc{Linux/Unix}
+flavours.
\item The package needs, |graphicx| and |keyval| packages; |epstopdf|,
- the Perl script that translates |eps| files into |pdf|.
+the Perl script that translates |eps| files into |pdf|.
\end{itemize}
\section{Licence}
The package is distributed under \textsc{gnu} General Public Licence.
\section{Examples}
-
Here are some examples of pstricks code and the figures generated by
pdf\LaTeX.
\subsection{Example 1}
\begin{verbatim}
\configure[pdfgraphic][width=2in,linecolor=red,background=gray10]
-\begin{pdfdisplay}
+\begin{pdfpic}
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
\definecolor{LemonChiffon}{rgb}{1,0.98,0.8}
@@ -288,12 +287,10 @@ pdf\LaTeX.
\psline(! x ValueTempA sub y ValueTempB sub)
(! x ValueTempA add y ValueTempB add)}}
\end{pspicture}
-\end{pdfdisplay}
+\end{pdfpic}
\end{verbatim}
-\configure[pdfgraphic][width=.9\linewidth,linecolor=red,
- rulesep=12pt,background=gray10,
- linewidth=2pt]
-\begin{pdfdisplay}
+\configure[pdfgraphic][width=\linewidth,linecolor=red,background=gray10]
+\begin{pdfpic}
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
\definecolor{LemonChiffon}{rgb}{1,0.98,0.8}
@@ -316,12 +313,12 @@ pdf\LaTeX.
\psline(! x ValueTempA sub y ValueTempB sub)
(! x ValueTempA add y ValueTempB add)}}
\end{pspicture}
-\end{pdfdisplay}
+\end{pdfpic}
\subsection{Example 2}
\begin{verbatim}
\configure[pdfgraphic][linecolor=blue,background=gray10,width=4in]
-\begin{pdfdisplay}
+\begin{pdfpic}
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
\definecolor{LemonChiffon}{rgb}{1,0.98,0.8}
@@ -363,12 +360,10 @@ pdf\LaTeX.
\textcolor{white}{List}} Motif Class}
\end{pspicture}
\endTeXtoEPS
-\end{pdfdisplay}
+\end{pdfpic}
\end{verbatim}
-\configure[pdfgraphic][linecolor=blue,
- linewidth=2pt, rulesep=6pt,
- background=gray10,scale=.8]
-\begin{pdfdisplay}
+\configure[pdfgraphic][linecolor=blue,background=gray10,scale=.8]
+\begin{pdfpic}
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
\definecolor{LemonChiffon}{rgb}{1,0.98,0.8}
@@ -410,12 +405,12 @@ pdf\LaTeX.
\textcolor{white}{List}} Motif Class}
\end{pspicture}
\endTeXtoEPS
-\end{pdfdisplay}
+\end{pdfpic}
\subsection{Example 3}
\begin{verbatim}
\configure[pdfgraphic][linecolor=black,background=gray30]
-\begin{pdfdisplay}
+\begin{pdfpic}
\TeXtoEPS
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
@@ -449,15 +444,13 @@ pdf\LaTeX.
\nbput[nrot=25,npos=.7]{\bunting}
\end{pspicture}
\endTeXtoEPS
-\end{pdfdisplay}
+\end{pdfpic}
\end{verbatim}
\configure[pdfgraphic][width=\linewidth,
- linewidth=2pt,
linecolor=gray30,
- background=gray10,
- rulesep=6pt]
-\begin{pdfdisplay}
+ background=gray10]
+\begin{pdfpic}
\TeXtoEPS
\definecolor{lightblue}{rgb}{0,0,.5}
\definecolor{Navy}{rgb}{0,0,0.5}
@@ -491,66 +484,7 @@ pdf\LaTeX.
\nbput[nrot=25,npos=.7]{\bunting}
\end{pspicture}
\endTeXtoEPS
-\end{pdfdisplay}
-
-\configure[pdfgraphic][width=\linewidth,
- linewidth=2pt,
- linecolor=gray30,
- background=gray10,
- rulesep=12pt]
-
-\begin{pdfdisplay}
-
-\definecolor{Pink}{rgb}{1.,0.75,0.8}
-% Flow diagram with the psmatrix environment\\[5mm]
-
- \psframebox[linearc=5mm,cornersize=absolute]{%
- \begin{psmatrix}[rowsep=0.5cm,colsep=0.8cm]
- \psovalbox[fillstyle=solid,fillcolor=yellow]{Begin} \\
- \psframebox{Initialisations} \\
- \psdiabox[fillstyle=solid,fillcolor=Pink]{Special} &
- \psframebox{Call to SP1} & \psframebox{Call to SP2} \\
- \psframebox{Action 1} \\
- \psframebox{Action 2} \\
- \psovalbox[fillstyle=solid,fillcolor=yellow]{End}
- % Links
- \ncline{1,1}{2,1}
- \ncline{2,1}{3,1}
- \ncline{3,1}{4,1}<{\textcolor{red}{No}}
- \ncline{4,1}{5,1}
- \ncline{5,1}{6,1}
- \ncline{->}{3,1}{3,2}^{\textcolor{red}{Yes}}
- \ncline{->}{3,2}{3,3}
- \ncbar[angleA=-90,armB=0,nodesepB=2.5mm]{->}{3,3}{4,1}
- \end{psmatrix}}
-\end{pdfdisplay}
+\end{pdfpic}
-\begin{verbatim}
-\begin{pdfdisplay}
-
-\definecolor{Pink}{rgb}{1.,0.75,0.8}
-% Flow diagram with the psmatrix environment\\[5mm]
-
- \psframebox[linearc=5mm,cornersize=absolute]{%
- \begin{psmatrix}[rowsep=0.5cm,colsep=0.8cm]
- \psovalbox[fillstyle=solid,fillcolor=yellow]{Begin} \\
- \psframebox{Initialisations} \\
- \psdiabox[fillstyle=solid,fillcolor=Pink]{Special} &
- \psframebox{Call to SP1} & \psframebox{Call to SP2} \\
- \psframebox{Action 1} \\
- \psframebox{Action 2} \\
- \psovalbox[fillstyle=solid,fillcolor=yellow]{End}
- % Links
- \ncline{1,1}{2,1}
- \ncline{2,1}{3,1}
- \ncline{3,1}{4,1}<{\textcolor{red}{No}}
- \ncline{4,1}{5,1}
- \ncline{5,1}{6,1}
- \ncline{->}{3,1}{3,2}^{\textcolor{red}{Yes}}
- \ncline{->}{3,2}{3,3}
- \ncbar[angleA=-90,armB=0,nodesepB=2.5mm]{->}{3,3}{4,1}
- \end{psmatrix}}
-\end{pdfdisplay}
-\end{verbatim}
\end{document}