summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/generic')
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/CHANGES90
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/README22
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/pst-pdf-example.tex224
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/pst-pdf.pdfbin0 -> 151828 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/pst-pdfDE.pdfbin0 -> 407438 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf116
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat70
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.noMiKTeX66
-rw-r--r--Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.w958
9 files changed, 596 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/CHANGES b/Master/texmf-dist/doc/generic/pst-pdf/CHANGES
new file mode 100644
index 00000000000..f9a7f37f282
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/CHANGES
@@ -0,0 +1,90 @@
+v1.0a
+ General: Initial version.
+v1.0b
+ General: Some code and documentation cleaning. (RN)
+v1.0c
+ General: New options "pstricks", "nopstricks", "draft" and
+ "final". (RN)
+v1.0d
+ General: Redefinition of \includegraphics in modes 0 und 1.
+ Now using of eps graphics directly in pdfLaTeX is possible.
+ (RN)
+v1.0e
+ postscript: "trim" option added. (RN)
+v1.0f
+ General: Config file loading added. (RN)
+ \savepicture: New macro \savepspicture. (RN)
+ \usepicture: New macro \usepspicture. Useful for putting a
+ PSTricks graphic in a box or something else. (RN)
+v1.0g
+ General: Definition of \PDFcontainer now with \edef. (RN)
+ \usepicture: Now \usepspicture does accept a numerical
+ parameter. (RN)
+v1.0h
+ postscript: Based no more on the comment environment from the
+ verbatim package. (RN)
+v1.0i
+ \ppf@is@pdfTeX@graphic: No more errors for given files without
+ extensions. (RN)
+v1.0j
+ General: Check AtBeginDocument for package `pstricks' even if
+ "nopstricks" is given. (RN)
+v1.0k
+ \Gin@setfile: Show also the pagenumber if exist. (RN)
+ \Ginclude@graphics: Prevent division by zero. (RN)
+v1.0l
+ General: Options "framesep", "framerule", "linewidth" removed,
+ "fname" and "innerframe" added. (RN)
+v1.0m
+ General: New package option "notightpage" added. (RN)
+v1.0n
+ General: Changed marcro names (\savepicture and \usepicture).
+ (RN)
+ Some code cleaning. (RN)
+v1.0o
+ General: New code for "notightpage". (RN)
+ Option "fname" renamed to "showname". (RN)
+v1.0p
+ General: Some code and documentation cleaning. (RN)
+v1.0q
+ \usepicture: Now \usepspicture works for all kind of graphics.
+ (RN)
+v1.0r
+ \ppf@is@pdfTeX@graphic: Changed \ppf@is@known@graphic to
+ \ppf@is@pdfTeX@graphic. Now pdfTEX graphics are prefered.
+ (RN)
+v1.0s
+ General: Scaling e.g. of PostScript pictures now only in
+ extraction mode. Some code cleaning. (RN)
+ \Gin@ii: Rewritten. (RN)
+v1.1a
+ General: Support for the internal PSTricks macro \pst@object.
+ (HjG/RN)
+v1.1b
+ General: Ignore the call of \nofiles inside of preview. (RN)
+ Some code and documentation cleaning. (RN)
+v1.1c
+ General: New package option "tightpage" added. (RN)
+ Special support for "tabularx". (RN)
+ Supress handling of pdfLaTeX graphic formats in DVI mode.
+ (RN)
+v1.1d
+ psmatrix: Support for PSTricks environment "psmatrix". (RN)
+v1.1e
+ General: New option "displaymath" (see preview package).
+ (HjG/RN)
+v1.1f
+ General: Package option "ignore" reimplemented. Now the
+ compilation of the dtx file in LaTeX mode is possible. (RN)
+v1.1g
+ psmatrix: "psmatrix" environment (preserve math mode).
+ (RN/HjG)
+ pspicture: pspicture environment must still parse its
+ arguments. (RN/HjG)
+v1.1h
+ \Ginclude@graphics: Check if inside of a PS-related environment
+ (correct graphic inclusion). (RN)
+v1.1i
+ General: \ifpr@outer must be predefined. (HjG/RN)
+ Package option "final" also for "graphicx". (RN)
+ \Ginclude@graphics: Correction of the inside check. (RN/HjG)
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/README b/Master/texmf-dist/doc/generic/pst-pdf/README
new file mode 100644
index 00000000000..1c7fb2251b1
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/README
@@ -0,0 +1,22 @@
+pst-pdf.sty
+A package to integrate PostScript code into a PDF output.
+Load the testfile test.tex and run it with the shell script.
+
+ps4pdf test
+
+(without extension) it produces the output file test.pdf
+Be sure that the script is executable.
+
+
+pst-pdf.sty -> $TEXMF-LOCAL
+ps4pdf -> /usr/local/bin
+ the shell script for running latex->dvips->ps2pdf->pdflatex
+
+
+without a shell script, run
+
+latex <file>
+dvips -Ppdf -o <file>-pics.ps <file>.dvi
+ps2pdf -dAutoRotatePages=/None <file>-pics.ps <file>-pics.pdf
+pdflatex <file>
+
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/pst-pdf-example.tex b/Master/texmf-dist/doc/generic/pst-pdf/pst-pdf-example.tex
new file mode 100644
index 00000000000..fe00b69c35d
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/pst-pdf-example.tex
@@ -0,0 +1,224 @@
+%%
+%% This is file `pst-pdf-example.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% pst-pdf.dtx (with options: `example')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2004 by Rolf Niepraschk <Rolf.Niepraschk@ptb.de>
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX version
+%% 1999/12/01 or later.
+%%
+
+\listfiles\errorcontextlines=100\relax
+\documentclass[12pt]{article}
+
+%% before `psfrag'!
+\usepackage[displaymath,dvipsnames]{pst-pdf}
+%%\usepackage[displaymath,dvipsnames,notightpage]{pst-pdf}
+
+\usepackage{pst-node,pst-tree}
+
+\usepackage{psfrag,tabularx}
+
+\pagestyle{empty}
+
+\begin{postscript}[trim=0 0 0 0,ignore]
+ \includegraphics[width=.475\textwidth]{penguin.eps}
+\end{postscript}
+\savepicture{ps:A}
+
+\begin{document}
+
+\setkeys{Gin}{showname,frame}%
+
+\psset{unit=0.0714\textwidth}% 1/14 * \textwidth
+\newpsobject{showgrid}{psgrid}{subgriddiv=1,griddots=10,gridlabels=6pt}
+
+\newcommand*\BASEMARKER{\rule{.5em}{.4pt}}
+
+\setlength\parindent{0pt}
+
+\centering
+
+\section*{\textsf{pst-pdf:}
+ PSTricks and other PostScript code in pdf\LaTeX\ documents}
+
+\vfill
+
+\begin{pspicture}(-5.5,-5.25)(5.25,5.25)%
+%%\begin{pspicture}[trim=-.5 -.25 .25 .25,frame](-5,-5)(5,5)% PSTricks2
+ \pscircle*[linecolor=Apricot]{5}
+ \rput(0,0.5){\includegraphics[width=8\psxunit]{elephant}}
+ \Huge\sffamily\bfseries
+ \rput(-4.5,4.5){A} \rput(4.5,4.5){B}
+ \rput(-4.5,-4.5){C}\rput(4.5,-4.5){D}
+ \rmfamily
+ \rput(0,-3.8){PSTricks}
+ \rput(0,3.8){\LaTeX}
+ \showgrid
+\end{pspicture}\savepicture{ps:B}
+
+\vfill\null\newpage
+
+\usepicture{ps:A}
+\hfill
+\includegraphics[width=.475\textwidth]{insect1}
+
+\vfill
+
+\usepicture[angle=180,origin=c]{ps:A}
+\hfill
+\usepicture[width=.47\textwidth]{ps:B}
+
+\includegraphics[width=.475\textwidth,frame=false,
+ namefont={\Huge\itshape}]{knuth}
+\hfill
+\usepicture[angle=45,origin=bl,width=.475\textwidth,innerframe]{1}%
+
+\vfill
+
+\includegraphics[width=.47\textwidth]{psf-demo}
+\hfill
+\begin{psfrags}
+ \psfragscanon
+ \psfrag{x1}[br][ ]{\LaTeX} \psfrag{x2}[br][br]{\LaTeX}
+ \psfrag{x3}[br][tl]{\LaTeX} \psfrag{x4}[br][Br]{\LaTeX}
+ \psfrag{x5}[Br][ r][1.15][45]{\Huge\LaTeX}
+ \psfrag{x6}[tl][ l][1.15][45]{\Huge\LaTeX}
+ \includegraphics[width=.47\textwidth]{psf-demo}
+\end{psfrags}
+
+\includegraphics[width=\textwidth,showname=false,frame=false]{insect15}
+
+\bigskip
+
+\Large
+
+\begin{equation}
+ \sigma(t)=\frac{1}{\sqrt{2\pi}}
+ \int^t_0 e^{-x^2/2} dx
+\end{equation}
+
+\clearpage
+
+\setkeys{Gin}{showname=false,frame=false}%
+
+{ \Huge \renewcommand*\arraystretch{1.5}
+
+ \noindent
+ \begin{tabularx}{\textwidth}{|@{}>{\centering}X@{}|} \hline
+
+ \psframebox*[fillcolor=green,framearc=.6]{HUGO}\BASEMARKER
+ \fbox{\BASEMARKER GUSTAV} \tabularnewline
+
+ \begin{postscript}
+ \psframebox*[fillcolor=green,framearc=.6]{HUGO}\BASEMARKER
+ \fbox{\BASEMARKER GUSTAV}
+ \end{postscript} \tabularnewline \hline
+
+ \end{tabularx}
+
+}
+
+\bigskip
+
+\definecolor{pink}{rgb}{1, .75, .8}
+\renewcommand\psedge{\nccurve}
+\newcommand{\Female}[2][]{{\psset{linecolor=pink}\TR[#1]{\emph{#2}}}}
+\newcommand{\Male}[2][]{{\psset{linecolor=blue}\TR[#1]{#2}}}
+
+\psset{nodesep=2pt,angleA=90,angleB=-90}
+
+{ \footnotesize
+
+ %% From: The \LaTeX\ Graphics Companion; first release.
+ \pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
+ \pstree{\Male{Sebastian}}{%
+ \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
+ \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
+ \pstree{\Female{Leonor}}{%
+ \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
+ \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
+ }
+
+ \iffalse % --> Cannot work outside of a special environment!
+ \psset{linecolor=green,doubleline=true,linestyle=dotted}
+ \ncline{P}{W}\nbput{1940}
+ \ncline{R}{A}\nbput{1954}
+ \fi
+}
+
+\bigskip
+
+\psset{arrows=->,fillcolor=white,fillstyle=solid}
+
+\footnotesize
+
+\newcommand{\Show}[1]{\psshadowbox{#1}}
+
+\begin{psmatrix}[mnode=r,ref=t,unit=.3]
+ \psframebox[linestyle=none,framesep=.75]{%
+ \begin{psmatrix}[name=A,ref=c]
+ \Show{Stakeholder}
+ \end{psmatrix}} &
+ \psframebox[fillstyle=solid,fillcolor=pink,framesep=.95]{%
+ \rule{1cm}{0pt}
+ \begin{psmatrix}[ref=c]
+ [name=B]\Show{Goal} & \Show{Criteria}\\
+ \Show{Sub-goal} & \Show{Justification}
+ \ncline{1,1}{1,2}
+ \ncline{1,1}{2,2}
+ \ncline{1,1}{2,1}\tlput{Strategy}
+ \ncline{2,1}{2,2}
+ \end{psmatrix}}
+ \ncline[angleB=180]{A}{B}\naput[npos=.7]{Model}
+\end{psmatrix}
+
+\begin{postscript}[angle=90,height=\textheight,frame=false]
+
+\pstree[treemode=U]{\Female{{\bfseries Matilde}}}{%
+ \pstree{\Male{Sebastian}}{%
+ \pstree{\Male[name=P]{Philip}}{\Male{Frederick}\Female{Ethel}}
+ \pstree{\Female[name=W]{Mary}}{\Male{Lionel}\Female{Agnes}}}
+ \pstree{\Female{Leonor}}{
+ \pstree{\Male[name=R]{Ra\'ul}}{\Male{Joaquim}\Female{J\'ulia}}
+ \pstree{\Female[name=A]{Am\'elia}}{\Male{\'Alvaro}\Female{Augusta}}}
+}
+
+\psset{linecolor=green,doubleline=true,linestyle=dotted}
+\ncline{P}{W}\nbput{1940}
+\ncline{R}{A}\nbput{1954}
+
+\end{postscript}
+
+\bigskip
+
+\psset{arrows=-}
+
+\begin{displaymath}
+ \bordermatrix{%
+ & A & B & C\cr
+ & \rnode{D}{D} & E & \rnode{F}{F}\cr
+ & G & H & I\cr
+ & \rnode{J}{J} & K & M
+ }
+ \ncline[nodesep=-1em,linecolor=red]{D}{F}
+ \ncline[nodesep=-1em,linecolor=red]{D}{J}
+\end{displaymath}
+
+\end{document}
+\endinput
+%%
+%% End of file `pst-pdf-example.tex'.
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/pst-pdf.pdf b/Master/texmf-dist/doc/generic/pst-pdf/pst-pdf.pdf
new file mode 100644
index 00000000000..559aaa9519a
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/pst-pdf.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/pst-pdfDE.pdf b/Master/texmf-dist/doc/generic/pst-pdf/pst-pdfDE.pdf
new file mode 100644
index 00000000000..f35d6c64fe3
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/pst-pdfDE.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf
new file mode 100644
index 00000000000..626766791e7
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf
@@ -0,0 +1,116 @@
+#!/bin/sh
+
+# Copyright (C) 2004, Thomas Esser. Public domain.
+# New option "--crop", Rolf Niepraschk. 2005-03-08
+# dvips call only if the dvi file exist.
+# ps2pdf call only if the ps file exist. Rolf Niepraschk. 2005-06-27
+
+# First, work around bugs/limitations in some shells on some systems:
+test -f /bin/sh5 && test -z "$RUNNING_SH5" \
+ && { UNAMES=`uname -s`; test "x$UNAMES" = xULTRIX; } 2>/dev/null \
+ && { RUNNING_SH5=true; export RUNNING_SH5; exec /bin/sh5 $0 ${1+"$@"}; }
+unset RUNNING_SH5
+
+test -f /bin/bsh && test -z "$RUNNING_BSH" \
+ && { UNAMES=`uname -s`; test "x$UNAMES" = xAIX; } 2>/dev/null \
+ && { RUNNING_BSH=true; export RUNNING_BSH; exec /bin/bsh $0 ${1+"$@"}; }
+unset RUNNING_BSH
+
+# hack around a bug in zsh:
+test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"'
+
+###############################################################################
+# cleanup()
+# clean up the temp area and exit with proper exit status
+###############################################################################
+cleanup()
+{
+ rc=$?
+ $needsCleanup && test -n "$tmpdir" && test -d "$tmpdir" \
+ && { rm -f "$tmpdir"/*; cd /; rmdir "$tmpdir"; }
+
+ # set exit code in a portable way; see the autoconf manual for details:
+ (exit $rc); exit $rc
+}
+
+###############################################################################
+# setupTmpDir()
+# set up a temp directory and a trap to remove it
+###############################################################################
+setupTmpDir()
+{
+ $needsCleanup && return
+
+ trap 'cleanup' 1 2 3 7 13 15
+ needsCleanup=true
+ (umask 077; mkdir "$tmpdir") \
+ || abort "could not create directory \`$tmpdir'"
+}
+###############################################################################
+# myexec(args)
+# execute the command given as "args"; abort on error; redirect messages to
+# log in "silent" mode; redirect stdin (</dev/null) in silent mode
+###############################################################################
+myexec()
+{
+ if $silent; then
+ echo "$0: running $@"
+ "$@" >$log 2>&1 </dev/null
+ rc=$?
+ else
+ "$@"
+ rc=$?
+ fi
+ if test $rc != 0; then
+ echo "$0: command $@ returned with code $rc"
+ cat <$log
+ (exit $rc) # set return value
+ cleanup
+ fi
+}
+
+# some initializations
+progname=pdflatexps
+silent=true # default setting; change if you like
+crop=false
+needsCleanup=false
+tmpdir=${TMP-/tmp}/.$progname$$
+log=$tmpdir/log
+version="1.0"
+
+# look for optional things first
+while
+ case $1 in
+ --help|-h) echo "$0 [-v|-q] file"
+ echo "Process LaTeX document containing PSforPDF macros."
+ exit 0;;
+ --version) echo "$progname version $version"; exit 0;;
+ --crop|-c) crop=true;;
+ -q) silent=true;;
+ -v) silent=false;;
+ -*) echo "$progname: unknown option $1 ignored";;
+ *) break;;
+ esac
+do
+ shift
+done
+# remaining option: filename
+file=$1
+
+# jobname von TeX: Verzeichnisse entfernen, evtl. vorhandene Extension
+# entfernen.
+job=`echo "x$1" | sed 's@x@@; s@.*/@@; s@\.[^.]*$@@'`
+
+setupTmpDir
+myexec latex "$file"
+test -f "$job.dvi" && myexec dvips -Ppdf -o "$job-pics.ps" "$job.dvi"
+test -f "$job-pics.ps" && myexec ps2pdf \
+ -dAutoRotatePages=/None "$job-pics.ps" "$job-pics.pdf"
+if $crop; then
+ myexec pdfcrop "$job-pics.pdf" "$job-pics-crop.pdf"
+ mv "$job-pics-crop.pdf" "$job-pics.pdf"
+fi
+myexec pdflatex "$file"
+
+true
+cleanup
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat
new file mode 100644
index 00000000000..b60630d862d
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat
@@ -0,0 +1,70 @@
+:: **********************************************
+:: ps4pdf.bat
+:: author Lutz Ihlenburg, 09-may-2005
+::
+:: Batch file for using Rolf Niepraschk's package
+:: pst-pdf under MiKTeX
+::
+:: More info: ps4pdf-bat.txt
+:: **********************************************
+
+@echo off
+:: Command extensions must be enabled (Default in Windows XP)
+:: Localize temporary variables
+setlocal
+
+:: Called with no argument?
+if {%1} == {} goto USAGE
+if {%1} == {/?} goto USAGE
+if {%1} == {-h} goto USAGE
+if {%1} == {--help} goto USAGE
+
+:: Look for existence of main tex file.
+:: This procedure will not work, if You transfer a filename without extension,
+:: having dots in the name :-)
+:: Command shell for-statement allows only one command.
+:: For more, a multiple command must be created with &
+for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa
+:: XP command shell doesn't know "if not defined..."
+if defined _ext (
+rem
+) else (
+set _ext=.tex
+set _fullname=%_fullname%.tex
+)
+if not exist "%_fullname%" goto :MISSINGFILE
+
+:OPERATION
+%_drive%
+cd %_path%
+@echo on
+latex --src -interaction=nonstopmode "%_name%%_ext%" >"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+dvips -o "%_name%-pics.ps" "%_name%.dvi" >>"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+ps2pdf -dAutoRotatePages#/None "%_name%-pics.ps" >>"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+texify -b -l latex -p "%_name%%_ext%" >>"%_name%-ps4pdf.log"
+@if errorlevel 1 goto :ERROR
+@goto :EOF
+
+:MISSINGFILE
+echo *** File not found: %_fullname%
+echo *** Batch job aborted
+pause
+goto :EOF
+
+:ERROR
+@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log ***
+@pause
+@goto :EOF
+
+:USAGE
+for %%a in (%0) do set _progname=%%~na
+echo Usage: %_progname% SourceFile[.tex]
+pause
+goto :EOF
+%~na
+echo Usage: %_progname% SourceFile[.tex]
+pause
+goto :EOF
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.noMiKTeX b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.noMiKTeX
new file mode 100644
index 00000000000..46812347f1d
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.noMiKTeX
@@ -0,0 +1,66 @@
+:: **********************************************
+:: ps4pdf.bat
+:: author Lutz Ihlenburg, 09-may-2005
+::
+:: modified by patrice Mégret, 31-may-2005
+::
+:: Batch file for using Rolf Niepraschk's package
+:: pst-pdf under MiKTeX
+::
+:: More info: ps4pdf-bat.txt
+:: **********************************************
+
+@echo off
+:: Command extensions must be enabled (Default in Windows XP)
+:: Localize temporary variables
+setlocal
+
+:: Called with no argument?
+if {%1} == {} goto USAGE
+if {%1} == {/?} goto USAGE
+if {%1} == {-h} goto USAGE
+if {%1} == {--help} goto USAGE
+
+:: Look for existence of main tex file.
+:: This procedure will not work, if You transfer a filename without extension,
+:: having dots in the name :-)
+:: Command shell for-statement allows only one command.
+:: For more, a multiple command must be created with &
+for %%a in (%1) do set _fullname=%%~fa& set _drive=%%~da& set _path=%%~pa& set _name=%%~na& set _ext=%%~xa
+:: XP command shell doesn't know "if not defined..."
+if defined _ext (
+rem
+) else (
+set _ext=.tex
+set _fullname=%_fullname%.tex
+)
+if not exist "%_fullname%" goto :MISSINGFILE
+
+:OPERATION
+%_drive%
+cd %_path%
+@echo on
+latex --src -interaction=nonstopmode "%_name%%_ext%" > "%_name%-ps4pdfa.log"
+@if errorlevel 1 goto :ERROR
+dvips -o "%_name%-pics.ps" "%_name%.dvi" >> "%_name%-ps4pdfb.log"
+@if errorlevel 1 goto :ERROR
+ps2pdf "%_name%-pics.ps" >> "%_name%-ps4pdfc.log"
+@if errorlevel 1 goto :ERROR
+@goto :EOF
+
+:MISSINGFILE
+echo *** File not found: %_fullname%
+echo *** Batch job aborted
+pause
+goto :EOF
+
+:ERROR
+@echo *** An error message appeared. Abnormal termination! Look at %_name%-pst-pdf.log ***
+@pause
+@goto :EOF
+
+:USAGE
+for %%a in (%0) do set _progname=%%~na
+echo Usage: %_progname% SourceFile[.tex]
+pause
+goto :EOF
diff --git a/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.w95 b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.w95
new file mode 100644
index 00000000000..ce738481825
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-pdf/scripts/ps4pdf.bat.w95
@@ -0,0 +1,8 @@
+rem call with ps4pdf.bat FILE without suffix
+@echo off
+set FILE=%1
+latex %FILE%.tex
+dvips -Ppdf -o %FILE%-pics.ps %FILE%.dvi
+ps2pdf -dAutoRotatePages#/None %File%-pics.ps %File%-pics.pdf
+texify -b -l latex -p %File%.tex
+%.tex