diff options
author | Karl Berry <karl@freefriends.org> | 2017-03-27 21:43:48 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-03-27 21:43:48 +0000 |
commit | b77be621f0a8f5fa4c5ccb00365e5578dd3dbd7f (patch) | |
tree | 040974671d6ef9326e3710e986a5552d04a61547 /Master/texmf-dist/doc | |
parent | ae82007e33549c1cfe132e8ee9d08607e8c6572f (diff) |
rputover (27mar17)
git-svn-id: svn://tug.org/texlive/trunk@43624 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/latex/rputover/README.txt | 7 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/rputover/rputover.pdf | bin | 0 -> 35254 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/rputover/rputover.tex | 237 |
3 files changed, 244 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/rputover/README.txt b/Master/texmf-dist/doc/latex/rputover/README.txt new file mode 100644 index 00000000000..6b97dc6c12b --- /dev/null +++ b/Master/texmf-dist/doc/latex/rputover/README.txt @@ -0,0 +1,7 @@ +Package purpose: To allow a PSTricks user to easily place text over objects without obscuring background colors. + +Author: Martin J. Osborne (https://www.economics.utoronto.ca/osborne/; email address = <firstName>.<lastName> @ utoronto.ca) + +License: LPPL1.3 + +Documentation: rputover.pdf.
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/rputover/rputover.pdf b/Master/texmf-dist/doc/latex/rputover/rputover.pdf Binary files differnew file mode 100644 index 00000000000..7fd6d29d537 --- /dev/null +++ b/Master/texmf-dist/doc/latex/rputover/rputover.pdf diff --git a/Master/texmf-dist/doc/latex/rputover/rputover.tex b/Master/texmf-dist/doc/latex/rputover/rputover.tex new file mode 100644 index 00000000000..13d153e4e4f --- /dev/null +++ b/Master/texmf-dist/doc/latex/rputover/rputover.tex @@ -0,0 +1,237 @@ +% +% +% +\documentclass[12pt]{article} +\usepackage{utopia,pstricks,pst-plot,rputover} +\usepackage{url,color,secdot} +\definecolor{LinkColor}{rgb}{0, 0, 0.4}% +\usepackage[pagebackref,colorlinks,urlcolor=blue,citecolor=LinkColor,% + linkcolor=LinkColor,plainpages=false,breaklinks,% + bookmarksnumbered,bookmarksopen=true,bookmarksopenlevel=0,% + hyperfootnotes=true]{hyperref} + +\def\sectionautorefname{Section} + +\usepackage{amsmath} + +\oddsidemargin0.5in +\evensidemargin0.5in +\topmargin0in + +\sectiondot{section} % put period after section number but not in cross- + % references to number (e.g. \autoref) + +\begin{document} + +\thispagestyle{empty} + +\vspace*{\fill} + +\psset{unit=1mm} + +\hspace*{\fill}% +\begin{pspicture}(120,120) +\fboxrule=0pt% +\fboxsep=5pt% +% +\pscircle[fillstyle=solid,fillcolor=blue!20,linestyle=none](60,60){60}% +% +\psset{origin={60,60}}% +% +\psclip{\pscircle[linestyle=none](0,0){60}}% +\pscustom[fillstyle=solid,fillcolor=red!30,linestyle=none]{% + \psplot{-60}{60}{x 10 mul cos 12 mul}% + \psline[liftpen=1](60,-5)(60,-60)(-60,-60)(-60,-5)% +}% +\endpsclip% +% +\rputover(60,57){\shortstack{\large Manual for\\[1mm]\large\texttt{rputover}\\version 1.0}}% +\rputover(60,38){\shortstack{Martin J. Osborne\\[1mm]\scriptsize\url{https://www.economics.utoronto.ca/osborne/}\\[1mm]2017.3.26}}% +% +\coverable{% + \psclip{\pscircle[linestyle=none](0,0){60}}% + \psline[linewidth=2,linecolor=orange!30](-65,-3.5)(65,-3.5)% + \rput{33}(40,-23){\psplot[linecolor=green!30,linewidth=2]{-65}{65}{x 10 mul cos 12 mul}}% +% \rput{-30}(-24,37){\psplot[linecolor=green!30,linewidth=1]{-65}{65}{x 10 mul cos 12 mul}} + \endpsclip% +}% +% +\end{pspicture}% +\hspace*{\fill}% + +\vspace*{\fill} + +\newpage + +\sloppy + +\section{Introduction} + +You create a PSTricks figure with regions filled with various colors. + +\bigskip + +\hspace*{\fill}% +\begin{pspicture}(100,30) +\fboxsep=5pt + +\psframe[fillstyle=solid,fillcolor=blue!20,linestyle=none](0,0)(100,30) + +\psset{origin={50,15}} + +\pscustom[fillstyle=solid,fillcolor=red!30,linestyle=none]{% + \psplot{-50}{50}{x 15 mul cos 12 mul} + \psline[liftpen=1](50,0)(50,-15)(-50,-15)(-50,0) +} + +\end{pspicture}% +\hspace*{\fill} + +\bigskip + +\noindent +You add some lines over the colors. + +\bigskip + +\hspace*{\fill}% +\begin{pspicture}(100,30) +\fboxsep=5pt + +\psframe[fillstyle=solid,fillcolor=blue!20,linestyle=none](0,0)(100,30) + +\psset{origin={50,15}} + +\pscustom[fillstyle=solid,fillcolor=red!30,linestyle=none]{% + \psplot{-50}{50}{x 15 mul cos 12 mul} + \psline[liftpen=1](50,0)(50,-15)(-50,-15)(-50,0) +} + +\psset{origin={0,0}} + +\psline[linestyle=dotted,linewidth=0.5](53,0)(53,23)(0,23) + +\end{pspicture}% +\hspace*{\fill} + +\bigskip + +\noindent +Now you want to add some labels. You'd like these +labels to block out the lines. + +\bigskip + +\hspace*{\fill}% +\begin{pspicture}(100,30) +\fboxsep=3pt + +\psframe[fillstyle=solid,fillcolor=blue!20,linestyle=none](0,0)(100,30) + +\psset{origin={50,15}} + +\pscustom[fillstyle=solid,fillcolor=red!30,linestyle=none]{% + \psplot{-50}{50}{x 15 mul cos 12 mul} + \psline[liftpen=1](50,0)(50,-15)(-50,-15)(-50,0) +} + +\psset{origin={0,0}} + +\rputover(53,17){label}% + +\coverable{% + \psline[linestyle=dotted,linewidth=0.5](53,0)(53,23)(0,23) +} + +\end{pspicture}% +\hspace*{\fill} + +\bigskip + +\noindent +This style allows you to do that. + +Why do you need a style? Why not use \verb+\rput*+? That +blocks out the lines, but it does so by creating a white rectangle that blocks +the colors too. + +\bigskip + +\hspace*{\fill}% +\begin{pspicture}(100,30) +\fboxrule=0pt +\fboxsep=3pt + +\psframe[fillstyle=solid,fillcolor=blue!20,linestyle=none](0,0)(100,30) + +\psset{origin={50,15}} + +\pscustom[fillstyle=solid,fillcolor=red!30,linestyle=none]{% + \psplot{-50}{50}{x 15 mul cos 12 mul} + \psline[liftpen=1](50,0)(50,-15)(-50,-15)(-50,0) +} + +\psset{origin={0,0}} + +\psline[linestyle=dotted,linewidth=0.5](53,0)(53,23)(0,23) + +\rput*(53,17){label}% + +\end{pspicture}% +\hspace*{\fill} + +\bigskip + +\noindent +You could change the background color of that rectangle, but if the rectangle +includes regions with two or more colors, this approach can get pretty complicated. + +This style offers a simple solution. You use \verb+\rputover+ instead of +\verb+\rput+ and include all the objects you want to be covered by the text in +the argument of \verb+\coverable+, like so: + +\small +\begin{verbatim} +\usepackage{pstricks,rputover} +... +\begin{pspicture}(100,30) +... +\fboxsep=3pt +\rputover(53,17){label}% +\coverable{% + \psline[linestyle=dotted,linewidth=0.5](50,0)(50,23)(0,23) +} +... +\end{pspicture} +\end{verbatim} + +Note that + +\begin{itemize} +\item \verb+%+ must follow every \verb+\rputover+ statement +\item the separation around the label is determined by \verb+\fboxsep+. +\end{itemize} + +The style combines two ideas. The first idea, suggested by the StackExchange user Werner on \href{http://tex.stackexchange.com/questions/353748/is-there-a-variant-of-rput-in-pstricks-that-preserves-background-fill-colors}{this page}, is to use \verb+\psDefBoxNodes+ in \verb+pst-node.sty+ to get the coordinates of the corners of the box occupied by each label. The second idea is to use these coordinates and \verb+\psclip+ to remove the parts of the objects in the argument of \verb+\coverable+ that overlap with the labels. The only subtlety in implementing this second idea is that we want to do a `reverse clip': we want to keep the areas \textit{outside} the labels, not the ones inside. + +\section{Commands} +\verb+\rputover+ has the same syntax as \verb+\rput+. +It should be immediately followed by \verb+%+. + +Example: \verb+\rputover{30}[br](0,10){label}%+. + +\bigskip + +\noindent +\verb+\coverable+ has a single argument, which consists of all the objects that are to be covered by the objects that are arguments of \verb+\putover+ commands. + +Example: \verb+\coverable{\psline(25,0)(25,23)(0,23)\pscircle(0,0){5}}+ + +\section{History} +\begin{description} +\item[Version 1.0, 2017.3.25] First version +\end{description} + + +\end{document} +% |