diff options
author | Karl Berry <karl@freefriends.org> | 2011-11-27 23:07:27 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-11-27 23:07:27 +0000 |
commit | 9811c749cda1c7fe41675c55bf658afb91690f38 (patch) | |
tree | 8496f598258f0f75d0b55e545733ce3aa9b7efb9 | |
parent | fc756e8f8a1c9108bb71bbf79b6c8566ab668f80 (diff) |
xwatermark (26nov11)
git-svn-id: svn://tug.org/texlive/trunk@24671 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/README | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/tab-globaloptions.tex | 57 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/tab-localoptions.tex | 170 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples.cfg | 67 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.pdf | bin | 168751 -> 168979 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.tex | 34 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.pdf | bin | 179121 -> 179175 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.tex | 59 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.cfg | 116 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.pdf | bin | 488959 -> 485251 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.tex | 141 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/xwatermark/xwatermark.sty | 744 |
12 files changed, 647 insertions, 747 deletions
diff --git a/Master/texmf-dist/doc/latex/xwatermark/README b/Master/texmf-dist/doc/latex/xwatermark/README index 4618a62282d..e4e2fa5227a 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/README +++ b/Master/texmf-dist/doc/latex/xwatermark/README @@ -1,8 +1,8 @@ -This is the README file for the 'xwatermark' package +This is the README file for the 'xwatermark' package. VERSION -Version 1.5.1, July 2011 +Version 1.5.2, November 2011 SUMMARY @@ -27,7 +27,7 @@ those defined within the user document can be passed to this package. LICENSE -Copyright (c) July 2011 Ahmed Musa (amusa22@gmail.com) +Copyright (c) 2009-2011 Ahmed Musa (amusa22@gmail.com) This work (ie, all the files in the xwatermark manifest) may be distributed and/or modified under the conditions of the LaTeX diff --git a/Master/texmf-dist/doc/latex/xwatermark/tab-globaloptions.tex b/Master/texmf-dist/doc/latex/xwatermark/tab-globaloptions.tex deleted file mode 100644 index 2994761758b..00000000000 --- a/Master/texmf-dist/doc/latex/xwatermark/tab-globaloptions.tex +++ /dev/null @@ -1,57 +0,0 @@ -%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file xwatermark-guide (global options), version 1.5.1 % -% % -% Copyright (c) 2009-2011 Ahmed Musa (amusa22@gmail.com). % -%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% - -\documentclass[a4paper,10pt,final,UK-English,table-file]{amltxdoc} -\makeatletter -\InputIfFileExists{xwatermark-guide.cfg}{}{% - \@latex@error{No file 'xwatermark-guide.cfg' or wrong path}\@ehc -} -\usepackage{reviewtools} -\WrapQuotes -\NoPrintNotes -\makeindex - -\begin{document} - -\colone4cm\coltwo2.5cm -\colthree=\dimexpr\textwidth-(\colone+\coltwo+1.5cm)\relax -\coltotal=\dimexpr\colone+\coltwo+\colthree\relax -\extrarowheight=2pt -\arrayrulecolor{orange} -\noindent -\begin{longtable}[c]{>{\hspace{0pt}\raggedright}m{\colone}m{\coltwo}W} -\caption{Global options of the package\label{tab:globaloptions}}\\\whline - -\multicolumn{3}{M}{All the keys in this table are \quoted{option keys}, \ie, they can appear only in \hx{\documentclass} or \hx{\usepackage}. If a key is an option key and it is issued in functions other than \hx{\documentclass} or \hx{\usepackage}, the package will alert the user to that effect.}\\\hline - -\bfblue Option & \bfblue Default & \bfblue Meaning\\\hline -\endfirsthead -\hline -\multicolumn{3}{l}{\emph{Continued from last page}}\\\hline -\bfblue Option & \bfblue Default & \bfblue Meaning %\\\hline -\endhead -\multicolumn{3}{r}{\emph{Continued on next page}}\\\hline -\endfoot -\hline -\endlastfoot -\ffx{defaultfirstpage, default-first-page} & 1 & The default first page of document, when the first page hasn't been known yet. \\\hline -\ffx{defaultlastpage, default-last-page} & 1 & The default last page of document, when the last page has't been shipped out yet. \\\hline -\fx{draft} & \hx{false} & The document is in draft mode.\ltnote{\ffx'{draft,final} are complementary (biboolean) options, \ie, when one is true, the other is automatically set to false.}\\\hline -\fx{final} & \hx{true} & The document is in final mode.\\\hline -\ffx{disablegeometry, disable-geometry} & \hx{false} & This option determines whether the page layout settings by the \pkg'{geometry} should be disabled so that the watermarks can be set more readily by \pkg{xwatermark}.\ltnote{Version~5.6 and higher of the \pkg'{geometry} make this option less likely to be needed, unlike the earlier versions of \pkg{geometry}.}\\\hline -\ffx{frontpagestyle, front-page-style} & empty & The style of the front page, in the sense of the \pkg'{fancyhdr}. \\\hline -\ffx{picontoptext,pic-on-top-text, picture-on-top-text} & \hx{true} & The boolean that determines if picture watermark is placed on top of text watermark or otherwise, when they occur at the same location on a page.\\\hline -\ffx{printwatermark, print-watermark} & \hx{true} & The global boolean switch that determines whether watermarks should be printed or not.\ltnote{This option can be passed to package as either \fx{true} or \fx{false} and can appear in the \hx{\documentclass} options list or \hx{\usepackage}. If for any reason you don't want the watermark printed in any run, you can enter \fx{printwatermark}=\hx{false}. If the option \fx{draft} or \fx{final} appears in the \hx{\documentclass} or \hx{\usepackage}, it won't affect the printing or otherwise of the watermark, apart from determining if graphics watermarks are actually inserted instead of framed empty boxes. The printing of the watermark is determined by the option \fx{printwatermark}.}\\\hline -\ffx{resetpaperorigin,reset-paper-origin} & \hx{false} & The boolean to call to reset the paper origin (\hhx'{\pdfhorigin, \pdfvorigin, \hoffset, \voffset}) to zero unit. \\\hline -\ffx{showpagecenter, show-page-center} & \hx{false} & Boolean that indicates if the center of the paper should be shown with a cross (and circle).\ltnote{The \pkg'{xwmgrid}, which provides a full gridding functionality consistent with the \pkg'{xwatermark}, will be released shortly.}\\\hline -\ffx{textontoppic,text-on-top-pic,text-on-top-picture} & \hx{false} & The reverse of \fx{picontoptext}.\\\hline -\ffx{usedummymarks, use-dummy-marks} & \hx{true} & The boolean that instructs \pkg{xwatermark} to print watermarks that have been defined by the \fx{\dummywatermark} or \fx{\dummywallpaper} in addition to those defined by \fx{\newwatermark} and/or \fx{\newwallpaper}.\\\hline -\ffx{watermarkparser, watermark-parser} & \fx{;}~(semicolon) & The option determines the watermark parser, a quantity that is used internally to build watermarks into lists.\ltnote{If you do have the \fx{watermarkparser} in your watermark, it must be enclosed in curly braces, otherwise the package will flag a fatal error. You can change the \fx{watermarkparser} to say \quoted{\fx{|}} (vertical bar), in case you have too many \quoted{\fx{;}} (semicolons) in your watermarks and you are fed up with enclosing them in braces.}\\\hline -\end{longtable} - -\normalfont\normalsize - -\end{document} diff --git a/Master/texmf-dist/doc/latex/xwatermark/tab-localoptions.tex b/Master/texmf-dist/doc/latex/xwatermark/tab-localoptions.tex deleted file mode 100644 index f0ca5dd4992..00000000000 --- a/Master/texmf-dist/doc/latex/xwatermark/tab-localoptions.tex +++ /dev/null @@ -1,170 +0,0 @@ -%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file xwatermark-guide (local options), version 1.5.1 % -% % -% Copyright (c) 2009-2011 Ahmed Musa (amusa22@gmail.com). % -%++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% - -\documentclass[ - use-a4-paper,use-10pt-font,final-version,UK-English, - no-hyperref-msg,wrapquote,tablefile,verbose=false -]{amltxdoc} -\makeatletter -\InputIfFileExists{xwatermark-guide.cfg}{}{% - \@latex@error{No file 'xwatermark-guide.cfg' or wrong path}\@ehc -} - -\begin{document} - -\extrarowheight=2pt -\colone4cm\coltwo2.8cm -\colthree=\dimexpr\textwidth-(\colone+\coltwo+1.5cm)\relax -\coltotal=\dimexpr\colone+\coltwo+\colthree\relax -\arrayrulecolor{orange} - -\begin{longtable}[c]{>{\hspace{0pt}\raggedright}m{\colone}m{\coltwo}W} -\caption{Local (function-dependent) options of the package - \label{tab:localoptions}}\\\whline - -\multicolumn{3}{M}{Most of the keys in this table are \quoted{non-option keys}, \ie, they can't appear in \hx{\documentclass} or \hx{\usepackage} but in the arguments of the given functions. If a key is a non-option key and the user submits it to \hx{\documentclass} or \hx{\usepackage}, the package will alert the user.}\\\hline - -\bfblue Option & \bfblue Default & \bfblue Meaning\\\hline -\endfirsthead -\hline -\multicolumn{3}{l}{\emph{Continued from last page}}\\\hline -\bfblue Option & \bfblue Default & \bfblue Meaning %\\\hline -\endhead -\multicolumn{3}{r}{\emph{Continued on next page}}\\\hline -\endfoot -\hline -\endlastfoot -\multicolumn{3}{c}{\bf\bffunc{\newwatermark} macro}\\\hline - -\ffx{angle,textangle,text-angle} & $0^\circ$ & The orientation of text watermark. \\\hline -\ffx{align,textalign,text-align} & \texttt{center} & The internal horizontal alignment of the watermark within a watermark box.\ltnote{The key can assume only one of the values \ffx'{center, left, right, justified}. Any other text alignment value is inadmissible and thus rejected by the package with a fatal error.}\\\hline -\ffx{page,pages,pagex,firstpage,lastpage,allpages,evenpages,oddpages} & & These determine the pages on which the watermarks are to be printed.\ltnote{The options \fx{allpages}, \fx{evenpages}, \fx{oddpages} are boolean keys, while \ffx'{page,pages,pagex} require values, \eg, \ffx'{page=x,pages=x-y,pagex={x,y,z}}. If the package is loaded and none of these options is passed to it, but the option \fx{printwatermark} is true, the default watermark (DRAFT) will be printed on the first page of the document (but only in draft mode) and a warning message logged in the transcript file. The key \fx{pages} expects a page range with the pages separated by a hyphen, while \fx{pagex} expects a list of pages that will receive the watermarks.}\\\hline - -\ffx{boxalign,box-align} & \texttt{center/s} & The alignment of the watermark box.\ltnote{Both text and picture watermarks are normally put in boxes for manipulation before being typeset. This key refers to the horizontal and vertical alignments of the box. The key can assume one of the values \ffx{t-l,t-r,b-l,b-r,s}, or \ffx{top-left, top-right, bottom-left, bottom-right, center, justified}. Elements of these two sets can't be combined. When submitted as key values, the elements of both sets are not to be separated by commas or spaces but by hyphens (\eg, one of \ffx{t-l,t-r,b-l,b-r,s}, or one of \ffx{top-left, top-right, bottom-left, bottom-right, center, justified}).}\\\hline -\ffx{coordunit,coord-unit,position-unit} & \hx{mm} & The unit for x- and y-coordinates of watermark. \\\hline -\ffx{color,textcolor,text-color} & \hx{gray!25} & The color of the text watermark.\\\hline -\fx{draft} & \texttt{false} & This option will insert framed empty boxes in place of graphics watermarks.\\\hline -\ffx{draftboxcolor,draft-box-color} & \texttt{blue} & The color of the box that is printed in place of graphics watermarks in \fx{draft} document mode. \\\hline -\fx{final} & \texttt{false} & This option actually does nothing for now. It is included for possible future application.\\\hline -\ffx{fontfamily,font-family} & \hx{bch} & The \hx{fontfamily} of the text watermark.\\\hline -\ffx{fontsize,font-size} & 1cm & The \hx{fontsize} of the text watermark.\ltnote{If for some reason you need other fontsizes (\eg, 10pt, 11pt or 12pt for printing text watermarks in \hx{\normalfont}), you will need to submit them as values of \hx{fontsize}.}\\\hline - -\ffx{fontseries,font-series} & \hx{b} & The font series of the text watermark.\ltnote{If you need normal document text, put \fx{fontseries=m}, which implies medium weight and width.}\\\hline - -\fx{graphicsoptions} & & Additional user-supplied key-value options for the command \hx{\includegraphics}.\ltnote{The command \hx{\includegraphics} is used for all graphics inclusion tasks. Users can directly pass values to admissible options of the command \hx{\includegraphics}. See \autoref{sec:graphicsoptions}.} \\\hline -\ffx{height,textheight,text-height} & \hx{\paperwidth} & The height of text watermarks.\\\hline -\ffx{mark,textmark,text-mark} & DRAFT & The default text watermark.\\\hline -\ffx{picscale,picture-scale} & 1 & Scale of picture watermark.\\\hline -\ffx{picbb,picture-bb,pic-bounding-box} & 0 0 100 100& The bounding box (dvi mode) or viewport (pdf mode) of the picture watermark.\\\hline -\ffx{picfile,picture-file} & & The filename of picture watermark.\ltnote{This, with its full path, must be submitted when including picture watermark.}\\\hline -\ffx{picfileext,pic-file-ext} & eps/pdf & The filename extension of the picture watermark.\ltnote{Valid extensions are \fx{eps}, \fx{pdf}, \fx{png}, \fx{jpeg}, \fx{mps}; the latter four may be used in the case of \pdftex. The file extension should be passed without the dot. If the option is not passed to package, \pkg{xwatermark} selects \fx{eps} (in dvi mode) or \fx{pdf} (in \pdftex mode).} \\\hline -\ffx{picheight,pic-height,picture-height} & & The height of picture watermarks.\\\hline -\ffx{picangle,picture-angle} & $0^\circ$ & The orientation of picture watermarks. \\\hline -\ffx{picwidth,picture-width} & & The width of picture watermarks. \\\hline -\ffx{picontoptext,picture-on-top-text} & true & Pictures should be placed on top of text watermarks if the two types of watermark occur on the same spot on a page. \\\hline -\ffx{picxpos,picture-xpos,picture-x-position} & 0 & The horizontal coordinate of the picture watermarks.\\\hline -\ffx{picypos,picture-ypos,picture-y-position} & 0 & The horizontal coordinate of the picture watermarks. \\\hline -\ffx{scale,textscale,text-scale} & 1 & The scale of the text watermark.\\\hline -\ffx{showpagecenter,show-page-center,showpapercenter} & false & Boolean for requesting the indication of the center of the paper. See \pkgg'{xwmgrids} for additional information. \\\hline -\ffx{textontoppic,text-on-top-pic,text-on-top-picture} & false & Text watermarks should be placed on top of graphics watermarks if the two types of watermark occur on the same spot on a page. This reverses the boolean \fx{picontoptext}.\\\hline -\ffx{width,textwidth,text-width} & \hx{\paperheight} & The width of text watermarks; doesn't apply to graphics watermarks.\ltnote{For some design reasons we set \hx{\paperheight} as the default value of mark's width instead of mark's height.}\\\hline -\ffx{xpos,textxpos,text-xpos,text-x-position} & 0 & These specify the horizontal coordinate of watermark (with reference to the center of paper, and not the text center).\ltnote{There is no need to attach a unit to \fx{xpos} or \fx{ypos}; if the user does, the unit will be used in place of \fx{coordunit}.}\\\hline -\ffx{ypos,textypos,text-ypos,text-y-position} & 0 & The vertical coordinate of the watermark.\\\hline - -\multicolumn{3}{c}{\bffunc{\newwallpaper} \textbf{macro}\ltnote{Some of the \fx{\newwatermark} keys can also be called when inserting wallpapers. If you aren't sure if a key is applicable, don't worry: just try it. The package collects all inadmissible keys together and prints them in the transcript file on each run. Normally, the user is alerted by an error message. Indeed if you receive any failed compilation, you should first suspect that the failure is due to the use of an invalid key. The next keys apply specifically to wallpaper watermarks.}}\\\hline - -\ffx{align,textalign,text-align} & \texttt{center} & The internal horizontal alignment of the watermark within a watermark box.\ltnote{The key can assume only one of the values \ffx'{center, left, right, justified}.}\\\hline -\ffx{boxalign,box-align} & center (s) & The horizontal and vertical alignments of the watermark box.\ltnote{The key can assume one of the values \ffx{t-l,t-r,b-l,b-r,s}, or \ffx{top-left, top-right, bottom-left, bottom-right, center, justified}. When submitted as key values, the elements are not to be separated by commas or spaces but by hyphens (\eg, one of \ffx{t-l,t-r,b-l,b-r,s}, or one of \ffx{top-left, top-right, bottom-left, bottom-right, center, justified}).} \\\hline -\ffx{picheight,picture-height} & .25\hx{\paperheight} & The height of each cell of picture wallpaper. \\\hline -\ffx{picwidth,picture-width} & .25\hx{\paperwidth} & The width of each cell of picture wallpaper.\\\hline -\ffx{tilexsize,tile-xsize} & .25\hx{\paperwidth} & The width of each cell of tiled wallpaper.\\\hline -\ffx{tileysize,tile-ysize} & .25\hx{\paperheight} & The height of each cell of tiled wallpaper.\\\hline -\ffx{textheight,text-height} & .25\hx{\paperheight} & The height of each cell of text wallpaper. \\\hline -\ffx{textwidth,text-width} & .25\hx{\paperwidth} & The width of each cell of text wallpaper.\\\hline -\ffx{tilexoffset,tile-xoffset} & 0pt & The horizontal shift between the tiles of wallpaper.\\\hline -\ffx{tileyoffset,tile-yoffset} & 0pt & The vertical shift between the tiles of wallpaper.\\\hline -\ffx{tileno,tilenumber,tile-number,number-of-tiles} & 4 & The maximum number of cells for tiled wallpapers if the parameters \fx{tilexsize} and \fx{tileysize} aren't specified or if the boolean \fx{squaretiles} is true.\ltnote{If \fx{tilexsize} and \fx{tileysize} are given and \fx{squaretiles} is false, \fx{tileno} is ignored.}\\\hline -\ffx{squaretiles,square-tiles} & true & The boolean that determines if the tiles should be rectangular or square.\ltnote{Sometimes choosing \fx{squaretiles} (\ie, setting it true) can yield an undesired outcome if \ffx'{textalign,boxalign} haven't been properly selected. In such a situation, the user is advised to first experiment with setting \fx{squaretiles} to false and/or \ffx'{textalign,boxalign} to \fx{center}.}\\\hline -\ffx{wpxoffset,wallpaper-xoffset} & 0pt & The horizontal offset of wallpaper from the margin or edge of paper.\\\hline -\ffx{wpyoffset,wallpaper-yoffset} & 0pt & The vertical offset of wallpaper from the margin or edge of paper.\\\hline - -\multicolumn{3}{c}{\bffunc{\xwmminipage} \textbf{macro}\ltnote{The \fx{\xwmminipage} command can take verbatim material and provides a \keyval alternative to the \hx{\boxedminipage} command of the \pkg'{boxedminipage}.}}\\\hline - -\fx{depth} & 0ex & Additional depth of the boxed minipage.\\\hline -\fx{height} & \hx{.5\textheight} & Additional height of the boxed minipage.\\\hline -\ffx{framebox,insertframe,insert-frame} & true & The boolean that determines whether the box is - framed or not.\\\hline -\fx{framesep} & 3pt & \hx{\fboxsep} of the boxed minipage.\\\hline -\fx{framerule} & 0.4pt & \hx{\fboxrule} of the boxed minipage.\\\hline -\fx{textwidth} & \hx{\paperwidth} & Width of the boxed minipage.\\\hline -\fx{textcolor} & black & Color of text inside boxed minipage.\\\hline -\fx{framecolor} & white & Color of frame of boxed minipage.\\\hline -\ffx{textalign, text-align} & center & Alignment of the text inside the boxed minipage of the command \fx{\xwmminipage} (expected values are \fx{center}, \fx{left}, \fx{right} and \fx{justified}).\\\hline - -\multicolumn{3}{c}{\bffunc{\xwmcolorbox} \textbf{macro}}\\\hline - -\fx{depth} & 0ex & Additional depth of the colorbox.\\\hline -\ffx{framebox,insertframe,insert-frame} & true & The boolean that determines whether the box is framed - or not.\\\hline -\fx{framesep} & 3pt & \hx{\fboxsep} of the colorbox.\\\hline -\fx{framerule} & 0.4pt & \hx{\fboxrule} of the colorbox.\\\hline -\fx{height} & 0ex & Additional height of the colorbox.\\\hline -\ffx{innerframecolor,inner-frame-color} & white & Color of the inner frame of colorbox.\\\hline -\ffx{outerframecolor,outer-frame-color} & white & Color of the outer frame of colorbox.\\\hline -\fx{textcolor} & black & Color of text inside colorbox.\\\hline -\ffx{textalign,text-align} & center & Alignment of the text inside the colorbox of - \fx{\xwmcolorbox} (expected values are \fx{center}, \fx{left}, \fx{right} and \fx{justified}).\\\hline -\fx{width} & \hx{\paperwidth} & Width of the colorbox.\\\hline - -\multicolumn{3}{c}{\bffunc{\makecolorbox} \textbf{macro}}\\\hline -\multicolumn{3}{M}{The options of the macro \fx{\makecolorbox} are the same as those of the related macro \fx{\xwmcolorbox}. Please refer to \autoref{sec:makecolorbox} for the syntaxes of these macros.}\\\hline - -\multicolumn{3}{c}{\bffunc{\fancypagenos} \textbf{macro}}\\\hline - -\ffx{cfoot,center-footer,footer-center} & & Center footer.\ltnote{All headers and footers are as in \pkgg'{fancyhdr}.} \\\hline -\ffx{chead,center-header,header-center} & & Center header.\\\hline -\fx{format} & \hx{\fbox} & The desired format of the fancy-page numbers.\\\hline -\ffx{coordunit,coord-unit,position-unit} & mm & The units of the position/coordinates \fx{x} and \fx{y}.\\\hline -\ffx{fontfamily,font-family} & cmss & The \hx{fontfamily} of the fancy-page numbers.\\\hline -\ffx{fontsize,font-size} & 5cm & The \hx{fontsize} of the fancy-page numbers.\\\hline -\ffx{fontseries,font-series} & \hx{b} & The font series of the fancy-page numbers.\\\hline -\fx{footrule-height} & .4pt & Foot rule height.\\\hline -\fx{footrule-depth} & .4pt & Foot rule depth.\\\hline -\fx{footrule-width} & \hx{\headwidth} & Foot rule width.\\\hline -\ffx{footrule-sep,footrule-separation} & 2pt & Foot rule vertical separation (\ie, the vertical separation between the two lines. \\\hline -\fx{footrule-color} & cyan & Foot rule color.\\\hline -\fx{hfoffset-left} & .5 & Left \hx{\hfoffset} (see \pkgg{fancyhdr} for the meaning of \hx{\hfoffset}). \\\hline -\fx{hfoffset-right} & .5 & Right \hx{\hfoffset} (see \pkgg{fancyhdr}). \\\hline -\fx{headrule-height} & .4pt & Head rule height.\\\hline -\fx{headrule-depth} & .4pt & Head rule depth.\\\hline -\fx{headrule-width} & \hx{\headwidth} & Head rule width.\\\hline -\ffx{headrule-sep, headrule-separation} & 2pt & Head rule separation (\ie, the vertical separation between the two lines.\\\hline -\fx{headrule-color} & blue & Head rule color. \\\hline -\ffx{lfoot,left-footer,footer-left} & & Left footer. \\\hline -\ffx{lhead,left-header,header-left} & & Left header.\\\hline -\ffx{style,printstyle,print-style} & \hx{\thepage} & The presentation style of the fancy-page numbers.\\\hline -\ffx{rfoot,right-footer,footer-right} & & Right footer. \\\hline -\ffx{rhead,right-header,header-right} & & Right header.\\\hline -\ffx{showpagenos,show-pageno,show-pagenos,show-page-numbers} & true & Boolean that determines if fancy-page numbers should be shown.\\\hline -\ffx{showonpageone,show-on-page-one,show-on-page-1} & false & Boolean that determines if fancy-page numbers should be shown on the first page of the document.\\\hline -\ffx{showheadrule,show-headrule} & true & Boolean that determines if the head-rule should be shown.\\\hline -\ffx{showfootrule,show-footrule} & true & Boolean that determines if the foot-rule should be shown. \\\hline -\ffx{sendtoback, send-to-back} & true & Boolean that determines if the fancy-page numbers should be placed in the background or foreground.\\\hline -\ffx{align,textalign,text-align} & center & The alignment of the text in the fancy-page number box (if it is boxed).\\\hline -\ffx{boxalign,box-align} & center & The alignment of the fancy-page number box (if it is boxed).\\\hline -\ffx{color,textcolor,text-color} & blue & The color of the fancy-page numbers.\\\hline -\ffx{scale,textscale,text-scale} & 2.5 & The scale of the fancy-page numbers.\\\hline -\ffx{angle,textangle,text-angle} & 0 & The orientation of the fancy-page numbers.\\\hline -\ffx{width,textwidth,text-width} & 0ex & Width of the fancy-page numbers.\\\hline -\ffx{height,textheight,text-height} & 0ex & Height of the fancy-page numbers.\\\hline -\ffx{xpos,textxpos,x-position} & 0 & The horizontal coordinates of the fancy-page numbers - (from page center).\\\hline -\ffx{ypos,textypos,y-position} & 0 & The vertical coordinates of the fancy-page numbers (from page center).\\\whline -\end{longtable} - -\normalfont\normalsize - -\end{document} diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples.cfg b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples.cfg index 8ff82f42470..db2f8904199 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples.cfg +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples.cfg @@ -1,11 +1,11 @@ %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file xwatermark-examples.cfg, version 1.5.1 % +% This is file xwatermark-examples.cfg, version 1.5.2 % % % % Copyright (c) 2009-2011 Ahmed Musa (a.musa@rocketmail.com). % %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% \ProvidesFile{xwatermark-examples.cfg} - [2011/07/30 v1.5.1 Configuration file for xwatermark-examples.tex (AM)] + [2011/10/20 v1.5.2 Configuration file for xwatermark-examples.tex (AM)] \NeedsTeXFormat{LaTeX2e} \makeatletter \@ifundefined{ver@catoptions.sty}{% @@ -20,10 +20,9 @@ geometry|left=3cm,right=3cm,top=2.5cm,bottom=2.5cm, includeheadfoot; lipsum; - miscdef2; amsmath; amssymb; - ltxtools; + ltxtools-doc; xwatermark|printwatermark; hyperref|verbose=false,pdfpagemode=UseThumbs, pdfview=FitB,pdfstartview=FitB; @@ -37,27 +36,27 @@ \newdef\hspce{\hspace{1cm}} \nameabbrev\lppl{\LaTeX\ Project Public License}[LPPL] \providerobustdef*\eg{% - \CurrIfnextchar.{e.\,g\sspace}{e.\,g.\@\sspace}% + \ifnextcharTF.{e.\,g\sspace}{e.\,g.\@\sspace}% } \providerobustdef*\ie{% - \CurrIfnextchar.{i.\,e\sspace}{i.\,e.\@\sspace}% + \ifnextcharTF.{i.\,e\sspace}{i.\,e.\@\sspace}% } -\shelllet\tcl=\textcolor +\shelllet\ttcl=\textcolor \providerobustdef*\xcopyright#1{% - \unskip\tcl{#1}{\textsuperscript{\copyright}}% + \unskip\ttcl{#1}{\textsuperscript{\copyright}}% } \robustdef*\xxcopyright{% \mbox{\textcopyright~\lower.7\p@\hbox{\uppercase \expandafter{\romannumeral\year}}}\sspace } -\robustdef*\colorbullet#1{\tcl{#1}{\textbullet}\sspace} +\robustdef*\colorbullet#1{\ttcl{#1}{\textbullet}\sspace} \providerobustdef*\pkg{% - \CurrIfnextchar'% + \ifnextcharTF'% {\@firstoftwo{\@tempswatrue\xwm@pkg}} {\@tempswafalse\xwm@pkg}% } \robustdef*\xwm@pkg#1{% - \tcl{ForestGreen}{\texttt{#1}}\if@tempswa\@space package\fi + \ttcl{ForestGreen}{\texttt{#1}}\if@tempswa\@space package\fi } \providerobustdef*\email{\hyper@normalise\xwm@email} \robustdef*\xwm@email#1{\href{mailto:#1}{#1}} @@ -78,10 +77,10 @@ hfoffset-left = .9, hfoffset-right = .9, style = Page \thepage~of~\lastdocpage, - header-left = \tcl{blue}{\today}, + header-left = \ttcl{blue}{\today}, header-right = Ahmed Musa, footer-center = \pkg'{xwatermark}, - header-center = \textsf{\tcl{purple}{Demonstration document}} + header-center = \textsf{\ttcl{purple}{Demonstration document}} ] \renewcommand\textfraction{0.05} @@ -95,18 +94,18 @@ \abovecaptionskip=6pt plus3pt minus1pt \setcounter{totalnumber}{5} -\csndef*{watermark-2}{% - % The macro \xxx below is an unlikely example definition, +\csn@def{watermark-2}{% + % The macro \aaa below is an unlikely example definition, % but it provides a test of xwatermark schemes: - \def\xxx##1{##1}% + \def\aaa##1{##1}% \xwmcolorbox[fillcolor=gray!55,width=.982\paperheight, textalign=center,framesep=5pt,framerule=2pt, outerframecolor=blue,innerframecolor=white]{% \color{white}\framebox[2cm][c]{\phantom{Hello}}% - \hspce\color{black}\tcl{red}{\textbullet}% + \hspce\color{black}\ttcl{red}{\textbullet}% \hspce The marks on these pages were placed effortlessly by using the \pkg'{xwatermark} - \hspce\tcl{red}{\textbullet}\hspce\color{white}% + \hspce\ttcl{red}{\textbullet}\hspce\color{white}% \framebox[2cm][c]{\phantom{Hello}}% \rotatebox[origin=c]{90}{\makebox[1.4cm][c]{\phantom{Hello}}}% }\\[0cm]% @@ -116,9 +115,9 @@ outerframecolor=ForestGreen,innerframecolor=white, textalign=center,width=.715\paperwidth]{% \color{white}\framebox[2cm][c]{\phantom{Hello}}\hspce - \color{black}\tcl{red}{\textbullet}% + \color{black}\ttcl{red}{\textbullet}% \hspce Page~\thepage~of~\pageref*{xwmlastpage}\hspce - \tcl{red}{\textbullet}\hspce + \ttcl{red}{\textbullet}\hspce \color{white}\framebox[2cm][c]{\phantom{Hello}}% \rotatebox[origin=c]{90}{\makebox[1.4cm][c]{\phantom{Hello}}}% }}}\\[0cm]% @@ -129,7 +128,7 @@ textalign=justified,width=.715\paperwidth]{% \normalfont\small\color{blue}\vspace*{-1ex}% \begin{center}\colorbullet{red}\hspace{.25cm}% - \tcl{Purple}{LICENSE}% + \ttcl{Purple}{LICENSE}% \hspace{.25cm}\colorbullet{red}\end{center}\relax This work (\ie, all the files in the \pkg'{xwatermark} manifest) may be distributed and/or modified under the @@ -146,9 +145,9 @@ outerframecolor=blue,innerframecolor=white, textalign=center,width=.982\paperheight]{% \color{white}\framebox[2cm][c]{\phantom{Hello}}% - \hspce\color{black}\tcl{red}{\textbullet}% + \hspce\color{black}\ttcl{red}{\textbullet}% \hspace{4.3cm}User manual for the \pkg'{xwatermark} - \hspace{4.3cm}\tcl{red}{\textbullet}\hspce + \hspace{4.3cm}\ttcl{red}{\textbullet}\hspce \color{white}\framebox[2cm][c]{\phantom{Hello}}% \rotatebox[origin=c]{90}{\makebox[1.4cm][c] {\phantom{Hello}}}% @@ -158,7 +157,7 @@ \newcommand*\tmptexbox{% \fboxrule4pt\fbox{\scaleb\TeX}\\[0ex]\fbox{\scaleb\LaTeX}% } -\csndef*{watermark-3}{% +\csn@def{watermark-3}{% \xwmcolorbox[width=.8\paperwidth,framerule=4pt,framebox, framesep=4pt,innerframecolor=Green,outerframecolor=blue]{% \xwmminipage[width=.7\paperwidth,textalign=left, @@ -173,15 +172,15 @@ }% } -\csndef*{watermark-4}{% +\csn@def{watermark-4}{% \xwmcolorbox[fillcolor=teal,width=.983\paperheight, textalign=center,framesep=5pt,framerule=2pt, outerframecolor=purple,innerframecolor=magenta]{% \color{white}\framebox[2cm][t]{\phantom{Hello}}% \hspce\color{orange!85!red!55}% - \tcl{red}{$\blacktriangleright$}\hspce The~ - \texttt{\tcl{white}{xwatermark}}~ - package\hspce\tcl{red}{$\blacktriangleleft$}% + \ttcl{red}{$\blacktriangleright$}\hspce The~ + \texttt{\ttcl{white}{xwatermark}}~ + package\hspce\ttcl{red}{$\blacktriangleleft$}% \hspce\color{white}\framebox[2cm][t]{\phantom{Hello}}% \rotatebox[origin=c]{90}{\makebox[1.4cm][c]{\phantom{Hello}}}% }\\[0cm]% @@ -203,14 +202,14 @@ outerframecolor=purple,innerframecolor=magenta,textalign=center, width=.983\paperheight]{\color{white}\framebox[2cm][t] {\phantom{Hello}}\hspce\color{orange!85!red!55}% - \tcl{red}{$\blacktriangleright$}\hspace{2.1cm}% + \ttcl{red}{$\blacktriangleright$}\hspace{2.1cm}% Page~\thepage~of~\pageref*{xwmlastpage}% - \hspace{2cm}\tcl{red}{$\blacktriangleleft$}\hspce + \hspace{2cm}\ttcl{red}{$\blacktriangleleft$}\hspce \color{white}\framebox[2.1cm][t]{\phantom{Hello}}% \rotatebox[origin=c]{90}{\makebox[1.4cm][c]{\phantom{Hello}}}% }% } -\csndef*{watermark-5}{% +\csn@def{watermark-5}{% \xwmcolorbox[framesep=5pt,framerule=4pt,innerframecolor=green, outerframecolor=red,textalign=center,width=.7\paperheight, textcolor=blue]{\scalebox{5}{Hello world,}}\\[.25ex]% @@ -218,7 +217,7 @@ outerframecolor=blue,fillcolor=brown!55,textalign=center, width=.7\paperheight,textcolor=red]{\scalebox{5}{We're here!}}% } -\csndef*{watermark-6}{% +\csn@def{watermark-6}{% \xwmminipage[width=\hsize,framerule=2pt,framebox,framecolor=green, height=2cm,depth=2cm]{% \xwmminipage[width=\hsize,textalign=center,textcolor=magenta, @@ -226,7 +225,7 @@ }% } -\csndef*{watermark-7}{% +\csn@def{watermark-7}{% \begin{center}% \color{Yellow}% \fboxrule4\p@ @@ -240,7 +239,7 @@ \xwmstrut{1.3cm}\z@ \fboxrule4\p@\vss \centering\color{LimeGreen}% - \fbox{\tcl{red}{\scalebox{2}{xwatermark}}}% + \fbox{\ttcl{red}{\scalebox{2}{xwatermark}}}% \xwmstrut\z@{1cm}% \end{minipage}% }% diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.pdf b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.pdf Binary files differindex 20f2bd5f96a..b78bc757aee 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.pdf +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.pdf diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.tex b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.tex index 5bf59158743..06f09896867 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.tex +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples1.tex @@ -1,15 +1,6 @@ %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file 'xwatermark-examples1.tex', version 1.5.1. % -% % -% IMPORTANT NOTICE: % -% This example file is not user compilable! The packages needed % -% to compile the examples are not yet available in the public % -% domain. This does not affect the functions of the % -% xwatermark package. I am sorry, but I can't answer requests for % -% packages not yet released. Users can copy the examples into their % -% own files and compile them, removing all undefined commands. % -% % -% This work (ie, all the files in the xwatermark manifest) may be % +% This is file 'xwatermark-examples1.tex', version 1.5.2. % +% % % This work (ie, all the files in the xwatermark manifest) may be % % distributed and/or modified under the conditions of the LaTeX % % Project Public License, either version 1.3 of this license or any % % later version. The latest version of this license is at % @@ -34,7 +25,7 @@ \xnewwatermark [pages={\lastdocpage-1}-\lastdocpage,fontfamily=phv,fontsize=11pt, fontseries=m,align=center,height=\paperheight,width=\paperheight, - angle=90,scale=1,xpos=1.6,ypos=0]{\usecsn{watermark-4}} + angle=90,scale=1,xpos=1.15,ypos=0]{\usecsn{watermark-4}} \xnewwatermark* [pagex={3,5,7},fontfamily=phv,fontsize=11pt, @@ -44,7 +35,7 @@ \xnewwatermark [page=1,fontfamily=phv,fontsize=11pt, fontseries=m,align=center,height=\paperwidth,width=\paperheight, - angle=90,scale=1,xpos=1.7,ypos=0]{\usecsn{watermark-2}} + angle=90,scale=1,xpos=1.15,ypos=0]{\usecsn{watermark-2}} \xnewwatermark [page=3,fontfamily=phv,fontsize=11pt,fontseries=m,align=center, @@ -60,9 +51,9 @@ \title{% {\setbox\z@\vbox to.25\paperheight{}\box0}% - \bfseries The \texttt{\tcl{blue}{xwatermark}} Package + \bfseries The \texttt{\ttcl{blue}{xwatermark}} Package \xcopyright{red}\\[1ex] - \large Version 1.5.1\\[2ex] + \large Version 1.5.2\\[2ex] \Large EXAMPLES (File 1)% } \author{% @@ -75,21 +66,20 @@ \newpage \noindent -\lipsum[1-3] +\ltslipsum[1-3] \newpage -\lipsum[1-4] +\ltslipsum[1-4] \newpage -\lipsum[1-4] +\ltslipsum[1-4] \newpage -\lipsum[1-4] +\ltslipsum[1-4] \newpage -\lipsum[1-4] +\ltslipsum[1-4] \newpage -\lipsum[1-4] - +\ltslipsum[1-4] \end{document} diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.pdf b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.pdf Binary files differindex d1552264ce7..5a90dfaf8e1 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.pdf +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.pdf diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.tex b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.tex index 2c93785bb80..d654ee57eea 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.tex +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-examples2.tex @@ -1,13 +1,5 @@ %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file 'xwatermark-examples2.tex', version 1.5.1. % -% % -% IMPORTANT NOTICE: % -% This example file is not user compilable! The packages needed % -% to compile the examples are not yet available in the public % -% domain. This does not affect the functionalities of the % -% xwatermark package. I am sorry, but I can't answer requests for % -% packages not yet released. Users can copy the examples into their % -% own files and compile them, removing all undefined commands. % +% This is file 'xwatermark-examples2.tex', version 1.5.2. % % % % This work (ie, all the files in the xwatermark manifest) may be % % distributed and/or modified under the conditions of the LaTeX % @@ -33,6 +25,7 @@ \thispagestyle{empty} +%\watermarkpaths*[.](/){{},/Graphics} \watermarkpaths[.](/){{}{/Graphics}} \newwatermark*[% @@ -42,7 +35,7 @@ picypos=.25\paperheight,textxpos=-70,textypos=-50, picbb=116 428 477 718,picscale=1,picfile=tabu-test1, picfileext=eps -]{\tcl{Green}{\texttt{xwatermark\\package}}} +]{\ttcl{Green}{\texttt{xwatermark\\package}}} \newwallpaper[% page=2,fontfamily=put,textcolor=BurntOrange,fontsize=1cm, @@ -96,8 +89,8 @@ \xwmcolorbox[framesep=4pt,framerule=4pt,fillcolor=brown!70!yellow!55, innerframecolor=white,outerframecolor=blue,height=1.5cm, depth=1cm,textalign=center,width=.8\paperheight]% - {\tt\string\advance\tcl{red}{\string\knowledge}% - \string\by\tcl{red}{\string\inquiry}}% + {\tt\string\advance\ttcl{red}{\string\knowledge}% + \string\by\ttcl{red}{\string\inquiry}}% } \newwatermark[% @@ -105,7 +98,7 @@ picbb=78 563 304 788,picscale=2,picfile=xwatermarkpic3, picfileext=epsx,width=\paperwidth,textalign=center,textangle=0, textxpos=0,textypos=0,picontoptext=false -]{\tcl{black}{Yes}} +]{\ttcl{black}{Yes}} \newwatermark*[% page=6,fontfamily=put,textcolor=violet!70,fontsize=2cm,textscale=1, @@ -117,31 +110,33 @@ width=\paperwidth,textalign=center,textangle=-50,textxpos=-30,textypos=80 ]{\fbox{Taken to back}} -\csndef*{watermark-2a}#1{% +\csndef*{watermark-2a}#1#2{% \newwatermark[% pages=6-7,fontfamily=pbk,textcolor=gray!35,fontsize=12pt,fontseries=n, - textalign=center,textangle=90,textscale=1,textxpos=#1,textypos=-1, + textalign=center,textangle=#2,textscale=1,textxpos=#1,textypos=0, width=\paperheight ]{% \xwmcolorbox[framesep=5pt,framerule=2pt,fillcolor=teal, innerframecolor=magenta,outerframecolor=green, - textalign=center,width=.995\paperheight]% + textalign=center,width=.98\paperheight]% {% \color{white}\framebox[2cm][t]{\phantom{Hello}}\hspace{1cm}% - \color{orange!85!red!55}\tcl{red}{$\blacktriangleright$}% + \color{orange!85!red!55}\ttcl{red}{$\blacktriangleright$}% \hspace{2.1cm}Page \thepage~of~\pageref{xwmlastpage}% - \hspace{2.1cm}\tcl{red}{$\blacktriangleleft$}\hspace{1cm}% + \hspace{2.1cm}\ttcl{red}{$\blacktriangleleft$}\hspace{1cm}% \color{white}\framebox[2cm][t]{\phantom{Hello}}% \xwmstrut{9mm}{6mm}% }% }% } + \begin{newcomment} The same watermark is placed twice on the same page. Compare this with one of the examples in xwatermark-examples1.tex: \end{newcomment} -\usecsn{watermark-2a}{-.43\paperwidth} -\usecsn{watermark-2a}{.445\paperwidth} + +\usecsn{watermark-2a}{-.428\paperwidth}{90} +\usecsn{watermark-2a}{.428\paperwidth}{-90} \begin{newcomment} Here is an inefficient example. \scalebox and \rotatebox @@ -154,9 +149,9 @@ example: \xwmcolorbox[framesep=4pt,framerule=4pt,fillcolor=brown!70, innerframecolor=white,outerframecolor=MidnightBlue,height=1cm, depth=.8cm,textalign=center,width=.8\paperheight]% - {\scalebox{1.2}{\bf\tt\tcl{white}{\char`\\advance}% - \tcl{red}{\string\knowledge}% - \string\by\tcl{blue}{\char`\\inquiry}}}\hss}% + {\scalebox{1.2}{\bf\tt\ttcl{white}{\char`\\advance}% + \ttcl{red}{\string\knowledge}% + \string\by\ttcl{blue}{\char`\\inquiry}}}\hss}% \begin{center}\rotatebox{45}{\box\xwm@boxb}\end{center}% } @@ -164,9 +159,9 @@ example: \title{% {\setbox\z@\vbox to.25\paperheight{}\box0}% - \bfseries The \texttt{\tcl{blue}{xwatermark}} Package + \bfseries The \texttt{\ttcl{blue}{xwatermark}} Package \xcopyright{red}\\[1ex] - \large Version 1.5.1\\[2ex] + \large Version 1.5.2\\[2ex] \Large EXAMPLES (File 2)% } \author{% @@ -178,28 +173,28 @@ example: \newpage -\llipsum[1-4] +\ltslipsum[1-4] -\llipsum +\ltslipsum \newpage -\llipsum[1-4] +\ltslipsum[1-4] \newpage -\llipsum[1-4] +\ltslipsum[1-4] \newpage -\llipsum[1-4] +\ltslipsum[1-4] \newpage -\llipsum[1-4] +\ltslipsum[1-4] \newpage -\llipsum[1-4] +\ltslipsum[1-4] \end{document} diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.cfg b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.cfg index b6f5627ea40..7fa223561c7 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.cfg +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.cfg @@ -1,19 +1,21 @@ %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file xwatermark-guide.cfg, version 1.5.1 % +% This is file xwatermark-guide.cfg, version 1.5.2 % % % % Copyright (c) 2009-2011 Ahmed Musa (amusa22@gmail.com). % %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% \ProvidesFile{xwatermark-guide.cfg} - [2011/07/30 v1.5.1 Configuration file for xwatermark-guide.tex (AM)] + [2011/10/20 v1.5.2 Configuration file for xwatermark-guide.tex (AM)] \NeedsTeXFormat{LaTeX2e} \makeatletter -\newprovidedcommands{% - \newdef\new@def,\renewdef\renew@def,\robustdef\robust@def, - \providerobustdef\LTS@providerobustdef +\cptloadpackages{% + xwatermark|printwatermark; + array; + colortbl; + multido; } +%\keepXColumns \providerobustdef*\colorbullet#1{\textcolor{#1}{\textbullet}\sspace} -\newvariables{dimen}[col]{one,two,three,total}[\z@pt] \new@def*\whline{% \noalign{\global\let\savedarw\arrayrulewidth \gdef\arrayrulewidth{1pt}}% @@ -25,27 +27,27 @@ \newcolumntype{M}{>{\rightskip-.4cm}m{\dimexpr\coltotal+.5cm}} \amltxoptions{% - geometry-options = {left=3cm,right=3cm,top=2.5cm,% + geometryoptions = {left=3cm,right=3cm,top=2.5cm,% bottom=2.5cm,includeheadfoot}, - review-document = false, + reviewdocument = false, parindent = false, toc = false, frontpagestyle = empty, pretitleskip = 0ex, posttitleskip = 1ex, - presuptitleskip = .1\paperheight,%15ex, + presuptitleskip = .17\paperheight,%15ex, postsuptitleskip = 0ex, presubtitleskip = 0ex, postsubtitleskip = 0ex, - postauthorskip = 3cm, - natbib-options = {numbers,sort&compress}, - command-color = xmagenta1, - style-color = xgreen1, - special-color = teal, - section-head-color = blue + postauthorskip = 1.5cm, + natbiboptions = {numbers,sort&compress}, + cmdcolor = xmagenta1, + stylecolor = xgreen1, + specialcolor = teal, + sectionheadcolor = blue } \AfterStartOfDocument{% - \renewdef*\thefootnote{\fnsymbol{footnote}}% + \let\footnote\ltsfootnote } \robustdef*\otherchars{\quoted{other} characters\sspace} \newdef*\impnote{\emph{Important note}:\space} @@ -53,27 +55,27 @@ \newletcs\mccolor\makemaccolor \newletcs\pucolor\makepurple -\ifamd@tablefile\else +\ifamd@subsidfile\else\ltsafterfi -\usepackage[persistent]{xdocmute} +\usepackage[persistent,useincluput]{ltxtools-incluput} \fancypagenos[% - show-on-page-one = false, - show-page-numbers = true, - show-headrule = true, - show-footrule = false, - y-position = -.45\paperheight, - x-position = 0, + showonpageone = false, + showpagenumbers = true, + showheadrule = true, + showfootrule = false, + yposition = -.44\paperheight, + xposition = 0, scale = 1, angle = 0, - left-header = {The \textcolor{maccolor}{xwatermark} package}, + left-header = {The \textcolor{macrocolor}{xwatermark} package}, style = {\textsc{Page~\thepage~of~\pageref{xwmlastpage}}}, - right-header = \tcl{black}{\today} + right-header = \ttcl{black}{\today} ] -\newwatermark +\newwatermark' [page=1,fontfamily=phv,fontsize=11pt,fontseries=m,align=center, - coordunit=pc,width=.975\paperwidth,angle=0,scale=1,xpos=-.62,ypos=31.7]{% + coordunit=pc,width=.975\paperwidth,angle=0,scale=1,xpos=-.62,ypos=31.65]{% \xwmcolorbox[framesep=5pt,framerule=2pt,fillcolor=white, outerframecolor=purple,innerframecolor=brown,textalign=justified, width=.975\paperwidth]{% @@ -90,6 +92,62 @@ }% }% } -\fi + +\def\colorseriescycle{20} +\definecolorseries{C}{cmyk}{last}{white}[cmyk]{1,0,0,0} +\resetcolorseries[10]{C} +\definecolorseries{M}{cmyk}{last}{white}[cmyk]{0,1,0,0} +\resetcolorseries[10]{M} +\definecolorseries{Y}{cmyk}{last}{white}[cmyk]{0,0,1,0} +\resetcolorseries[10]{Y} +\definecolorseries{K}{cmyk}{last}{white}[cmyk]{0,0,0,1} +\resetcolorseries[10]{K} +\definecolorseries{L}{rgb}{step}{yellow!50}[cmyk]{0.1,0.1,0.3} +\resetcolorseries[10]{L} + +\newwatermark'[page=1,coordunit=pc,ypos=25,scale=.5]{% + \begingroup + \fboxsep=2mm\relax + \def\elt#1{% + \vbox{% + \hbox{% + \normalfont + \fboxsep=2mm\relax + \hfil + \detokenize\expandafter + {\expandafter0\expandafter.\number#1}% + \hfil\vrule height1ex depth.25ex width0pt + }% + }% + }% + \multido{\ncolr=0+1}{10}{\colorbox{C!![\ncolr]}{\elt{\ncolr}}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{M!![\ncolr]}{\elt{\ncolr}}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{Y!![\ncolr]}{\elt{\ncolr}}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{K!![\ncolr]}{\elt{\ncolr}}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{L!![\ncolr]}{\elt{\ncolr}}}% + \endgroup +} +\newwatermark[page=1,coordunit=pc,ypos=25]{% + \begingroup + \fboxsep=2mm\relax + \@tempcnta\z@pt + \cpttfor xwatermark\dofor{% + \csn@def{d@\number\@tempcnta}{% + \vbox{\hbox to\dimexpr\paperwidth/13\relax + {\hfil\detokenize{#1}\hfil + \vrule height1.8ex depth.6ex width0pt}% + }% + }% + \advance\@tempcnta\@ne + }% + \def\elt{\usename{d@\ncolr}}% + \multido{\ncolr=0+1}{10}{\colorbox{C!![\ncolr]}{\elt}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{M!![\ncolr]}{\elt}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{Y!![\ncolr]}{\elt}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{K!![\ncolr]}{\elt}}\\ + \multido{\ncolr=0+1}{10}{\colorbox{L!![\ncolr]}{\elt}}% + \endgroup +} +\ltsfi \endinput diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.pdf b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.pdf Binary files differindex 10df084b7f0..9c19681cb9f 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.pdf +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.pdf diff --git a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.tex b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.tex index 7fc6792dc5e..29d45d74afa 100644 --- a/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.tex +++ b/Master/texmf-dist/doc/latex/xwatermark/xwatermark-guide.tex @@ -13,6 +13,10 @@ inputfile=true ]{amltxdoc} +\useshortdoccmds +\usepackage{ltxtools-review} + + \makeindex \ifdefTF\newgeometry{}{% \let\newgeometry\@gobble @@ -23,12 +27,9 @@ \begin{frontmatter} \title{The \texttt{\color{blue}xwatermark} Package\titleref{t1}} -\titlenote[t1]{The package is available at - \iftogTF{pdf}{\url{\@titleurl}}{\url{\@shorttitleurl}}. -} -\version{1.5.1} -\titleurl{http://www.ctan.org/tex-archive/macros/latex/contrib/xwatermark/} -\shorttitleurl{http://www.ctan.org/} +\titlenote[t1]{The package is available at \url{\titleurltext}.} +\version{1.5.2} +\titleurl{http://mirror.ctan.org/macros/latex/contrib/xwatermark/} \author{Ahmed Musa\Email{amusa22@gmail.com}\\Preston, Lancashire, UK} \let\abstractname\relax @@ -37,38 +38,55 @@ outerframecolor=ForestGreen, align=justified, fillcolor=white, width=\textwidth, boxalign=center, height=.25cm, depth=0cm,framebox]{% \centering\xwmcolorbox[align=center, fillcolor=white, innerframecolor=blue, outerframecolor=orange, width=.5\hsize, height=2.5mm]{\textbf{Abstract}} \\[\baselineskip] - The \pkg{xwatermark} package puts user-supplied watermarks (graphics and/or arbitrary texts) on select pages of documents using user-friendly key-value interfaces. It has more functionality and dynamism than, for example, the packages \pkg'{draftcopy, draftwatermark, watermark, draftmark, wallpaper}. More than one (graphics and/or text) watermark can be placed jointly or independently on the same document page or on select pages. Watermarks can be placed in the page background or foreground, and watermarks can conveniently be placed on select pages as rectangular or square tiles, depending on the user's choice. Some utility macros, namely, \ffx'{\xwmminipage, \xwmcolorbox, \makecolobox, \fancypagenos} are also provided by the package for handy use in creating watermarks and for other uses. Watermarks (especially wallpapers) take their toll on computer resources, especially speed and save stack size. The packages in the \pkg{xwatermark} bundle (and beyond) have been optimized as much as currently possible. In many instances more than one run of the document will be needed to get the watermarks on the desired pages, especially if the user calls \fx{\lastdocpage} to get the last page of the document. + The \pkg{xwatermark} package puts user-supplied watermarks (graphics and/or arbitrary texts) on select pages of documents using user-friendly key-value interfaces. It has more functionality and dynamism than, for example, the packages \pkg{draftcopy, draftwatermark, watermark, draftmark, wallpaper}. More than one (graphics and/or text) watermark can be placed jointly or independently on the same document page or on select pages. Watermarks can be placed in the page background or foreground, and watermarks can conveniently be placed on select pages as rectangular or square tiles, depending on the user's choice. Some utility macros, namely, \ffx'{\xwmminipage, \xwmcolorbox, \makecolobox, \fancypagenos} are also provided by the package for handy use in creating watermarks and for other uses. Watermarks (especially wallpapers) take their toll on computer resources, especially speed and save stack size. The packages in the \pkg{xwatermark} bundle (and beyond) have been optimized as much as currently possible. In many instances more than one run of the document will be needed to get the watermarks on the desired pages, especially if the user calls \fx{\lastdocpage} to get the last page of the document. } \end{abstract} \end{frontmatter} -\vspace{4\baselineskip} - \newpage +\noindent + +\xwmcolorbox[framesep=5pt,framerule=2pt,fillcolor=white, + outerframecolor=purple,innerframecolor=brown,textalign=justified, + width=.97\textwidth]{% + \normalfont\small\color{black}\vspace*{-1ex}% + \begin{center}\colorbullet{red}\hspace{1cm}\licensename\hspace{1cm}% + \colorbullet{red}\end{center}\vspace*{1ex}% + This work (\ie, all the files in the \pkg{xwatermark} manifest) may be distributed and/or + modified under the conditions of the \lppl, either version~1.3 of this license or any later + version. The \lppl maintenance status of this software is \quoted{author-maintained}. This + software is provided \quoted{as it is}, without warranty of any kind, either expressed or + implied, including, but not limited to, the implied warranties of merchantability and + fitness for a particular purpose. \CopyrightYear +} -\begin{xwmshade}[fillcolor=white,framecolor=orange,framerule=1pt,framesep=2pt, - width=\hsize]\tableofcontents -\end{xwmshade} +\xwmcolorbox[framesep=5pt,framerule=2pt,fillcolor=white, + outerframecolor=purple,innerframecolor=brown,textalign=justified, + width=.97\textwidth]{% + \begingroup + \hypersetup{linkcolor=blue}\tableofcontents + \endgroup +} \docsection(sec:intro){Introduction} -\lletter{T}{he \pkg'{xwatermark}} puts user-specified watermarks (graphics and/or arbitrary texts) on select pages of documents. It has more functionality and dynamism than, for example, the packages \pkg'{draftcopy, draftwatermark, watermark, draftmark}. The advantages of \pkg'{xwatermark} over these earlier packages include: +\lletter{T}{he \pkg'{xwatermark}} puts user-specified watermarks (graphics and/or arbitrary texts) on select pages of documents. It has more functionality and dynamism than, for example, the packages \pkg'{draftcopy, draftwatermark, watermark, draftmark,wallpaper}. The advantages of \pkg'{xwatermark} over these earlier packages include: \begin{enum} \item Both text and graphics watermarks are admissible within any watermark item or instance. \item The user can dynamically customize the attributes (color, position, orientation, scale, the page(s)---first page, last page, all pages, odd pages, even pages, a particular page, and a range of pages---on which the watermark should appear) of each watermark. \item Watermarks can be placed in the background and in the foreground of document pages by simple instructions. \item Rectangular and square wallpapers can be produced from watermarks to suit user needs without effort. -\item All the command options/keys are passed directly via user-friendly key-value interfaces, instead of being defined in the source file by several macros. There are only two main user commands: \ffx'{\newwatermark, \newwallpaper}. The user is relieved of the need to remember and deploy several different macros, except, of course, that function keys are used. The list of keys and their default values for these functions are given in \amref{sec:packageoptions}. +\item All the command options/keys are passed directly via user-friendly key-value interfaces, instead of being defined in the source file by several macros. There are only two main user commands: \ffx'{\newwatermark, \newwallpaper}. The user is relieved of the need to remember and deploy several different macros, except, of course, that function keys are used. The list of keys and their default values for these functions are given in \sref{sec:packageoptions}. \end{enum} With the \pkg'{xcolor} (not loaded automatically by the \pkg'{xwatermark}), all colors (including \hx{white}, shades like \hx{-red!75!green!50}, and those defined within the user document) can be passed to this package. And, as mentioned above, both texts and pictures can be submitted and printed as watermarks on the same page, and on different positions. There are global and local package options. These are listed and explained in -\amref{sec:packageoptions}. +\sref{sec:packageoptions}. -Users who have since complained of not being able to conveniently place more than one watermark on the same page can now heave a sigh relieve: the current version of the package has enabled this functionality. You can now mix text and graphics watermarks and wallpapers and place as many of them as you like on the same page. This version of the package comes with an optimized looping macro and a key management system (the \pkg'{ltxkeys}) to enable several watermarks and wallpapers to be placed efficiently on the same document pages. +Users who have since complained of not being able to conveniently place more than one watermark on the same page can now heave a sigh relieve: the current version of the package has enabled this functionality. You can now mix text and graphics watermarks and wallpapers and place as many of them as you like on the same page. This version of the package comes with optimized looping macros and a key management system (the \pkg'{ltxkeys}) to enable several watermarks and wallpapers to be placed efficiently on the same document pages. The \pkg'{ltxkeys} can be used for general key parsing. \docsection(sec:user-interface){User interfaces} @@ -77,7 +95,7 @@ Users who have since complained of not being able to conveniently place more tha In style files the package may be loaded with \hx{\RequirePackage} and in document files with \hx{\usepackage} together with the package keys that can be passed as options. -\Note Some of the keys are \quoted{option keys}, \ie, they can appear only in \hx{\documentclass} or \hx{\usepackage} and not as, or in, arguments of other functions or macros. The \quoted{non-option keys} are those that can't appear in \hx{\documentclass} or \hx{\usepackage} but in the arguments of other macros. If a key is a non-option key and the user submits it to \hx{\documentclass} or \hx{\usepackage}, the package will alert the user. The same thing can be expected when a key is an option key and is submitted outside of \hx{\documentclass} or \hx{\usepackage}. The \quoted{need value} keys are keys that can't be called without a user-supplied value. +\ltsnote Some of the keys are \quoted{option keys}, \ie, they can appear only in \hx{\documentclass} or \hx{\usepackage} and not as, or in, arguments of other functions or macros. The \quoted{non-option keys} are those that can't appear in \hx{\documentclass} or \hx{\usepackage} but in the arguments of other macros. If a key is a non-option key and the user submits it to \hx{\documentclass} or \hx{\usepackage}, the package will alert the user. The same thing can be expected when a key is an option key and is submitted outside of \hx{\documentclass} or \hx{\usepackage}. The \quoted{need value} keys are keys that can't be called without a user-supplied value. The package keys \ffx'{printwatermark, disablegeometry} are option keys, and hence can be called as follows: @@ -86,11 +104,11 @@ The package keys \ffx'{printwatermark, disablegeometry} are option keys, and hen \usepackage[printwatermark,disablegeometry]{xwatermark} \finish{example} -The other options may be submitted via user commands like \ffx'{\newwatermark, \newwallpaper}. Please see \amrefrange[tab:]{globaloptions,localoptions} for a full listing of all the available package and command options. By design, the boolean option \fx{printwatermark} should not appear in the macros \ffx'{\newwatermark, \newwallpaper} but as a package or \hx{\documentclass} option. It is disabled just before \hx{\begin{document}} and any attempt to pass it via \fx{\newwatermark} or \fx{\newwallpaper} thereafter will trigger an error. +The other options may be submitted via user commands like \ffx'{\newwatermark, \newwallpaper}. Please see \srefrange[tab:]{globaloptions,localoptions} for a full listing of all the available package and command options. By design, the boolean option \fx{printwatermark} should not appear in the macros \ffx'{\newwatermark, \newwallpaper} but as a package or \hx{\documentclass} option. It is disabled just before \hx{\begin{document}} and any attempt to pass it via \fx{\newwatermark} or \fx{\newwallpaper} thereafter will trigger an error. When boolean options (\eg, \ffx'{printwatermark,allpages}) are passed without values, they are assumed implicitly \hx{true} by the package. -\Note When your watermark is not printed, first check that the option \fx{printwatermark} is \texttt{true}. This is one of the means to control the printing of watermarks. The others are through the following commands (more details are available in \amref{sec:dummywatermarks}): +\ltsnote When your watermark is not printed, first check that the option \fx{printwatermark} is \texttt{true}. This is one of the means to control the printing of watermarks. The others are through the following commands (more details are available in \sref{sec:dummywatermarks}): \start+'{newmacro}[\dummywatermark, \DiscardAllWatermarks, etc] \dummywatermark, \DiscardAllWatermarks, \UseDummyWatermarks, @@ -99,7 +117,7 @@ When boolean options (\eg, \ffx'{printwatermark,allpages}) are passed without va \fxi*{\dummywatermark, \DiscardAllWatermarks, \UseDummyWatermarks, \DiscardDummyWatermarks} -The option \fx{textmark} implies text watermarks, for which all the font properties can be selected. It does not apply to graphics watermarks. For graphics watermarks you need the keys: \fx{picfile} (the graphics/picture filename, with its full path but without its extension), and \fx{picfileext} (the file extension). Admissible file extensions are \hhx'{ps,eps,pdf,png,mps,jpeg}; they should be submitted without the dot. The extensions \hhx'{ps,eps} are for \hx{dvi} files, while the rest are for \hx{pdf} runs. Additional information is needed (see \amref{sec:pic-watermark})\footnote{When the options \ffx'{align ,height, width, angle, scale, xpos, ypos, color} appear without prefixes such as \fx{pic} or \fx{text}, they refer to the text watermark and not the graphics watermark. The user can thus use these options in place of \ffx'{textalign,textheight,textwidth, textangle, textscale, textxpos, textypos, textcolor}, respectively. However, options referring to graphics watermarks must always be prefixed with \fx{pic} (\eg, picfile).}. +The option \fx{textmark} implies text watermarks, for which all the font properties can be selected. It does not apply to graphics watermarks. For graphics watermarks you need the keys: \fx{picfile} (the graphics/picture filename, with its full path but without its extension), and \fx{picfileext} (the file extension). Admissible file extensions are \hhx'{ps,eps,pdf,png,mps,jpeg}; they should be submitted without the dot. The extensions \hhx'{ps,eps} are for \hx{dvi} files, while the rest are for \hx{pdf} runs. Additional information is needed (see \sref{sec:pic-watermark})\footnote{When the options \ffx'{align ,height, width, angle, scale, xpos, ypos, color} appear without prefixes such as \fx{pic} or \fx{text}, they refer to the text watermark and not the graphics watermark. The user can thus use these options in place of \ffx'{textalign,textheight,textwidth, textangle, textscale, textxpos, textypos, textcolor}, respectively. However, options referring to graphics watermarks must always be prefixed with \fx{pic} (\eg, picfile).}. The following points should be noted about the values of the \fx{textmark}: @@ -123,8 +141,8 @@ When specifying package options either in \hx{\usepackage} or \hx{\documentclass \begin{enum} \item Multiple lines are permitted but not blank lines. \item Extra paces between options and words are ignored. -\item Active characters (those of catcode~13) may be allowed (but see \amref{sec:activechar} for further comments). -\item Options are mostly order-agnostic, except \fxi{graphicsoptions}, whose values take precedence over those supplied via other keys (see \amref{sec:graphicsoptions}). +\item Active characters (those of catcode~13) may be allowed (but see \sref{sec:activechar} for further comments). +\item Options are mostly order-agnostic, except \fxi{graphicsoptions}, whose values take precedence over those supplied via other keys (see \sref{sec:graphicsoptions}). \end{enum} @@ -149,14 +167,14 @@ The remaining options should ideally be set dynamically using the macro \fx{\new The use syntax for the command \fx{\newwatermark} is as follows \start{newmacro}[\newwatermark] -\newwatermark[|A(key-val)]{|A(mark)} -\newwatermark|R(*')[|A(key-val)]{|A(mark)} +\newwatermark[|A(keyval)]{|A(mark)} +\newwatermark|R(*')[|A(keyval)]{|A(mark)} \finish{newmacro} \fxi*{\newwatermark} -where \ang{key-val} is the list of keys and their values (called the watermark attributes) and \ang{mark} is the text watermark. Graphics watermarks are to be specified with their file name, file extension, \etcc. The full lists of the available keys for the macro \fx{\newwatermark} and others are available in \amref{sec:packageoptions}. +where \ang{keyval} is the list of keys and their values (called the watermark attributes) and \ang{mark} is the text watermark. Graphics watermarks are to be specified with their file name, file extension, \etcc. The full lists of the available keys for the macro \fx{\newwatermark} and others are available in \sref{sec:packageoptions}. -The \stform of \fx{\newwatermark} puts the watermark in the foreground instead of the background, and the \pmform is ignored, \ie, no watermark is produced (see \amref{sec:dummywatermarks}). +The \stform of \fx{\newwatermark} puts the watermark in the foreground instead of the background, and the \pmform is ignored, \ie, no watermark is produced (see \sref{sec:dummywatermarks}). The macro \fx{\newwatermark} can be used as in @@ -182,7 +200,7 @@ When you want the watermark on only one page of the document, you can convenient In this way, you don't have to bother with locating in the source file the spot that corresponds to the page on which you want the watermark to appear. In fact, you can collect all the watermarks in the document preamble or in a configuration file with the command \fx{\newwatermark}. -\Note Each call to \fx{\newwatermark} must contain the page(s) that will receive the watermark(s), otherwise the user will be alerted. The page specifiers are: +\ltsnote Each call to \fx{\newwatermark} must contain the page(s) that will receive the watermark(s), otherwise the user will be alerted. The page specifiers are: \start'{example}[page specifiers] page=x, pages=x-y, pagex={x,y,z}, firstpage, lastpage, allpages, @@ -211,7 +229,7 @@ page=x, pages=x-y, pagex={x,y,z}, firstpage, lastpage, allpages=true, evenpages=true, oddpages=true \finish{example} -together with \fx{printwatermark}=\hx{true} but you don't want the mark on any particular page, we can simply set \fx{\newwatermark[other keys,textmark=]{}} or, to the same effect, we may set \fx{\newwatermark[other keys]{}}, where \quoted{other keys} may include the page specifiers\footnote{In the case of graphics watermarks, setting \ftfx{\newwatermark[other keys,picfile=]{}} will prompt a \quoted{no file} error.}. These both imply that the text watermark for the given page is empty. This can be useful when transiting from one watermark type to another. Moreover, since both picture and text marks can be submitted via one and the same command \fx{\newwatermark} (see \amref{sec:pic-text-mark}), this technique may be used to empty the text watermark for the given page or range of pages. For example, +together with \fx{printwatermark}=\hx{true} but you don't want the mark on any particular page, we can simply set \fx{\newwatermark[other keys,textmark=]{}} or, to the same effect, we may set \fx{\newwatermark[other keys]{}}, where \quoted{other keys} may include the page specifiers\footnote{In the case of graphics watermarks, setting \ftfx{\newwatermark[other keys,picfile=]{}} will prompt a \quoted{no file} error.}. These both imply that the text watermark for the given page is empty. This can be useful when transiting from one watermark type to another. Moreover, since both picture and text marks can be submitted via one and the same command \fx{\newwatermark} (see \sref{sec:pic-text-mark}), this technique may be used to empty the text watermark for the given page or range of pages. For example, \start{example}[\newwatermark] \newwatermark[allpages,fontfamily=put,color=white,fontsize=3cm,scale=1, @@ -238,7 +256,7 @@ However, both the picture and text marks will then share the same subset of the \docsubsection{The usefulness of the \headhx{white} color} -You can deploy the white color to great effect in designing text watermarks. Also, if you set \fx{allpages}=\hx{true} or \fx{evenpages}=\hx{true} or \fx{oddpages=true} together with \fx{printwatermark}=\hx{true} but you don't want the mark on any particular page, you can simply enter \fx{color=white} in the \fx{\newwatermark} on that page. This applies only to text watermarks, as such a declaration has no effect on picture watermarks. This may be convenient in circumstances where you may change your mind as to whether to place a watermark on a particular page or not. In this way you don't have to set \fx{\newwatermark[other keys,textmark=]{}} or remove (or comment out) the \fx{\newwatermark} command for that (or indeed any) page. See also \amref{sec:dummywatermarks}. +You can deploy the white color to great effect in designing text watermarks. Also, if you set \fx{allpages}=\hx{true} or \fx{evenpages}=\hx{true} or \fx{oddpages=true} together with \fx{printwatermark}=\hx{true} but you don't want the mark on any particular page, you can simply enter \fx{color=white} in the \fx{\newwatermark} on that page. This applies only to text watermarks, as such a declaration has no effect on picture watermarks. This may be convenient in circumstances where you may change your mind as to whether to place a watermark on a particular page or not. In this way you don't have to set \fx{\newwatermark[other keys,textmark=]{}} or remove (or comment out) the \fx{\newwatermark} command for that (or indeed any) page. See also \sref{sec:dummywatermarks}. \docsubsection(sec:dummywatermarks){Dummy watermarks} @@ -253,7 +271,7 @@ When you don't need a watermark printed, you can simply replace its \fx{\newwate \finish{newmacro} \fxi*{\dummywatermark} -And when you don't want any of your watermarks printed, you could simply issue the option \fx{printwatermark}=\hx{false} or call the command \fxi{\DiscardAllWatermarks}. These will simply turn all instances of \fx{\newwatermark} command into \fx{\dummywatermark}. In any run, you may decide to use some or all of the dummy watermarks. To use all dummy watermarks, you issue the command \fxi{\UseDummyWatermarks} before instances of \fx{\dummywatermark}. To again disregard all subsequent dummy watermarks, which is the default state, simply call the command \fxi{\DiscardDummyWatermarks}. These commands provide a convenient scheme for deciding the watermarks to be printed with minimal typing. For wallpapers, there is the corresponding command \fxi{\dummywallpaper}. Also, putting a prime sign (\RedPrime) on \fx{\newwatermark} or \fx{\newwallpaper} turns the command into a dummy mark, but only for that single instance. Subsequent \fx{\newwatermark} and \fx{\newwallpaper} without primes will produce watermarks and wallpapers. +And when you don't want any of your watermarks printed, you could simply issue the option \fx{printwatermark}=\hx{false} or call the command \fxi{\DiscardAllWatermarks}. These will simply turn all instances of \fx{\newwatermark} command into \fx{\dummywatermark}. In any run, you may decide to use some or all of the dummy watermarks. To use all dummy watermarks, you issue the command \fxi{\UseDummyWatermarks} before the instances of \fx{\dummywatermark}. To again disregard all subsequent dummy watermarks, which is the default state, simply call the command \fxi{\DiscardDummyWatermarks}. These commands provide a convenient scheme for deciding the watermarks to be printed with minimal typing. For wallpapers, there is the corresponding command \fxi{\dummywallpaper}. Also, putting a prime sign (\Redprime) on \fx{\newwatermark} or \fx{\newwallpaper} turns the command into a dummy mark, but only for that single instance. Subsequent \fx{\newwatermark} and \fx{\newwallpaper} without primes will produce watermarks and wallpapers, respectively. \docsection(sec:wallpapers){Wallpapers} @@ -263,21 +281,21 @@ And when you don't want any of your watermarks printed, you could simply issue t The command \fx{\newwallpaper} can be used to produce rectangular and square tiles on document pages. The use syntax for the command \fx{\newwallpaper} is \start{newmacro}[\newwallpaper] -\newwallpaper[|A(key-val)]{|A(mark)} -\newwallpaper|R(*')[|A(key-val)]{|A(mark)} +\newwallpaper[|A(keyval)]{|A(mark)} +\newwallpaper|R(*')[|A(keyval)]{|A(mark)} \finish{newmacro} \fxi*{\newwallpaper} -where \ang{key-val} is the list of keys and their values (called the attributes) and \ang{mark} is the text (and not graphics) watermark. Graphics watermarks are again to be specified with their file name, file extension, \etcc. The full lists of the available keys for the macro \fx{\newwallpaper} are available in \amref{tab:localoptions}. +where \ang{keyval} is the list of keys and their values (called the attributes) and \ang{mark} is the text (and not graphics) watermark. Graphics watermarks are again to be specified with their file name, file extension, \etcc. The full lists of the available keys for the macro \fx{\newwallpaper} are available in \sref{tab:localoptions}. -The \stform of \fx{\newwallpaper} puts the watermark in the foreground instead of the background, and the \pmform is ignored, \ie, no watermark is produced (see \amref{sec:dummywatermarks}). +The \stform of \fx{\newwallpaper} puts the watermark in the foreground instead of the background, and the \pmform is ignored, \ie, no wallpaper is produced (see \sref{sec:dummywatermarks}). -When you get unexpected tiles, you should consider enabling or disabling the keys \fx{squaretiles} (default \texttt{true}) and/or \fx{boxalign} (default \texttt{center}). The key \fx{boxalign} may assume one of the values in the set \ffx{t-l,t-r,b-l,b-r,s} or \ffx{top-left, top-right, bottom-left, bottom-right, center, justified}. +When you get unexpected tiles, you first should consider enabling or disabling the keys \fx{squaretiles} (default \texttt{true}) and/or \fx{boxalign} (default \texttt{center}). The key \fx{boxalign} may assume one of the values in the set \ffx{t-l,t-r,b-l,b-r,s} or \ffx{top-left, top-right, bottom-left, bottom-right, center, justified}. \docsection(sec:pic-watermark){Graphics watermarks} -For graphics/picture watermarks, you need the \fx{picfile} (the graphics filename, with its full path but without its extension), \fx{picfileext} (the picture filename extension without the dot), \fx{picbb} (the picture bounding box), and \fx{picscale} (the picture scale)\footnote{These options have longer, easier to remember, names; see \amref{tab:localoptions}.}. Admissible file extensions are \fx{eps}, \fx{pdf}, \fx{png} and \fx{jpeg}; the latter three, but not the first, may be used in the case of \pdftex. The file extension should be passed without the dot. If the file extension is not passed to package, the package selects it automatically based on whether \pdftex mode is running or not (normal extensions are \fx{eps} for dvi mode and \fx{pdf} for \pdftex mode). In fact, the package does search hard on the given paths for other admissible file types with the base filename the user has specified. If you have the graphics file in both \fx{eps} and \pdf-compatible formats, then you don't have to bother about submitting the file extension to the package: it will automatically select the appropriate file extension, depending on the mode (\pdf or \texttt{dvi}) in which it is running. +For graphics/picture watermarks, you need the \fx{picfile} (the graphics filename, with its full path but without its extension), \fx{picfileext} (the picture filename extension without the dot), \fx{picbb} (the picture bounding box), and \fx{picscale} (the picture scale)\footnote{These options have longer, easier to remember, names; see \sref{tab:localoptions}.}. Admissible file extensions are \fx{eps}, \fx{pdf}, \fx{png} and \fx{jpeg}; the latter three, but not the first, may be used in the case of \pdftex. The file extension should be passed without the dot. If the file extension is not passed to package, the package selects it automatically based on whether \pdftex mode is running or not (normal extensions are \fx{eps} for dvi mode and \fx{pdf} for \pdftex mode). In fact, the package does search hard on the given paths for other admissible file types with the base filename the user has specified. If you have the graphics file in both \fx{eps} and \pdf-compatible formats, then you don't have to bother about submitting the file extension to the package: it will automatically select the appropriate file extension, depending on the mode (\pdf or \texttt{dvi}) in which it is running. \docsubsection(sec:graphicsoptions) @@ -305,11 +323,11 @@ draft, type, ext, read, command It should be noted that \fx{\GraphicsOptions} isn't a key but a stand-alone command with the following syntax: \start{newmacro}[\GraphicsOptions] -\GraphicsOptions{|A(key-val)} +\GraphicsOptions{|A(keyval)} \finish{newmacro} \fxi*{\GraphicsOptions} -where \ang{key-val} are admissible keys for the command \hx{\includegraphics} and their user-supplied values. The values so suggested by \fx{\GraphicsOptions} override those given via the keys of the \pkg{xwatermark}, including \fx{graphicsoptions}. Such values remain in force until they are changed later by another call to \fx{\GraphicsOptions}. +where \ang{keyval} are admissible keys for the command \hx{\includegraphics} and their user-supplied values. The values so suggested by \fx{\GraphicsOptions} override those given via the keys of the \pkg{xwatermark}, including \fx{graphicsoptions}. Such values remain in force until they are changed later by another call to \fx{\GraphicsOptions}. An example follows: @@ -368,7 +386,7 @@ The package is set to inherit the \hx{\documentclass} options, if the options ap and vice versa. It should, however, be noted that some package options and keys are restricted either to the \hhx'{\documentclass,\usepackage} (this applies to the so-called \quoted{option keys}) or to the various user macros (in the case of \quoted{non-option keys}). Normally, the package will alert the user to the wrong call of any of the options and keys. -If you don't need the watermark on any page of your document, simply replace the option \fx{printwatermark} (=\hx{true}) with \fx{printwatermark}=\hx{false} in \hx{\usepackage} or \hx{\documentclass}. If you have specified \fx{printwatermark} (=\hx{true}) in the \hx{\documentclass} options list but you still don't need the watermark on any page of your document, then you would have to use the tools of \amref{sec:dummywatermarks}. +If you don't need the watermark on any page of your document, simply replace the option \fx{printwatermark} (=\hx{true}) with \fx{printwatermark}=\hx{false} in \hx{\usepackage} or \hx{\documentclass}. If you have specified \fx{printwatermark} (=\hx{true}) in the \hx{\documentclass} options list but you still don't need the watermark on any page of your document, then you would have to use the tools of \sref{sec:dummywatermarks}. \docsubsection<Size of the watermark>{The size of the watermark} @@ -391,12 +409,12 @@ Acceptable units of length include \hx{mm} (millimeter), \hx{cm} (centimeter), \ If you discover that the watermark is wrongly positioned on the page(s) of your document, as some users have had course to complain, the chances are that you have submitted wrong coordinates (values of \fx{xpos} and \fx{ypos}) to the package or the watermark's width (\fx{textwidth} or \fx{picwidth}) is not optimal or both reasons. The package does not take responsibility for this and will normally not warn you in this respect. Since the output file provides a direct and simple indication of the occurrence of the anomaly, no attempt has been made in the package to warn users in this regard. If you do not specify the keys \fx{xpos} and/or \fx{ypos} at all in the call to \fx{\newwatermark}, their default values will be used by the package. Also, if you list these keys without their values in the call to \fx{\newwatermark}, their default values (\fx{xpos=0} and \fx{ypos=0}, which yield the center of paper) will be assumed by the package. The default value of the watermark's width is \hx{\paperheight}, and not \hx{\paperwidth} as might be expected. -When the \pkg'{geometry} is loaded together with the \pkg'{xwatermark}, page layout scale changes by the \pkg'{geometry} may result in the watermarks being positioned slightly away from the intended position. See \amref{sec:geometry} for further details. +When the \pkg'{geometry} is loaded together with the \pkg'{xwatermark}, page layout scale changes by the \pkg'{geometry} may result in the watermarks being positioned slightly away from the intended position. See \sref{sec:geometry} for further details. \docsubsection{Wrong size of the watermark} -When you discover that your text or graphics watermark is not of the size you expect, then you should check the global and local scale and width of the watermark. It is most likely that the chosen combination is wrong or inconsistent. Global and local package options are described in \amref{sec:packageoptions}. For example, choosing \fx{scale=0.7} and \fx{width=\paperwidth} may yield something unexpected. So will mixing inconsistent global and local scales or width, or both. +When you discover that your text or graphics watermark is not of the size you expect, then you should check the global and local scale and width of the watermark. It is most likely that the chosen combination is wrong or inconsistent. Global and local package options are described in \sref{sec:packageoptions}. For example, choosing \fx{scale=0.7} and \fx{width=\paperwidth} may yield something unexpected. So will mixing inconsistent global and local scales or width, or both. \docsubsection{Breaking the watermark into lines} @@ -416,7 +434,7 @@ More complex examples are available in the example source and \pdf files that sh \docsubsection{The alignment of the watermark} -The alignment of the watermark is controlled by the keys \ffx'{align, textalign, boxalign}. The first two are equivalent and may be set to \fx{center}, \fx{left}, \fx{right} or \fx{justified}. The default is \fx{center}. This is particularly useful for putting arbitrary texts (that are not necessarily watermarks) on pages of documents. The admissible values for the key \fx{boxalign} are given in \amref{tab:localoptions}. +The alignment of the watermark is controlled by the keys \ffx'{align, textalign, boxalign}. The first two are equivalent and may be set to \fx{center}, \fx{left}, \fx{right} or \fx{justified}. The default is \fx{center}. This is particularly useful for putting arbitrary texts (that are not necessarily watermarks) on pages of documents. The admissible values for the key \fx{boxalign} are given in \sref{tab:localoptions}. \docsubsection{Locating the page center} @@ -479,7 +497,7 @@ To make it easier for users to create paragraph boxes and color boxes of texts a \docsubsection(sec:minipage){The \headfx{\xwmminipage} macro} -The \fx{\xwmminipage} macro is a \hx{minipage} environment that may be used for framing watermarks. It accepts verbatim material. Like the \fx{\newwatermark} macro, this macro is called with key-value pairs as follows (see \amref{tab:localoptions} for a full listing of the available keys): +The \fx{\xwmminipage} macro is a \hx{minipage} environment that may be used for framing watermarks. It accepts verbatim material. Like the \fx{\newwatermark} macro, this macro is called with key-value pairs as follows (see \sref{tab:localoptions} for a full listing of the available keys): \start{newmacro}[\xwmminipage] \xwmminipage[key=value list]{balanced text} @@ -487,7 +505,7 @@ The \fx{\xwmminipage} macro is a \hx{minipage} environment that may be used for \finish{newmacro} \fxi*{\xwmminipage} -The \fx{textcolor} key in \fx{\xwmminipage} is the color of the text. In the case of \fx{\xwmcolorbox}, four color values are expected: \ffx'{textcolor, fillcolor, outerframecolor, innerframecolor}. Texts with commas need to be enclosed in braces when submitted to these macros. The default values of the keys of these macros are described in \amref{sec:localoptions}. +The \fx{textcolor} key in \fx{\xwmminipage} is the color of the text. In the case of \fx{\xwmcolorbox}, four color values are expected: \ffx'{textcolor, fillcolor, outerframecolor, innerframecolor}. Texts with commas need to be enclosed in braces when submitted to these macros. The default values of the keys of these macros are described in \sref{sec:localoptions}. The macros \ffx'{\xwmminipage,\xwmcolorbox} can be nested within and among themselves, \eg, @@ -540,7 +558,7 @@ Notice here that the macro \fx{\makecolorbox} calls the macro \fx{\xwmcolorbox}. \docsection(sec:fancypagenos){The \headfx{\fancypagenos} macro} -The macro \fx{\fancypagenos}, which has the following syntax, can be used to position and format page numbers in the desired fashion. Its keys and their default values are described in \amref{tab:localoptions}. Page numbers produced by \fx{\fancypagenos} will, by default, appear in the foreground, so that they can be seen on top of watermarks. If you want the page numbers to appear in the background, then set \fx{sendtoback}=\hx{true} as one of the key-value pairs in the call to \fx{\fancypagenos}. +The macro \fx{\fancypagenos}, which has the following syntax, can be used to position and format page numbers in the desired fashion. Its keys and their default values are described in \sref{tab:localoptions}. Page numbers produced by \fx{\fancypagenos} will, by default, appear in the foreground, so that they can be seen on top of watermarks. If you want the page numbers to appear in the background, then set \fx{sendtoback}=\hx{true} as one of the key-value pairs in the call to \fx{\fancypagenos}. \start{newmacro}[\fancypagenos] \fancypagenos[key=value pairs] @@ -566,8 +584,8 @@ After the effects of the \pkg'{geometry} are re-introduced (\ie, after setting t Because the \pkg'{geometry} stipulates that the command \hx{\Gm@dorg} can be issued only in the document preamble, the switch \fx{disablegeometry} can appear as option only in \hx{\documentclass} or \hx{\usepackage{xwatermark}}. But it matters not which of the two packages (\pkg{geometry, xwatermark}) is loaded first. To call \hx{\Gm@dorg}, the \pkg'{xwatermark} uses the hook \hx{\BeforeStartOfDocument} from the \pkg'{catoptions}. \hx{\AtBeginDocument}, a native \latex hook, is inapplicable in this case. -\docsection{Support for \deadunexpandable{\acro{UNICODE}} and - \deadunexpandable{\acro{UTF}} encodings} +\docsection{Support for \ltsneverexpand{\acro{UNICODE}} and + \ltsneverexpand{\acro{UTF}} encodings} The \pkg'{xwatermark} can be used with any font encoding, provided the \fx{fontfamily} is properly declared before use. For example, with the following declarations on \XeTeX, Rembrandt Wolpert (\url{wolpert@uark.edu}) obtained some \fx{.pdf} outputs that he is willing to share with other users: @@ -596,7 +614,7 @@ It doesn't matter what the user declares as a \fx{fontfamily} provided he/she de For graphics watermarks, the watermark image, or any other image that is repeated in the document, has the potential to make the processed version of the document surprisingly large. The problem is that the default mechanisms of graphics usage add the image at every point it is to be used, and when processed, the image appears in the output file at each such point. -See the \acro{UKTUG FAG}, version~3.20 (2010), entry number~146, page~95, for the available solutions to this problem. As described by this reference, if the \texttt{PostScript} version of the file is destined for conversion to \pdf, either by a ghostscript-based mechanism such as \hx{ps2pdf} or by, for example, Acrobat Distiller, the issue is not as important, since the distillation mechanism will amalgamate graphics objects whether or not the \texttt{PostScript} has them amalgamated. \pdftex does the same job with graphics, automatically converting multiple insertions into pointers to graphics objects. +See the \acro{UKTUG FAG}, version~3.20 (2010), entry number~146, page~95, for the available solutions to this problem. As described by this reference, if the \texttt{PostScript} version of the file is destined for conversion to \pdf, either by a ghostscript-based mechanism such as \hx{ps2pdf} or by, for example, Acrobat Distiller, the issue is not as important, since the distillation mechanism will amalgamate graphics objects whether or not the \texttt{PostScript} has them amalgamated. \pdftex does the same job with graphics, automatically converting multiple insertions into pointers to graphics objects. See also the \hx{\pdfxform} command and instructions about \hx{XObject}s in \pdftex user manual. \docsection{Further examples of use of \headpkg{xwatermark} package} @@ -611,20 +629,26 @@ We categorize the package options and keys into global and local. Global options \docsubsection(sec:globaloptions){Global options} -The global package options are listed and described in the following \amref{tab:globaloptions}. +The global package options are listed and described in the following \sref{tab:globaloptions}. +\begingroup +\small \ifboolTF{amd@inputfile}{% \InputDocument{tab-globaloptions} }{} +\endgroup \docsubsection(sec:localoptions){Local options} -Local package options are those associated with the commands \ffx'{\newwatermark, \newwallpaper, \xwmminipage, \xwmcolorbox, \makecolorbox, \fancypagenos}. They are described in the following \amref{tab:localoptions}. +Local package options are those associated with the commands \ffx'{\newwatermark, \newwallpaper, \xwmminipage, \xwmcolorbox, \makecolorbox, \fancypagenos}. They are described in the following \sref{tab:localoptions}. +\begingroup +\small \ifboolTF{amd@inputfile}{% \InputDocument{tab-localoptions} }{} +\endgroup \docsection(sec:version-hist){Version history} @@ -632,21 +656,24 @@ Local package options are those associated with the commands \ffx'{\newwatermark The following change history highlights significant changes that affect user utilities and interfaces; changes of technical nature are not documented in this section. The \stsign on the right-hand side of the following lists means the subject features in the package but is not reflected anywhere in this user guide. \begin{versionhist} + \begin{version}{1.5.2}{2011/10/20} + \item To match changes in \pkg'{ltxkeys} \vsecref* + \end{version} \begin{version}{1.5.1}{2011/07/20} - \item Following user request, two new keys were introduced for the macro \fx{\fancypagenos}. \vsecref{sec:fancypagenos} + \item Following user request, two new keys were introduced for the macro \fx{\fancypagenos} \vsecref{sec:fancypagenos} \end{version} \begin{version}{1.5.0}{2011/07/10} - \item Introduced the \pkg'{ltxkeys}, a highly robust and optimized module for general creation and management of keys. \vsecref* + \item Introduced the \pkg'{ltxkeys}, a highly robust and optimized module for general creation and management of keys \vsecref* \item Provisions for placing more than one watermark on the same page. \vsecref{sec:newwatermarks} - \item Introduced wallpaper functionalities. \vsecref{sec:wallpapers} - \item Adaptable and flexible fancy page numbers. \vsecref{sec:fancypagenos} + \item Introduced wallpaper functionalities \vsecref{sec:wallpapers} + \item Adaptable and flexible fancy page numbers \vsecref{sec:fancypagenos} \end{version} \end{versionhist} \newpage -\indexpreamble{Index numbers refer to page numbers.} -\indexpreambleformat{\centering} -\indexcolumns\tw@ +\ltsindexpreamble{Index numbers refer to page numbers.} +\ltsindexpreambleformat{\centering} +\ltsindexcolumns\tw@ \printindex \end{document} diff --git a/Master/texmf-dist/tex/latex/xwatermark/xwatermark.sty b/Master/texmf-dist/tex/latex/xwatermark/xwatermark.sty index 81ceb5b120f..f48af204ad6 100644 --- a/Master/texmf-dist/tex/latex/xwatermark/xwatermark.sty +++ b/Master/texmf-dist/tex/latex/xwatermark/xwatermark.sty @@ -1,5 +1,5 @@ %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -% This is file 'xwatermark.sty', version 1.5.1, July 2011. % +% This is file 'xwatermark.sty', version 1.5.2, November 2011. % % % % This package puts user-specified watermarks (graphics and arbitrary % % texts) on select pages of documents. See package documentation % @@ -22,13 +22,20 @@ % Copyright (c) 2009-2011 Ahmed Musa (amusa22@gmail.com). % %++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++% -\@ifpackageloaded{catoptions}{}{\RequirePackage{catoptions}[2011/07/30]} +\@ifpackageloaded{catoptions}{% + \@ifpackagelater{catoptions}{2011/10/22}{}{% + \@latex@error{Loaded version of catoptions package is + not current}\@ehc + }% +}{% + \RequirePackage{catoptions}[2011/10/22]% +} \UseNormalCatcodes \StyleFilePurpose{Puts select watermarks on select pages} \StyleFileRCSInfo -$Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ +$Id: xwatermark.sty,v 1.5.2 2011/11/24 09:00:00 Ahmed Musa Exp $ \ProvidesPackage{xwatermark}[\StyleFileInfo] -\NeedsTeXFormat{LaTeX2e}[1996/12/01] +\NeedsTeXFormat{LaTeX2e}[2011/06/27] \SetStyleFileMessages[xwm@]{info}{warn}{err} \robust@def*\xwm@@err#1#2#3{\xwm@err{#1}{#2}\@gobble} \cptloadpackages{% @@ -41,31 +48,48 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ ltxkeys||2011/01/01; framed||2007/10/04 } -\AtEndOfPackage{\AtBeginDocument{% +\AtEndOfPackage{\BeforeStartOfDocument{% \ifcsndefTF{ver@hyperref.sty}{}{\usepackage{hyperref}}% }} + \newletcs\xwm@nil\relax +\new@def*\xwm@nnil{\xwm@nil} \AtBeginShipoutInit \newvariables{box}[xwm@box]{a,b}\relax -\newvariables{count}[xwm@]{cnta}\relax +\newvariables{count}[xwm@]{cnta}[\z@pt] \newvariables{if}[xwm@]{pdf,swa,swb,foregrd,wall}[false] \newvariables{write}[xwm@]{wrt}\relax \robust@def*\AtShipoutAlwaysUpperLeft#1{% \AtBeginShipout{\AtBeginShipoutUpperLeft{#1}}% } -\newletcs\stripallbr\stripallouterbraces -\newletcs\stripallbrincs\stripallouterbracesincs +\new@def*\xwm@boxframestack{} +\robust@def*\xwm@pushboxframe{% + \xdef\xwm@boxframestack{% + \fboxrule=\the\fboxrule\relax + \fboxsep=\the\fboxsep\relax + \xwm@nil{\expandcsonce\xwm@boxframestack}% + }% +} +\robust@def*\xwm@popboxframe{% + \begingroup + \def\reserved@a##1\xwm@nil{\endgroup + ##1\gdef\xwm@boxframestack + }% + \expandafter\reserved@a\xwm@boxframestack +} +\newletcs\xwm@stripallbr\stripallouterbraces +\newletcs\xwm@stripallbrincs\stripallouterbracesincs \new@def*\xwmremoveleadparsers#1#2{% \s@expandarg\ifbracedTF{#2}{% \unexpanded\expandafter{#2}% }{% \unexpanded\expandafter{\romannumeral - \expandafter\xwm@removeleadparsers#2\batchmode{#1}}% + \expandafter\xwm@removeleadparsers#2\noboundary{#1}}% }% } -\new@def*\xwm@removeleadparsers#1#2\batchmode#3{% - \ifcondTF\if\string#3\string#1\fi{% - \xwm@removeleadparsers#2\batchmode{#3}% +\new@def*\xwm@removeleadparsers#1#2\noboundary#3{% + \ifcondTF\if\string#1\string#3\fi{% + \xwm@removeleadparsers#2\noboundary{#3}% }{% 0 #1#2% }% @@ -101,27 +125,27 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \robust@def*\xwm@d@finecolorset#1(#2)#3{% \xwm@ifxcolorloaded{% \begingroup - \emptifycsset{\xwm@tempb,\xwm@tempc,\xwm@tempd,\xwm@tempe}% + \cptemptifycsset{\xwm@tempb,\xwm@tempc,\xwm@tempd,\xwm@tempe}% \def\xwm@tempa##1,##2,##3,##4,##5\@nil{% - \ifx\noboundary##4\noboundary + \ifblankTF{##4}{% \xwm@err{Incomplete color format in \string\xwmdefinecolorset}\@ehc - \else - \def\reserved@a{##1}% - \fi + }{% + \def\xwm@tempf{##1}% + }% }% \cpt@stfalse\cpt@csvnormalize[;]{#3}% \def\do##1;{% \ifnot@nil{##1}{% \xwm@tempa##1,,,,\@nil - \xifinsetTF{,\reserved@a,}{,\xwm@tempd,}{% - \edef\xwm@tempe{\cptliststack,\xwm@tempe\reserved@a}% + \xifinsetTF{,\xwm@tempf,}{,\xwm@tempd,}{% + \edef\xwm@tempe{\csliststack,\xwm@tempe\xwm@tempf}% }{% - \edef\xwm@tempd{\cptliststack,\xwm@tempd\reserved@a}% - \@ifundefinedcolor{#1\reserved@a#2}{% - \edef\xwm@tempb{\cptliststack;\xwm@tempb##1}% + \edef\xwm@tempd{\csliststack,\xwm@tempd\xwm@tempf}% + \@ifundefinedcolor{#1\xwm@tempf#2}{% + \edef\xwm@tempb{\csliststack;\xwm@tempb##1}% }{% - \edef\xwm@tempc{\cptliststack;\xwm@tempc#1\reserved@a#2}% + \edef\xwm@tempc{\csliststack;\xwm@tempc#1\xwm@tempf#2}% }% }% \do @@ -142,7 +166,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \endgroup }% } -\DefSuffixChecker\xwm@suffixcheck{*}{'} +\DefSuffixChecker\xwm@suffixcheck{*}{+}{'} \robust@def*\xwmifitemsinTF{% \cpt@swatrue\cpt@testopt\xwm@itemsin\@ne } @@ -205,7 +229,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }{% \ifblankTF{#1}{% \xwm@err{Empty page range for watermark: - ^^J'\expandcsonce\currentmark'.^^J}\@ehc + ^^J'\expandcsonce\currwatermark'.^^J}\@ehc }{% \protected@edef#3{#1}% }% @@ -215,11 +239,11 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \def#3{#1}\def#4{#2}% \ifinsetTF{-}{#2}{% \xwm@err{Too many hyphens in page range '#1-#2' - \MsgBrk of watermark:^^J'\expandcsonce\currentmark'}\@ehc + \MsgBrk of watermark:^^J'\expandcsonce\currwatermark'}\@ehc }{% \ifblankTF{#1}{% \xwm@warn{No start-page in page-range of watermark: - ^^J'\expandcsonce\currentmark'.^^JI have used the + ^^J'\expandcsonce\currwatermark'.^^JI have used the default start-page '\xwm@defaultfirstpage' instead}% \def#3{\xwm@defaultfirstpage}% @@ -229,7 +253,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% \ifblankTF{#2}{% \xwm@warn{No end-page for page-range - of watermark:^^J'\expandcsonce\currentmark' + of watermark:^^J'\expandcsonce\currwatermark' ^^JI have used the default end-page '\xwm@defaultlastpage' instead}% \def#4{\xwm@defaultlastpage}% @@ -292,14 +316,16 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \ifmacroTF{#1}{}{\cpt@notcserr{#1}}% \begingroup \cptexpandmacro{#1}\xwm@tempa - \cptexpandargonce{\endgroup\stripallbr}\xwm@tempa#1% + \cptexpandargonce{\endgroup\xwm@stripallbr}\xwm@tempa#1% \ltxkeys@trimspacesincs{#1}% \cptexpandsecond{\def\reserved@a##1}{#1}##2##3\xwm@nil{% - \ifx\noboundary##3\noboundary + \def\reserved@a{##2}% + \ifxTF\reserved@a\xwm@nnil{% \cpt@err{Invalid value '#1' for textalign}\@ehc - \else + \def#1{xwm@relax}% + }{% \def#1{##2}% - \fi + }% }% \cptexpandsecond{\reserved@a center{center},\centering{center},right{flushright}, @@ -317,17 +343,19 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \cpt@notcserr{#1}% }% } +% 'boxalign' may be in the format 't-l, t-r, b-l, b-r, c, s' +% or 'top-left, top-right, etc': \robust@def*\xwm@setboxalign#1{% \ifmacroTF{#1}{}{\cpt@notcserr{#1}}% \begingroup \toks@{}% \cptexpandarg\lowercase{\def\noexpand\reserved@a{#1}}% + % We don't want the format 't-l' mixed with 'top-left': \def\xwm@tempa{}\def\xwm@tempb{}% \def\xwm@resa##1-{% \ifstrcmpTF{##1}{\xwm@nil}{}{% - \ifinsetTF{,##1,}{,top,left,right,bottom,center,% - justified,}{% - \edef\xwm@tempa{\cptliststack,\xwm@tempa##1}% + \ifinsetTF{,##1,}{,top,left,right,bottom,center,justified,}{% + \edef\xwm@tempa{\csliststack,\xwm@tempa##1}% }{% \ifinsetTF{,##1,}{,l,r,b,t,c,s,}{% \edef\xwm@tempb{\xwm@tempb##1}% @@ -395,7 +423,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \postgroupdef#1\endgroup } \robust@def*\xwm@notenddocerr{% - \xwm@err{Wrong location of \noexpand\enddocument command}\@ehc + \xwm@err{Wrong location of end-of-document command}\@ehc } \robust@def*\AfterEndOfDocument{\grightaddtocs\xwm@afterenddoc} \new@def*\xwm@afterenddoc{} @@ -427,11 +455,11 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \begingroup \ifcsndefFT{#1@#2}{}{% \gdef\xwm@multiplelabels{% - \@ltx@warn{There were multiply-defined labels}% + \ltxmsg@warn{There were multiply-defined labels}% }% - \@ltx@warn{Label '#2' multiply defined}% + \ltxmsg@warn{Label '#2' multiply defined}% }% - \csn@gdef{#1@#2}{#3}% + \csngdef*{#1@#2}{#3}% \endgroup } \let\xwm@multiplelabels\relax @@ -457,7 +485,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \if@filesw \ifx\xwm@multiplelabels\relax \ifxwm@swa - \@ltx@warn{Label(s) may have changed. + \ltxmsg@warn{Label(s) may have changed. Rerun to get cross-references right}% \fi \else @@ -500,7 +528,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \fi \robust@def*\DeclareWatermarkParser#1{% \begingroup - \stripallbr{#1}\xwm@tempa + \xwm@stripallbr{#1}\xwm@tempa \xdef\xwm@watermarkparser{\cptoxdetok\xwm@tempa}% \endgroup } @@ -526,8 +554,8 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \xwm@swbtrue \cptgxaddtolist*\xwm@picfilesread{\usename{#2picfile}}% }% - \aftercsname\stripallbrincs{#2picfileext}% - \if@boolTF{xwm@pdf}{% + \aftercsname\xwm@stripallbrincs{#2picfileext}% + \ifboolTF{xwm@pdf}{% \xifinsetTF{,\usename{#2picfileext},}{,pdf,png,jpeg,jpg,mps,}{}{% \csn@def{#2picfileext}{pdf}% \ifxwm@swb\xwm@tempb{pdf}{pdf}\fi @@ -555,36 +583,36 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ } \new@def*\xwm@gr@phicsoptions{} \robust@def*\GraphicsOptions#1{\gdef\xwm@gr@phicsoptions{#1}} -\ltxkeys@definekeys*[XWM]<main>[xwm@]{% - disable-geometry=true/\setmnkey{disablegeometry}; +\ltxkeys@definekeys*[XWM]{main}[xwm@]{% + disable-geometry=true/\setaliaskey{disablegeometry}; printwatermark=true; - print-watermark=true/\setmnkey{printwatermark}; + print-watermark=true/\setaliaskey{printwatermark}; allownesting=true; - showpagecenter=true/\if@boolTF{xwm@showpagecenter} + showpagecenter=true/\ifboolTF{xwm@showpagecenter} {\wmk@showpagecentertrue\wlp@showpagecentertrue}{}; - show-page-center=true/\setmnkey{showpagecenter}; - showpapercenter=true/\setmnkey{showpagecenter}; + show-page-center=true/\setaliaskey{showpagecenter}; + showpapercenter=true/\setaliaskey{showpagecenter}; usedummymarks=true; - use-dummy-marks=true/\setmnkey{usedummymarks}; + use-dummy-marks=true/\setaliaskey{usedummymarks}; defaultfirstpage=1; - default-first-page=1/\setmnkey{defaultfirstpage}; + default-first-page=1/\setaliaskey{defaultfirstpage}; defaultlastpage=\xwmgetpagenumber{xwmlastpage}; default-last-page=\xwmgetpagenumber{xwmlastpage}/ - \setmnkey{defaultlastpage}; + \setaliaskey{defaultlastpage}; frontpagestyle=empty; - front-page-style=empty/\setmnkey{frontpagestyle}; + front-page-style=empty/\setaliaskey{frontpagestyle}; watermarkparser={;}/\DeclareWatermarkParser{#1}; - watermark-parser={;}/\setmnkey{watermarkparser}; + watermark-parser={;}/\setaliaskey{watermarkparser}; resetpaperorigin=true/\ifxwm@resetpaperorigin\pdfhorigin\z@pt \pdfvorigin\z@pt\hoffset\z@pt\voffset\z@pt\fi; - reset-paper-origin=true/\setmnkey{resetpaperorigin}; + reset-paper-origin=true/\setaliaskey{resetpaperorigin}; } \ltxkeys@biboolkeys+[XWM]{main}[xwm@]{draft,final}[true] {}{}{\ltxkeys@keyvalerr} -\makeoption@keys[XWM]{main} +\ltxkeys@makeoptionkeys[XWM]{main} \BeforeStartOfDocument{% \ifxwm@printwatermark - \cptreplaceoneelement\XWM@main@initial@keyvals + \cptreplaceoneelement\XWM@main@initialkeyvals {printwatermark=false}{printwatermark=true}% \fi } @@ -605,8 +633,8 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ pmark=true; graphicsoptions={}/ \ifbracedTF{##1}{% - \aftercsname{\stripallbr{##1}}{#1graphicsoptions} - }{ + \aftercsname{\xwm@stripallbr{##1}}{#1graphicsoptions} + }{% \cpt@err{Values of key 'graphicsoptions' not braced}\@ehc }; GraphicsOptions=/ @@ -616,80 +644,77 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ Maybe you meant 'graphicsoptions'}\@ehc }{}; picontoptext=true; - picture-on-top-text=true/\setmnkey{picontoptext}; - pic-on-top-text=true/\setmnkey{picontoptext}; - textontoppic=true/\setmnkey{picontoptext}[false]; - text-on-top-picture=true/\setmnkey{picontoptext}[false]; - text-on-top-pic=true/\setmnkey{picontoptext}[false]; + picture-on-top-text=true/\setaliaskey{picontoptext}; + pic-on-top-text=true/\setaliaskey{picontoptext}; + textontoppic=true/\setaliaskey{picontoptext}[false]; + text-on-top-picture=true/\setaliaskey{picontoptext}[false]; + text-on-top-pic=true/\setaliaskey{picontoptext}[false]; draftboxcolor=blue; - draft-box-color=blue/\setmnkey{draftboxcolor}; + draft-box-color=blue/\setaliaskey{draftboxcolor}; textcolor=gray!25; - text-color=gray!25/\setmnkey{textcolor}; - color=gray!25/\setmnkey{textcolor}; + text-color=gray!25/\setaliaskey{textcolor}; + color=gray!25/\setaliaskey{textcolor}; textangle=0; - text-angle=0/\setmnkey{textangle}; - angle=0/\setmnkey{textangle}; + text-angle=0/\setaliaskey{textangle}; + angle=0/\setaliaskey{textangle}; textscale=1; - text-scale=1/\setmnkey{textscale}; - scale=1/\setmnkey{textscale}; + text-scale=1/\setaliaskey{textscale}; + scale=1/\setaliaskey{textscale}; textalign=center/\aftercsname\xwm@settextalign{#1textalign}; - text-align=center/\setmnkey{textalign}; - align=center/\setmnkey{textalign}; - showpagecenter=true/\ifboolTF{#1showpagecenter}{% + text-align=center/\setaliaskey{textalign}; + align=center/\setaliaskey{textalign}; + showpagecenter=true/\ifdefboolTF{#1showpagecenter}{% \usename{#1showpagecentertrue}}{\usename{#1showpagecenterfalse}}; - show-page-center=true/\setmnkey{showpagecenter}; - showpapercenter=true/\setmnkey{showpagecenter}; + show-page-center=true/\setaliaskey{showpagecenter}; + showpapercenter=true/\setaliaskey{showpagecenter}; fontsize=1cm/\aftercsname{\xwm@defaultunits{##1}}{#1fontsize}; - font-size=1cm/\setmnkey{fontsize}; fontseries=b; - font-series=b/\setmnkey{fontseries}; fontfamily=bch; - font-family=bch/\setmnkey{fontfamily}; - \needvalue{picfile}=/\aftercsname\stripallbrincs{#1picfile} + \needvalue{picfile}=/\aftercsname\xwm@stripallbrincs{#1picfile} \ifcsnnullTF{#1picfile}{\usename{#1pmarkfalse}}{\usename{#1pmarktrue} \usename{#1minmarktrue}}; - \needvalue{picture-file}=/\setmnkey{picfile}; + \needvalue{picture-file}=/\setaliaskey{picfile}; picfileext=\xwm@defaultfileext/\xwm@fileextfn{##1}{#1}; - pic-file-ext=\xwm@defaultfileext/\setmnkey{picfileext}; + pic-file-ext=\xwm@defaultfileext/\setaliaskey{picfileext}; picangle=0; - picture-angle=0/\setmnkey{picangle}; + picture-angle=0/\setaliaskey{picangle}; picscale=1; - picture-scale=1/\setmnkey{picscale}; + picture-scale=1/\setaliaskey{picscale}; picbb=0 0 100 100; - picture-bb=0 0 100 100/\setmnkey{picbb}; - pic-bounding-box=0 0 100 100/\setmnkey{picbb}; + picture-bb=0 0 100 100/\setaliaskey{picbb}; + pic-bounding-box=0 0 100 100/\setaliaskey{picbb}; picxpos=\z@pt; - picture-xpos=0/\setmnkey{picxpos}; - picture-x-position=0/\setmnkey{picxpos}; + picture-xpos=0/\setaliaskey{picxpos}; + picture-x-position=0/\setaliaskey{picxpos}; picypos=\z@pt; - picture-ypos=0/\setmnkey{picypos}; - picture-y-position=0/\setmnkey{picypos}; - mark=DRAFT/\setmnkey{textmark}; + picture-ypos=0/\setaliaskey{picypos}; + picture-y-position=0/\setaliaskey{picypos}; + mark=DRAFT/\setaliaskey{textmark}; textmark=DRAFT/ - \aftercsname\stripallbrincs{#1textmark} + \aftercsname\xwm@stripallbrincs{#1textmark} \ifcsnnullTF{#1textmark}{% \usename{#1tmarkfalse} - }{ + }{% \usename{#1tmarktrue} - } - \letcstocsn\currentmark{#1textmark}; - text-mark=DRAFT/\setmnkey{textmark}; - firstpage=true/\if@boolFT{#1firstpage}{}{\usename{#1minmarktrue}}; - first-page=true/\setmnkey{firstpage}; - allpages=true/\if@boolFT{#1allpages}{}{\usename{#1minmarktrue}}; - oddpages=true/\if@boolFT{#1oddpages}{}{\usename{#1minmarktrue}}; - evenpages=true/\if@boolFT{#1evenpages}{}{\usename{#1minmarktrue}}; + }% + \letcstocsn\currwatermark{#1textmark}; + text-mark=DRAFT/\setaliaskey{textmark}; + firstpage=true/\ifdefboolFT{#1firstpage}{}{\usename{#1minmarktrue}}; + first-page=true/\setaliaskey{firstpage}; + allpages=true/\ifdefboolFT{#1allpages}{}{\usename{#1minmarktrue}}; + oddpages=true/\ifdefboolFT{#1oddpages}{}{\usename{#1minmarktrue}}; + evenpages=true/\ifdefboolFT{#1evenpages}{}{\usename{#1minmarktrue}}; page=1/ \ifinsetTF{-}{##1}{% \xwm@err{I found '-' in '##1' for key 'page', \MsgBrk but 'page' doesn't take page-range}\@ehc - }{ + }{% \ifnum\numexpr##1=\z@pt\else\usename{#1onepageonlytrue} \usename{#1minmarktrue}\fi }; pages=1-1/ - \aftercsname\stripallbrincs{#1pages} - \aftercsname\cptstrcmp{#1pages}{0-0}{}{% + \aftercsname\xwm@stripallbrincs{#1pages} + \aftercsname\xifstrcmpTF{#1pages}{0-0}{}{% \usename{#1prangetrue}\usename{#1minmarktrue} } \cptexpandsecond\xwm@hyphenpagerange{\cptmakecs{#1pages} @@ -700,7 +725,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }; boxalign=/\ifblankTF{##1}{} {\aftercsname\xwm@setboxalign{#1boxalign}}; - box-align=/\setmnkey{boxalign}; + box-align=/\setaliaskey{boxalign}; } \robust@def*\xwm@adddefkeys{% \begingroup @@ -714,167 +739,166 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ {\csname#2@commonkeys\endcsname{#3}#1#5}% } \xwm@adddefkeys[;]{xwm-1}{wmk@} - {\ltxkeys@definekeys*[XWM]<watermark>[wmk@]}{% + {\ltxkeys@definekeys*[XWM]{watermark}[wmk@]}{% textwidth=\paperheight; - text-width=\paperheight/\setmnkey{textwidth}; - width=\paperheight/\setmnkey{textwidth}; + text-width=\paperheight/\setaliaskey{textwidth}; + width=\paperheight/\setaliaskey{textwidth}; textheight=\paperwidth; - text-height=\paperwidth/\setmnkey{textheight}; - height=\paperwidth/\setmnkey{textheight}; + text-height=\paperwidth/\setaliaskey{textheight}; + height=\paperwidth/\setaliaskey{textheight}; \needvalue{picheight}=; - pic-height=/\setmnkey{picheight}; - picture-height=/\setmnkey{picheight}; + pic-height=/\setaliaskey{picheight}; + picture-height=/\setaliaskey{picheight}; \needvalue{picwidth}=; - picture-width=/\setmnkey{picwidth}; + picture-width=/\setaliaskey{picwidth}; textxpos=0; - text-xpos=0/\setmnkey{textxpos}; - text-x-position=0/\setmnkey{textxpos}; - xpos=0/\setmnkey{textxpos}; + text-xpos=0/\setaliaskey{textxpos}; + text-x-position=0/\setaliaskey{textxpos}; + xpos=0/\setaliaskey{textxpos}; textypos=0; - text-ypos=0/\setmnkey{textypos}; - text-y-position=0/\setmnkey{textypos}; - ypos=0/\setmnkey{textypos}; + text-ypos=0/\setaliaskey{textypos}; + text-y-position=0/\setaliaskey{textypos}; + ypos=0/\setaliaskey{textypos}; coordunit=mm/\xwm@checkcoordunit{#1}; - coord-unit=mm/\setmnkey{coordunit}; - position-unit=mm/\setmnkey{coordunit}; + coord-unit=mm/\setaliaskey{coordunit}; + position-unit=mm/\setaliaskey{coordunit}; } -\makeoption@keys*[XWM]{watermark} +\ltxkeys@makeoptionkeys*[XWM]{watermark} \xwm@adddefkeys[;]{xwm-1}{wlp@} - {\ltxkeys@definekeys*[XWM]<wallpaper>[wlp@]}{% + {\ltxkeys@definekeys*[XWM]{wallpaper}[wlp@]}{% textheight=\wlp@tileysize; - text-height=\wlp@tileysize/\setmnkey{textheight}; + text-height=\wlp@tileysize/\setaliaskey{textheight}; textwidth=\wlp@tilexsize; - text-width=\wlp@tilexsize/\setmnkey{textwidth}; + text-width=\wlp@tilexsize/\setaliaskey{textwidth}; picheight=\wlp@tileysize; - picture-height=\wlp@tileysize/\setmnkey{picheight}; + picture-height=\wlp@tileysize/\setaliaskey{picheight}; picwidth=\wlp@tilexsize; - picture-width=\wlp@tilexsize/\setmnkey{picwidth}; + picture-width=\wlp@tilexsize/\setaliaskey{picwidth}; tilexsize=.25\paperwidth; - tile-xsize=.25/\setmnkey{tilexsize}; + tile-xsize=.25/\setaliaskey{tilexsize}; tileysize=.25\paperheight; - tile-ysize=.25/\setmnkey{tileysize}; + tile-ysize=.25/\setaliaskey{tileysize}; wpxoffset=\z@pt; - wallpaper-xoffset=\z@pt/\setmnkey{wpxoffset}; + wallpaper-xoffset=\z@pt/\setaliaskey{wpxoffset}; wpyoffset=\z@pt; - wallpaper-yoffset=\z@pt/\setmnkey{wpyoffset}; + wallpaper-yoffset=\z@pt/\setaliaskey{wpyoffset}; tilexoffset=\z@pt; - tile-xoffset=\z@pt/\setmnkey{tilexoffset}; + tile-xoffset=\z@pt/\setaliaskey{tilexoffset}; tileyoffset=\z@pt; - tile-yoffset=\z@pt/\setmnkey{tileyoffset}; + tile-yoffset=\z@pt/\setaliaskey{tileyoffset}; tileno=4; - tilenumber=4/\setmnkey{tileno}; - tile-number=4/\setmnkey{tileno}; - number-of-tiles=4/\setmnkey{tileno}; + tilenumber=4/\setaliaskey{tileno}; + tile-number=4/\setaliaskey{tileno}; + number-of-tiles=4/\setaliaskey{tileno}; squaretiles=true; - square-tiles=true/\setmnkey{squaretiles}; + square-tiles=true/\setaliaskey{squaretiles}; } -\makeoption@keys*[XWM]{wallpaper} -\ltxkeys@definekeys*[XWM]<fancypagenos>[pgn@]{% +\ltxkeys@makeoptionkeys*[XWM]{wallpaper} +\ltxkeys@definekeys*[XWM]{fancypagenos}[pgn@]{% textalign=center/\xwm@settextalign\pgn@textalign; - text-align=center/\setmnkey{textalign}; - align=center/\setmnkey{textalign}; + text-align=center/\setaliaskey{textalign}; + align=center/\setaliaskey{textalign}; boxalign=/\ifblankTF{#1}{}{\xwm@setboxalign\pgn@boxalign}; - box-align=center/\setmnkey{boxalign}; + box-align=center/\setaliaskey{boxalign}; textangle=0; - text-angle=0/\setmnkey{textangle}; - angle=0/\setmnkey{textangle}; + text-angle=0/\setaliaskey{textangle}; + angle=0/\setaliaskey{textangle}; picangle=0; - picture-angle=0/\setmnkey{picangle}; + picture-angle=0/\setaliaskey{picangle}; textwidth=.25\textwidth; - text-width=.25/\setmnkey{textwidth}; - width=.25\hsize/\setmnkey{textwidth}; + text-width=.25/\setaliaskey{textwidth}; + width=.25\hsize/\setaliaskey{textwidth}; textheight=.25\textheight; - text-height=.25/\setmnkey{textheight}; - height=.25\vsize/\setmnkey{textheight}; + text-height=.25/\setaliaskey{textheight}; + height=.25\vsize/\setaliaskey{textheight}; textxpos=\z@pt; - x-position=0/\setmnkey{textxpos}; - xpos=\z@pt/\setmnkey{textxpos}; + x-position=0/\setaliaskey{textxpos}; + xposition=0/\setaliaskey{textxpos}; + xpos=\z@pt/\setaliaskey{textxpos}; textypos=\z@pt; - y-position=0/\setmnkey{textypos}; - ypos=\z@pt/\setmnkey{textypos}; + y-position=0/\setaliaskey{textypos}; + yposition=0/\setaliaskey{textypos}; + ypos=\z@pt/\setaliaskey{textypos}; textcolor=blue; - text-color=blue/\setmnkey{textcolor}; - color=blue/\setmnkey{textcolor}; + text-color=blue/\setaliaskey{textcolor}; + color=blue/\setaliaskey{textcolor}; textscale=2.5; - text-scale=2.5/\setmnkey{textscale}; - scale=2.5/\setmnkey{textscale}; + text-scale=2.5/\setaliaskey{textscale}; + scale=2.5/\setaliaskey{textscale}; coordunit=mm/\xwm@checkcoordunit{#1}; - coord-unit=mm/\setmnkey{coordunit}; - position-unit=mm/\setmnkey{coordunit}; + coord-unit=mm/\setaliaskey{coordunit}; + position-unit=mm/\setaliaskey{coordunit}; fontfamily=bch; - font-family=bch/\setmnkey{fontfamily}; fontseries=m; - font-series=m/\setmnkey{fontseries}; format=\fbox; + framerule=.4\p@; + framesep=3\p@; fontsize=12\p@/\xwm@defaultunits{#1}\pgn@fontsize; - font-size=12/\setmnkey{fontsize}; cfoot; - center-footer=/\setmnkey{cfoot}; - footer-center=/\setmnkey{cfoot}; + center-footer=/\setaliaskey{cfoot}; + footer-center=/\setaliaskey{cfoot}; rfoot; - right-footer=/\setmnkey{rfoot}; - footer-right=/\setmnkey{rfoot}; + right-footer=/\setaliaskey{rfoot}; + footer-right=/\setaliaskey{rfoot}; lfoot; - left-footer=/\setmnkey{lfoot}; - footer-left=/\setmnkey{lfoot}; + left-footer=/\setaliaskey{lfoot}; + footer-left=/\setaliaskey{lfoot}; chead; - center-header=/\setmnkey{chead}; - header-center=/\setmnkey{chead}; + center-header=/\setaliaskey{chead}; + header-center=/\setaliaskey{chead}; rhead; - right-header=/\setmnkey{rhead}; - header-right=/\setmnkey{rhead}; + right-header=/\setaliaskey{rhead}; + header-right=/\setaliaskey{rhead}; lhead; - left-header=/\setmnkey{lhead}; - header-left=/\setmnkey{lhead}; - headruleH=.4\p@; - headrule-height=.4\p@/\setmnkey{headruleH}; - headruleD=.4\p@; - head-rule-depth=.4\p@/\setmnkey{headruleD}; - headruleW=\headwidth; - headrule-width=\headwidth/\setmnkey{headruleW}; - headruleS=2\p@; - head-rule-sep=2\p@/\setmnkey{headruleS}; - head-rule-separation=2\p@/\setmnkey{headruleS}; - headruleC=blue; - headrule-color=blue/\setmnkey{headruleC}; - footruleH=.4\p@; - foot-rule-height=.4\p@/\setmnkey{footruleH}; - footruleD=.4\p@; - footrule-depth=.4\p@/\setmnkey{footruleD}; - footruleW=\headwidth; - footrule-width=\headwidth/\setmnkey{footruleW}; - footruleS=2\p@; - footrule-sep=2\p@/\setmnkey{footruleS}; - footrule-separation=2\p@/\setmnkey{footruleS}; - footruleC=cyan; - footrule-color=blue/\setmnkey{footruleC}; - hfoffsetL=.5; - hfoffset-left=.5/\setmnkey{hfoffsetL}; - hfoffsetR=.5; - hfoffset-right=.5/\setmnkey{hfoffsetR}; + left-header=/\setaliaskey{lhead}; + header-left=/\setaliaskey{lhead}; + headruleheight=.4\p@; + headrule-height=.4\p@/\setaliaskey{headruleheight}; + headruledepth=.4\p@; + headrule-depth=.4\p@/\setaliaskey{headruledepth}; + headrulewidth=\headwidth; + headrule-width=\headwidth/\setaliaskey{headrulewidth}; + headrulesep=2\p@; + headrule-sep=2\p@/\setaliaskey{headrulesep}; + headrule-separation=2\p@/\setaliaskey{headrulesep}; + headrulecolor=blue; + headrule-color=blue/\setaliaskey{headrulecolor}; + footruleheight=.4\p@; + footrule-height=.4\p@/\setaliaskey{footruleheight}; + footruledepth=.4\p@; + footrule-depth=.4\p@/\setaliaskey{footruledepth}; + footrulewidth=\headwidth; + footrule-width=\headwidth/\setaliaskey{footrulewidth}; + footrulesep=2\p@; + footrule-sep=2\p@/\setaliaskey{footrulesep}; + footrule-separation=2\p@/\setaliaskey{footrulesep}; + footrulecolor=cyan; + footrule-color=blue/\setaliaskey{footrulecolor}; + hfoffsetleft=.5; + hfoffset-left=.5/\setaliaskey{hfoffsetleft}; + hfoffsetright=.5; + hfoffset-right=.5/\setaliaskey{hfoffsetright}; style=\thepage; - printstyle=\thepage/\setmnkey{style}; - print-style=\thepage/\setmnkey{style}; + printstyle=\thepage/\setaliaskey{style}; sendtoback=true; - send-to-back=true/\setmnkey{sendtoback}; } -\makeoption@keys*[XWM]{fancypagenos} -\ltxkeys@definekeys*[XWM]<fancypagenos>[pgn@]{% +\ltxkeys@makeoptionkeys*[XWM]{fancypagenos} +\ltxkeys@definekeys*[XWM]{fancypagenos}[pgn@]{% showpagenos=true/\ifpgn@showpagenos\global\pgn@showpagenostrue\fi; - show-page-numbers=true/\setmnkey{showpagenos}; - show-pagenos=true/\setmnkey{showpagenos}; - show-pageno=true/\setmnkey{showpagenos}; + showpagenumbers=true/\setaliaskey{showpagenos}; + show-page-numbers=true/\setaliaskey{showpagenos}; + show-pagenos=true/\setaliaskey{showpagenos}; + show-pageno=true/\setaliaskey{showpagenos}; showonpageone=true; - show-on-page-1=true/\setmnkey{showonpageone}; - show-on-page-one=true/\setmnkey{showonpageone}; + show-on-page-one=true/\setaliaskey{showonpageone}; showheadrule=true; - show-headrule=true/\setmnkey{showheadrule}; + show-headrule=true/\setaliaskey{showheadrule}; showfootrule=true; - show-footrule=true/\setmnkey{showfootrule}; + show-footrule=true/\setaliaskey{showfootrule}; } \BeforeStartOfDocument{% \ifpgn@showpagenos - \cptreplaceoneelement\XWM@fancypagenos@initial@keyvals + \cptreplaceoneelement\XWM@fancypagenos@initialkeyvals {showpagenos=false}{showpagenos=true}% \fi } @@ -951,7 +975,8 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% } \robust@def*\xnewwatermark{% - \cpt@teststpm{\cpt@testopt\cpt@xnewwatermark{}}% + \xwm@suffixcheck + {\cpt@teststpm{\cpt@testopt\cpt@xnewwatermark{}}}% } \robust@def*\xwm@ltxcmds{% \centering,\flushright,\flushleft,\raggedright,% @@ -961,7 +986,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ } \robust@def*\xwm@relaxltxcmds{% \def\ltxkeys@do##1{\let##1=\relax}% - \ltxkeys@csvparse*\xwm@ltxcmds + \ltxkeys@parse*1\xwm@ltxcmds } \robust@def*\cpt@xnewwatermark[#1]#2{% \begingroup @@ -1009,7 +1034,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% } \robust@def\xwm@n@wwatermark[#1]#2{% - \if@boolTF{cpt@pm}{}{\xwm@n@ww@termark{#1}{#2}}% + \ifboolTF{cpt@pm}{}{\xwm@n@ww@termark{#1}{#2}}% } \robust@def\xwm@n@ww@termark#1#2{% \xwm@decidexp{#1}% @@ -1033,7 +1058,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ while option 'allownesting' is false}\@ehc \fi \fi - \if@boolTF{xwm@wall}{}{% + \ifboolTF{xwm@wall}{}{% \xwmifitemsinFT[1]{% squaretiles,square-tiles,tilexsize,tile-xsize,% tileysize,tile-ysize,wpxoffset,wallpaper-xoffset,% @@ -1045,7 +1070,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \MsgBrk non-wallpaper watermarks}\@ehc }% }% - \if@boolTF{xwm@allownesting}{}{% + \ifboolTF{xwm@allownesting}{}{% \cpt@choicefdfalse \def\csv@do##1{% \xifinsetFT{,\detokenize{##1}}{,\xwm@detok{#2}}{}{% @@ -1091,7 +1116,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% \expandafter\edef\reserved@a{% \expandafter\ifdefTF\reserved@a{\expandcstwice\reserved@a}{}% - \expandcsonce\currentmark + \expandcsonce\currwatermark }% \undefcs\xwm@xp\undefcs\xwm@detok } @@ -1118,10 +1143,10 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \if@tempswa textmark={\expandcsonce\xwm@currmark}\fi }% \ifcsemptyTF\xwm@tempb{}{\xwm@normdoublecomma\xwm@tempb}% - \edef\currentmark{% - \expandcsonce\currentmark{\number#1}{\expandcsonce\xwm@tempb}% + \edef\currwatermark{% + \expandcsonce\currwatermark{\number#1}{\expandcsonce\xwm@tempb}% }% - \postgroupdef\currentmark\endgroup + \postgroupdef\currwatermark\endgroup } \robust@def*\xwm@getpagespec#1{% \ifinsetTF{,#1,}{,page,pages,pagex,}{% @@ -1159,19 +1184,18 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \robust@def*\xwm@ifpagespec#1{% \cptexpandtwoargs\cpt@in {,\detokenize{#1}}{,\cptoxdetok\xwm@currattrib}% - \if@boolTF{cpt@in}\@iden\@gobble + \ifboolTF{cpt@in}\@iden\@gobble } \robust@def*\xwm@normdoublecomma#1{% \def\xwm@tempa##1,,##2\xwm@@nil{% - \ifblankTF{##2} - {\edef#1{\unexpanded{##1}}} + \ifblankTF{##2}{\edef#1{\unexpanded{##1}}} {\xwm@tempa##1,##2\xwm@@nil}% }% \expandafter\xwm@tempa#1,,\xwm@@nil } \robust@def*\xwm@makecurrmark{% \edef\xwm@rsvda{\lastdocpage}% - \def\currentmark{}% + \def\currwatermark{}% \xwm@swafalse \xwm@ifpagespec{page=}{% \xwm@twopagespecerr @@ -1185,15 +1209,15 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \xwm@cnta\numexpr\xwm@pagestart\relax \cptloop \xwm@addcurrmark\xwm@cnta - \advance\xwm@cnta by1 + \advance\xwm@cnta by1 % \ifnum\xwm@cnta<\numexpr\xwm@pageend+1\relax - \repeat + \cptrepeat }% \xwm@ifpagespec{pagex=}{% \xwm@twopagespecerr \xwm@getpagespec{pagex}% \def\ltxkeys@do##1{\xwm@addcurrmark{##1}}% - \ltxkeys@csvparse*\xwm@currpage + \ltxkeys@parse*1\xwm@currpage }% \xwm@ifpagespec{firstpage}{% \xwm@twopagespecerr @@ -1215,19 +1239,19 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \fi \advance\xwm@cnta by1 \ifnum\xwm@cnta<\numexpr\xwm@rsvda+1\relax - \repeat + \cptrepeat }% \xwm@ifpagespec{oddpages}{% \xwm@twopagespecerr \xwm@getpagespec{oddpages}% - \xwm@cnta\z@ + \xwm@cnta\z@pt \cptloop \ifodd\xwm@cnta \xwm@addcurrmark\xwm@cnta \fi - \advance\xwm@cnta by1 + \advance\xwm@cnta by1 % \ifnum\xwm@cnta<\numexpr\xwm@rsvda+1\relax - \repeat + \cptrepeat }% \ifxwm@swa\else \xwm@err{No page specifier in watermark attributes: @@ -1240,7 +1264,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ {'\string\newwatermark' in front of \string\dummywatermark}% {First comment out or remove '\string\newwatermark'.}% }{% - \if@boolTF{xwm@usedummymarks}\newwatermark\xwm@dummywatermark + \ifboolTF{xwm@usedummymarks}\newwatermark\xwm@dummywatermark #1% }% } @@ -1250,7 +1274,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ {'\string\newwallpaper' in front of \string\dummywallpaper}% {First comment out or remove '\string\newwallpaper'.}% }{% - \if@boolTF{xwm@usedummymarks}\newwallpaper\xwm@dummywatermark + \ifboolTF{xwm@usedummymarks}\newwallpaper\xwm@dummywatermark #1% }% } @@ -1276,7 +1300,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \catcode`\\\z@pt \catcode`\{\@ne \catcode`\}\tw@ - \if@boolTF{xwm@printwatermark}{% + \ifboolTF{xwm@printwatermark}{% \let\xwm@watermarklist\xwm@backwmklist \let\xwm@wallpaperlist\xwm@backwalllist \AtBeginShipoutUpperLeft{% @@ -1357,10 +1381,10 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ } \robust@def*\xwm@textpicmark@a{% \ifcsnullTF\xwm@watermarklist{% - \if@boolTF{xwm@foregrd}{}{% - \if@boolFT{xwm@printwatermark}{}{% - \if@boolTF{xwm@draft}{% - \if@boolTF{wmk@showpagecenter}{}{% + \ifboolTF{xwm@foregrd}{}{% + \ifdefboolFT{xwm@printwatermark}{}{% + \ifboolTF{xwm@draft}{% + \ifboolTF{wmk@showpagecenter}{}{% \ifnumcmpFT\c@page=\@ne{}{% \cptexpandargonce{\ltxkeys@setkeys[XWM]{watermark}}% \xwm@perpagewmkstate @@ -1384,7 +1408,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }{% \xwm@processmarks\xwm@watermarklist{% \xwm@setwatermarkkeys{watermark}{wmk}{##2}% - \if@boolFT{wmk@minmark}{}\xwm@textpicmark@c + \ifdefboolFT{wmk@minmark}{}\xwm@textpicmark@c }% }% } @@ -1392,7 +1416,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \ifcsnullTF\xwm@wallpaperlist{}{% \xwm@processmarks\xwm@wallpaperlist{% \xwm@setwatermarkkeys{wallpaper}{wall}{##2}% - \if@boolFT{wlp@minmark}{}\xwm@wallpaper@c + \ifdefboolFT{wlp@minmark}{}\xwm@wallpaper@c }% }% } @@ -1403,7 +1427,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }{% [\ltxkeys@keynames]{\expandcsnonce{xwm@perpage#2state}}% }% - \edef\currentmark{\unexpanded{#3}}% + \edef\currwatermark{\unexpanded{#3}}% \ifblankTF{#3}{}{\ltxkeys@setkeys[XWM]{#1}{#3}}% } \robust@def*\xwm@processmarks#1#2{% @@ -1444,7 +1468,6 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \nxp\parbox[c][\mcs{#1@textheight}]% [c]\mcs{#1@textwidth}{% \nxp\color{\mcs{#1@textcolor}}% - % First convert \fontsize to scaled points: \cptdimdef\mcs{#1@fontsize@a}{\mcs{#1@fontsize}}% \cptdimdef\mcs{#1@fontsize@a}% {1.5\p@*\mcs{#1@fontsize@a}}% @@ -1452,9 +1475,10 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \nxp\fontseries\mcs{#1@fontseries}% \nxp\fontsize\mcs{#1@fontsize}\mcs{#1@fontsize@a}% \nxp\selectfont - \noexpand\begin{\xwm@curralign}% + \quitvmode + \nxp\begin{\xwm@curralign}% \mcs{#1@textmark}% - \noexpand\end{\xwm@curralign}% + \nxp\end{\xwm@curralign}% }% }% }% @@ -1494,7 +1518,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \xwm@put(\wmk@picxpos@a,\wmk@picypos@a){% \rotatebox[origin=c]\wmk@picangle{% \cptexpandsecond{\makebox(0,0)}{[\wmk@boxalign]{% - \if@boolTF{xwm@draft} + \ifboolTF{xwm@draft} {\xwm@draftbox{wmk}}{\copy\xwm@boxa}% }% }% @@ -1521,14 +1545,14 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \newcommand*\xwm@textpicmark@c{% \xwm@getposition\wmk@textxpos\wmk@textypos\wmk@coordunit \xwm@getposition\wmk@picxpos\wmk@picypos\wmk@coordunit - \if@boolTF{wmk@picontoptext}{% - \if@boolFT{wmk@tmark}{}{\xwm@textbox{wmk}}% - \if@boolFT{wmk@pmark}{}\xwm@picmark + \ifboolTF{wmk@picontoptext}{% + \ifdefboolFT{wmk@tmark}{}{\xwm@textbox{wmk}}% + \ifdefboolFT{wmk@pmark}{}\xwm@picmark }{% - \if@boolFT{wmk@pmark}{}\xwm@picmark - \if@boolFT{wmk@tmark}{}{\xwm@textbox{wmk}}% + \ifdefboolFT{wmk@pmark}{}\xwm@picmark + \ifdefboolFT{wmk@tmark}{}{\xwm@textbox{wmk}}% }% - \if@boolFT{wmk@showpagecenter}{}\xwm@papercenter + \ifdefboolFT{wmk@showpagecenter}{}\xwm@papercenter } \AtBeginDocument{% \ifdefTF\Ginput@path{% @@ -1554,11 +1578,11 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \robust@def*\xwm@w@term@rkpaths#1(#2)#3{% \cpt@useemptytrue \def\xwm@tempa{#3}% - \if@boolTF{cpt@st}{% - \ifbracedTF{#3}{\stripallbr{#3}\xwm@tempa}{}% + \ifboolTF{cpt@st}{% + \ifbracedTF{#3}{\xwm@stripallbr{#3}\xwm@tempa}{}% \def\csv@do##1{% \ifbracedTF{##1}{% - \stripallbr{##1}\xwm@tempa + \xwm@stripallbr{##1}\xwm@tempa }{% \def\xwm@tempa{##1}% }% @@ -1584,7 +1608,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \newletcs\watermarkpath=\watermarkpaths \new@def*\xwmifeofTF#1{\ifcondTF\ifeof#1\fi} \robust@def*\pdfiffileexistsTF#1{% - \cptifcondFT\if\pdffilesize{#1}\relax\fi + \ifcondFT\if\pdffilesize{#1}\relax\fi } \robust@def*\xwmiffileexistsTF#1{% \openin\@inputcheck#1\@space @@ -1607,7 +1631,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \let\xwm@pathfound\@empty \cpt@choicefdfalse \def\tsv@do##1{% - \stripallbr{##1}\xwm@tempa + \xwm@stripallbr{##1}\xwm@tempa \openin\@inputcheck\xwm@tempa#1\@space \xwmifeofTF\@inputcheck{}{% \let\xwm@pathfound\xwm@tempa @@ -1617,7 +1641,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% }% \tsv@@loop*\xwm@inputpath - \if@boolTF{cpt@choicefd}\@firstoftwo\@secondoftwo + \ifboolTF{cpt@choicefd}\@firstoftwo\@secondoftwo } \robust@def*\xwm@nofileerr#1#2{% \message{% @@ -1646,7 +1670,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \robust@def*\xwm@findpicfile#1#2{% \let\xwm@filefound\@empty \edef\xwm@filegiven{#1.#2}% - \if@boolTF{xwm@pdf}{% + \ifboolTF{xwm@pdf}{% \xwm@f@ndpicfile{#1}{#2}{pdf,png,jpeg,mps}% }{% \xwm@f@ndpicfile{#1}{#2}{eps,ps}% @@ -1666,8 +1690,8 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% \csv@@loop[,]{#3}% }% - \if@boolTF{xwm@swb}{}{% - \if@boolTF{xwm@swa}{% + \ifboolTF{xwm@swb}{}{% + \ifboolTF{xwm@swa}{% \xwm@warn{File '\xwm@filegiven' doesn't exist \MsgBrk on given path(s) '\xwm@inputpath', \MsgBrk but I have found \xwm@filefound'}% @@ -1678,23 +1702,23 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% } \robust@def*\xwm@wallpaper@c{% - \if@boolTF{wlp@picontoptext}{% + \ifboolTF{wlp@picontoptext}{% \xwm@textwallpaper \xwm@picwallpaper }{% \xwm@picwallpaper \xwm@textwallpaper }% - \if@boolFT{wlp@showpagecenter}{}\xwm@papercenter + \ifdefboolFT{wlp@showpagecenter}{}\xwm@papercenter } \robust@def*\xwm@textwallpaper{% - \if@boolFT{wlp@tmark}{}{% - \if@boolTF{wlp@squaretiles}\xwm@sqtexttiles\xwm@texttiles + \ifdefboolFT{wlp@tmark}{}{% + \ifboolTF{wlp@squaretiles}\xwm@sqtexttiles\xwm@texttiles }% } \robust@def*\xwm@picwallpaper{% - \if@boolFT{wlp@pmark}{}{% - \if@boolTF{wlp@squaretiles}% + \ifdefboolFT{wlp@pmark}{}{% + \ifboolTF{wlp@squaretiles}% \xwm@sqpictiles\xwm@pictiles }% } @@ -1709,7 +1733,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \xwm@put(\tilex,\xwm@tempa){\rotatebox[origin=c] \xwm@currangle{% \cptexpandsecond{\makebox(0,0)}{[\wlp@boxalign]}{% - \if@boolTF{xwm@draft} + \ifboolTF{xwm@draft} {\xwm@draftbox{wlp}}{\copy\xwm@boxa}% }% }}% @@ -1767,6 +1791,20 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \let\xwm@currangle\wlp@picangle \xwm@dotiling } +\robust@def*\xwmsetbox#1#2#3#4{% + \begingroup + \setbox1\hbox{\color@begingroup#4\color@endgroup}% + \setbox\@tempboxa\hbox to#1\textwidth{% + \setbox0\vtop{% + \ignorespaces#4\vskip\dimexpr#3\textheight/2\relax + }% + \cptdimdef\x{(#1\textwidth-\wd1)/2\relax}% + \hskip\x\box0\hskip-\x + }% + \ht\@tempboxa=\dimexpr#2\textheight/2\relax + \noindent\box\@tempboxa + \endgroup +} \robust@def*\xwmstrut#1#2{% \relax\unskip \ifhmode\nobreak\fi @@ -1775,45 +1813,52 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \ifmmode\copy\@tempboxa\else\unhcopy\@tempboxa\fi \endgroup } -\ltxkeys@definekeys*[XWM]<boxedminipage>[xwmbmp@]{% - width=\paperwidth; +\ltxkeys@definekeys*[XWM]{boxedminipage}[xwmbmp@]{% + width=\textwidth; textcolor=black; framecolor=black; framesep=3\p@; framerule=0.4\p@; height=\z@pt; depth=\z@pt; - width=\paperwidth; - textalign=center/\xwm@settextalign\xwmbmp@textalign; - text-align=center/\setmnkey{textalign}; + textalign=justified/\xwm@settextalign\xwmbmp@textalign; + innerpos=c; } \robust@def*\xwmboxedminipage{\cpt@testopt\xwm@boxedminipage{}} \begingroup \catcode`\|=\catcode`\% -\robust@gdef\xwm@boxedminipage[#1]#2{% +\robust@gdef*\xwm@boxedminipage[#1]{% \ltxkeys@launchkeys[XWM]{boxedminipage}{#1}% - \stripallbrincs\xwmbmp@width - \stripallbrincs\xwmbmp@textcolor + \xwm@stripallbrincs\xwmbmp@width + \xwm@stripallbrincs\xwmbmp@textcolor \leavevmode\@pboxswfalse \begingroup \color{\xwmbmp@framecolor}% - \xifstrcmpTF\xwmbmp@innerpos{b}\vbox{% - \xifstrcmpTF\xwmbmp@innerpos{t}\vtop{% - \if@boolTF{mmode}\vcenter{% + \xifstrcmpTF\xwmbmp@innerpos{b}{% + \vbox + }{% + \xifstrcmpTF\xwmbmp@innerpos{t}{% + \vtop + }{% + \ifboolTF{mmode}{% + \vcenter + }{% \@pboxswtrue $\vcenter |$ }% }% }% - \bgroup - \hsize\xwmbmp@width + {\ifnum`}=0\fi + \hsize\xwmbmp@width\relax \hrule\@height\xwmbmp@framerule - \hbox\bgroup - \vrule\@width\xwmbmp@framerule\hskip\xwmbmp@framesep - \vbox\bgroup - \vskip\xwmbmp@framesep - \cptdimdef\xwm@dima{\hsize-2\xwmbmp@framerule-2\xwmbmp@framesep}% - \hsize\xwm@dima - \textwidth\xwm@dima\columnwidth\xwm@dima + \hbox{\ifnum`}=0\fi + \vrule\@width\xwmbmp@framerule + \kern\xwmbmp@framesep\relax + \vbox{\ifnum`}=0\fi + \vskip\xwmbmp@framesep\relax + \cptdimdef\reserved@a{\hsize-(\xwmbmp@framerule+\xwmbmp@framesep)*2}% + \hsize\reserved@a\relax + \textwidth\reserved@a\relax + \columnwidth\reserved@a\relax \@parboxrestore \c@mpfootnote\z@pt \let\@footnotetext\@mpfootnotetext @@ -1822,28 +1867,31 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \everypar{\global\@minipagefalse\everypar{}}% \leavevmode\@killglue \xwmstrut\xwmbmp@height\z@pt - \noindent\xwmbmp@textcolor + \noindent\color{\xwmbmp@textcolor}% \begin\xwmbmp@textalign + \ignorespaces } -\robust@def\endxwmboxedminipage{% +\robust@gdef*\endxwmboxedminipage{% \end\xwmbmp@textalign \xwmstrut\z@pt\xwmbmp@depth \ifvoid\@mpfootins\else \vskip\skip\@mpfootins\footnoterule\unvbox\@mpfootins \fi - \vskip\xwmbmp@framesep - \egroup - \hskip\xwmbmp@framesep\vrule\@width\xwmbmp@framerule - \egroup + \vskip\xwmbmp@framesep\relax + \ifnum`{=0\fi}% + \kern\xwmbmp@framesep\relax + \vrule\@width\xwmbmp@framerule + \ifnum`{=0\fi}% \hrule\@height\xwmbmp@framerule - \egroup + \ifnum`{=0\fi}% \if@pboxsw\m@th$\fi |$ - \leavevmode\@killglue\@ignoretrue + \leavevmode\@killglue \endgroup + \@ignoretrue } \endgroup -\ltxkeys@definekeys*[XWM]<minipage>[xwmmp@]{% +\ltxkeys@definekeys*[XWM]{minipage}[xwmmp@]{% width=\paperwidth; textcolor=black; framecolor=black; @@ -1851,27 +1899,26 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ framerule=0.4\p@; height=\z@pt; depth=\z@pt; - width=\hsize; textalign=center/\xwm@settextalign\xwmmp@textalign; - text-align=center/\setmnkey{textalign}; + text-align=center/\setaliaskey{textalign}; framebox=true; - insertframe=true/\setmnkey{framebox}; - insert-frame=true/\setmnkey{framebox}; + insertframe=true/\setaliaskey{framebox}; + insert-frame=true/\setaliaskey{framebox}; } \robust@def*\xwmminipage{\cpt@testopt\xwm@minipage{}} \robust@def\xwm@minipage[#1]#2{% \ltxkeys@launchkeys[XWM]{minipage}{#1}% - \stripallbrincs\xwmmp@width - \stripallbrincs\xwmmp@textcolor - \edef\sav@fboxsep{\the\fboxsep}% - \edef\sav@fboxrule{\the\fboxrule}% - \fboxsep\xwmmp@framesep\fboxrule\xwmmp@framerule + \xwm@stripallbrincs\xwmmp@width + \xwm@stripallbrincs\xwmmp@textcolor + \xwm@pushboxframe + \fboxsep\xwmmp@framesep\fboxrule\xwmmp@framerule\relax \cptdimdef\xwmmp@boxwidth{\xwmmp@width-2\fboxsep-2\fboxrule}% \def\xwm@printbox{% \color{\xwmmp@framecolor}% \ifxwmmp@framebox\fbox{\fi \usebox\xwm@boxa \ifxwmmp@framebox}\fi + \xwm@popboxframe }% \@killglue\noindent \begin{lrbox}\xwm@boxa @@ -1888,32 +1935,33 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \end{lrbox}% \@ignoretrue\@killglue\noindent \xwm@printbox - \fboxsep\sav@fboxsep\fboxrule\sav@fboxrule - \normalcolor\@ignoretrue + \normalcolor + \@ignoretrue } -\ltxkeys@definekeys*[XWM]<colorbox>[xwmcbx@]{% +\ltxkeys@definekeys*[XWM]{colorbox}[xwmcbx@]{% width=\textwidth; height=\z@pt; depth=\z@pt; framebox=true; - insertframe=true/\setmnkey{framebox}; - insert-frame=true/\setmnkey{framebox}; + insertframe=true/\setaliaskey{framebox}; + insert-frame=true/\setaliaskey{framebox}; textcolor=black; fillcolor=white; outerframecolor=black; - outer-frame-color=black/\setmnkey{outerframecolor}; + outer-frame-color=black/\setaliaskey{outerframecolor}; innerframecolor=black; - inner-frame-color=black/\setmnkey{innerframecolor}; + inner-frame-color=black/\setaliaskey{innerframecolor}; framesep=3\p@; framerule=0.4\p@; textalign=center/\xwm@settextalign\xwmcbx@textalign; - align=center/\setmnkey{textalign}; - text-align=center/\setmnkey{textalign}; + align=center/\setaliaskey{textalign}; + text-align=center/\setaliaskey{textalign}; } \robust@def*\xwmcolorbox{\cpt@testopt\xwm@colorbox{}} \robust@def\xwm@colorbox[#1]#2{% \ltxkeys@launchkeys[XWM]{colorbox}{#1}% - \fboxsep\xwmcbx@framesep\fboxrule\xwmcbx@framerule + \xwm@pushboxframe + \fboxsep\xwmcbx@framesep\fboxrule\xwmcbx@framerule\relax \removelastskip\noindent \fcolorbox{\xwmcbx@outerframecolor}{\xwmcbx@fillcolor}{% \cptexpandsecond\xwmminipage{[textalign=\xwmcbx@textalign, @@ -1922,10 +1970,11 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ height=\xwmcbx@height,depth=\xwmcbx@depth, textcolor=\xwmcbx@textcolor,framebox=true]}{#2}% }% + \xwm@popboxframe \removelastskip \normalcolor } -\ltxkeys@definekeys*[XWM]<makecolorbox>[xwmmbx@]{% +\ltxkeys@definekeys*[XWM]{makecolorbox}[xwmmbx@]{% width=\textwidth; height=\z@pt; depth=\z@pt; @@ -1933,24 +1982,24 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ textcolor=black; fillcolor=white; outerframecolor=black; - outer-frame-color=black/\setmnkey{outerframecolor}; + outer-frame-color=black/\setaliaskey{outerframecolor}; innerframecolor=black; - inner-frame-color=black/\setmnkey{innerframecolor}; + inner-frame-color=black/\setaliaskey{innerframecolor}; framesep=3\p@; framerule=0.4\p@; textalign=center/\xwm@settextalign\xwmmbx@textalign; - align=center/\setmnkey{textalign}; - text-align=center/\setmnkey{textalign}; + align=center/\setaliaskey{textalign}; + text-align=center/\setaliaskey{textalign}; boxalign=center/\xwm@settextalign\xwmmbx@boxalign; } - \robust@def*\makecolorbox{\cpt@testopt\xwm@makecolorbox{}} \robust@def*\xwm@makecolorbox[#1]#2{% \ltxkeys@launchkeys[XWM]{makecolorbox}{#1}% \begin{\xwmmbx@boxalign}% \makebox[\z@pt][c]{% \xwmstrut\xwmmbx@height\z@pt - \fboxsep\xwmmbx@framesep\fboxrule\xwmmbx@framerule + \xwm@pushboxframe + \fboxsep\xwmmbx@framesep\fboxrule\xwmmbx@framerule\relax \fcolorbox{\xwmmbx@outerframecolor}{\xwmmbx@fillcolor}{% \cptexpandsecond\xwmminipage{[textalign=\xwmmbx@textalign, framesep=\xwmmbx@framesep,framerule=\xwmmbx@framerule, @@ -1959,13 +2008,14 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ textcolor=\xwmmbx@textcolor,framebox= \thebool@normal{xwmmbx@framebox}]}{#2}% }% + \xwm@popboxframe \xwmstrut\z@pt\xwmmbx@depth }% \end{\xwmmbx@boxalign}% \removelastskip \normalcolor } -\ltxkeys@definekeys*[XWM]<shade>[xwmshd@]{% +\ltxkeys@definekeys*[XWM]{shade}[xwmshd@]{% width=\hsize; leftadjust=\z@pt; indent=\z@pt; @@ -1982,7 +2032,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \def\FrameCommand{% \clubpenalty\@m\widowpenalty\@m \noindent\kern\xwmshd@leftadjust - \fboxrule\xwmshd@framerule\fboxsep\xwmshd@framesep + \fboxrule\xwmshd@framerule\fboxsep\xwmshd@framesep\relax \fcolorbox{\xwmshd@framecolor}{\xwmshd@fillcolor}% }% \parindent\z@pt\finalhyphendemerits\z@pt @@ -2005,7 +2055,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \xwmstrut\z@pt\xwmshd@depth \par\unskip\endMakeFramed\@ignoretrue } -\ltxkeys@definekeys*[XWM]<fadingtext>[fad@]{% +\ltxkeys@definekeys*[XWM]{fadingtext}[fad@]{% textcolor=white; boxcolor=black; scale=1; @@ -2076,30 +2126,30 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \rhead{\pgn@rhead}\lhead{\pgn@lhead}% \ifpgn@showheadrule \def\headrule{{% - \color{\pgn@headruleC}% - \hrule\@height\pgn@headruleH\@depth\pgn@headruleD - \@width\headwidth\vspace{\pgn@headruleS}% - \hrule\@height\pgn@headruleH\@depth\pgn@headruleD - \@width\headwidth\vspace{-\pgn@headruleS}% + \color{\pgn@headrulecolor}% + \hrule\@height\pgn@headruleheight\@depth\pgn@headruledepth + \@width\headwidth\vspace{\pgn@headrulesep}% + \hrule\@height\pgn@headruleheight\@depth\pgn@headruledepth + \@width\headwidth\vspace{-\pgn@headrulesep}% }}% \else \let\headrule\relax \fi \ifpgn@showfootrule \def\footrule{{% - \color{\pgn@footruleC}% - \hrule\@height\pgn@footruleH\@depth\pgn@footruleD - \@width\headwidth\vspace{\pgn@footruleS}% - \hrule\@height\pgn@footruleH\@depth\pgn@footruleD - \@width\headwidth\vspace{\pgn@footruleS}% + \color{\pgn@footrulecolor}% + \hrule\@height\pgn@footruleheight\@depth\pgn@footruledepth + \@width\headwidth\vspace{\pgn@footrulesep}% + \hrule\@height\pgn@footruleheight\@depth\pgn@footruledepth + \@width\headwidth\vspace{\pgn@footrulesep}% }}% \else \let\footrule\relax \fi - \xwm@gethfoffset\pgn@hfoffsetL\pgn@hfoffsetR + \xwm@gethfoffset\pgn@hfoffsetleft\pgn@hfoffsetright \fancyhfoffset[R,L]\xwm@hfoffset \AtBeginShipout{% - \if@boolTF{pgn@sendtoback}{% + \ifboolTF{pgn@sendtoback}{% \AtBeginShipoutUpperLeft{% \xwm@f@ncyp@genos }% @@ -2110,14 +2160,22 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ }% }% } +\newswitch{xwm@fancy} \robust@def*\xwm@f@ncypagenos{% - \def\pgn@textmark{\pgn@format{\normalfont\pgn@style}}% + \def\pgn@textmark{% + \begingroup + \fboxrule\pgn@framerule\fboxsep\pgn@framesep\relax + \pgn@format{\normalfont\pgn@style}% + \endgroup + }% + \switchtrue{xwm@fancy}% \xwm@textbox{pgn}% + \switchfalse{xwm@fancy}% } \robust@def*\xwm@f@ncyp@genos{% - \if@boolFT{pgn@showpagenos}{}{% + \ifboolFT{pgn@showpagenos}{}{% \ifnumcmpTF\c@page=\@ne{% - \ifpgn@showonpageone\xwm@f@ncypagenos\fi + \ifboolTF{pgn@showonpageone}\xwm@f@ncypagenos\relax }{% \xwm@f@ncypagenos }% @@ -2127,7 +2185,7 @@ $Id: xwatermark.sty,v 1.5.1 2011/07/30 09:00:00 Ahmed Musa Exp $ \begingroup \def\temp@err{% \xwm@err{Only digits (without units) are allowed\MsgBrk - in the values of 'hfoffsetL' and 'hfoffsetR'}\@ehc + in the values of 'hfoffsetleft' and 'hfoffsetright'}\@ehc }% \xifblankTF{#1}{}{% \x@xwmifitemsinTF\xwm@allowedcoordunits{#1}\temp@err{}% |