diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/base/ltpictur.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/base/ltpictur.dtx | 115 |
1 files changed, 107 insertions, 8 deletions
diff --git a/Master/texmf-dist/source/latex/base/ltpictur.dtx b/Master/texmf-dist/source/latex/base/ltpictur.dtx index 9d7ef572a77..e5ca4262c8e 100644 --- a/Master/texmf-dist/source/latex/base/ltpictur.dtx +++ b/Master/texmf-dist/source/latex/base/ltpictur.dtx @@ -32,7 +32,7 @@ %<*driver> % \fi \ProvidesFile{ltpictur.dtx} - [2015/02/21 v1.1k LaTeX Kernel (Picture Mode)] + [2016/03/29 v1.1l LaTeX Kernel (Picture Mode)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltpictur.dtx} @@ -54,7 +54,6 @@ %</driver> % \fi % -% \CheckSum{1505} % % \changes{v1.0g}{1995/05/07}{Use \cs{hb@xt@}} % \changes{v1.1a}{1995/05/19}{Support autoloading feature} @@ -1103,7 +1102,7 @@ % % \begin{macro}{\@picture@warn} % Generic warning for lines, vectors (used in |\@sline|) and -% oval or circle (used un |\@getcirc|) are not available at +% oval or circle (used in |\@getcirc|) are not available at % right size. % \changes{v1.1g}{1997/09/15}{Macro added pr/2524} % \begin{macrocode} @@ -1125,19 +1124,58 @@ % \end{macrocode} % \end{macro} % +% \begin{macrocode} +%</2ekernel> +%<latexrelease>\IncludeInRelease{2016/03/31}% +%<latexrelease> {\@ovhlinetrue}% +%<latexrelease> {Avoid almost zero length leaders}% +%<*2ekernel|latexrelease> +% \end{macrocode} +% +% \begin{macro}{\if@ovvline} +% \changes{v.1l}{2016/03/29}{macro added (latex/4452)} +% \begin{macro}{\if@ovhline} +% \changes{v.1l}{2016/03/29}{macro added (latex/4452)} +% Tests whether horizontal or vertical lines are needed. +% \begin{macrocode} +\newif\if@ovvline \@ovvlinetrue +\newif\if@ovhline \@ovhlinetrue +% \end{macrocode} +% \end{macro} +% \end{macro} +% % \begin{macro}{\@oval} % \begin{macrocode} \gdef\@oval(#1,#2)[#3]{\begingroup\boxmaxdepth \maxdimen \@ovttrue \@ovbtrue \@ovltrue \@ovrtrue +% \end{macrocode} +% \changes{v.1l}{2016/03/29}{initialise tests} +% \begin{macrocode} + \@ovvlinefalse \@ovhlinefalse +% \end{macrocode} +% \begin{macrocode} \@tfor\reserved@a :=#3\do{\csname @ov\reserved@a false\endcsname}% - \@ovxx - #1\unitlength \@ovyy #2\unitlength - \@tempdimb \ifdim \@ovyy >\@ovxx \@ovxx\else \@ovyy \fi + \@ovxx #1\unitlength + \@ovyy #2\unitlength +% \end{macrocode} +% \changes{v.1l}{2016/03/29}{add setting of line tests} +% \begin{macrocode} + \@tempdimb \ifdim \@ovyy >\@ovxx \@ovxx \@ovvlinetrue + \else \@ovyy \ifdim \@ovyy =\@ovxx \else \@ovhlinetrue \fi\fi +% \end{macrocode} +% \begin{macrocode} \advance \@tempdimb -2\p@ \@getcirc \@tempdimb \@ovro \ht\@tempboxa \@ovri \dp\@tempboxa \@ovdx\@ovxx \advance\@ovdx -\@tempdima \divide\@ovdx \tw@ \@ovdy\@ovyy \advance\@ovdy -\@tempdima \divide\@ovdy \tw@ +% \end{macrocode} +% \changes{v.1l}{2016/03/29}{add setting of line tests} +% \begin{macrocode} + \ifdim \@ovdx >\z@ \@ovhlinetrue \fi + \ifdim \@ovdy >\z@ \@ovvlinetrue \fi +% \end{macrocode} +% \begin{macrocode} \@circlefnt \setbox\@tempboxa \hbox{\if@ovr \@ovvert32\kern -\@tempdima \fi \if@ovl \kern \@ovxx \@ovvert01\kern -\@tempdima \kern -\@ovxx \fi @@ -1155,7 +1193,14 @@ \if@ovb \@tempcntb \@tempcnta \advance \@tempcntb #1\relax \kern -\@ovro \hbox{\char \@tempcntb}\nointerlineskip \else \kern \@ovri \kern \@ovdy \fi - \leaders\vrule \@width \@wholewidth\vfil \nointerlineskip +% \end{macrocode} +% \changes{v.1l}{2016/03/29} +% {use glue not leaders if vertical line not required} +% \begin{macrocode} + \if@ovvline \leaders\vrule \@width \@wholewidth \fi +% \end{macrocode} +% \begin{macrocode} + \vfil \nointerlineskip \if@ovt \@tempcntb \@tempcnta \advance \@tempcntb #2\relax \hbox{\char \@tempcntb}% \else \kern \@ovdy \kern \@ovro \fi}} @@ -1166,12 +1211,66 @@ % \begin{macrocode} \gdef\@ovhorz{\hb@xt@\@ovxx{\kern \@ovro \if@ovr \else \kern \@ovdx \fi - \leaders \hrule \@height \@wholewidth \hfil +% \end{macrocode} +% \changes{v.1l}{2016/03/29} +% {use glue not leaders if horizontal line not required} +% \begin{macrocode} + \if@ovhline \leaders \hrule \@height \@wholewidth \fi +% \end{macrocode} +% \begin{macrocode} + \hfil \if@ovl \else \kern \@ovdx \fi \kern \@ovri}} % \end{macrocode} % \end{macro} % +% \begin{macrocode} +%</2ekernel|latexrelease> +%<latexrelease>\EndIncludeInRelease +%<latexrelease>\IncludeInRelease{0000/00/00}% +%<latexrelease> {\@ovhlinetrue}% +%<latexrelease> {Avoid almost zero length leaders}% +%<latexrelease>\let\if@ovvline\@undefined +%<latexrelease>\let\if@ovhline\@undefined +%<latexrelease>\gdef\@oval(#1,#2)[#3]{\begingroup\boxmaxdepth \maxdimen +%<latexrelease> \@ovttrue \@ovbtrue \@ovltrue \@ovrtrue +%<latexrelease> \@tfor\reserved@a :=#3\do +%<latexrelease> {\csname @ov\reserved@a false\endcsname}% +%<latexrelease> \@ovxx #1\unitlength +%<latexrelease> \@ovyy #2\unitlength +%<latexrelease> \@tempdimb \ifdim \@ovyy >\@ovxx \@ovxx\else \@ovyy \fi +%<latexrelease> \advance \@tempdimb -2\p@ +%<latexrelease> \@getcirc \@tempdimb +%<latexrelease> \@ovro \ht\@tempboxa \@ovri \dp\@tempboxa +%<latexrelease> \@ovdx\@ovxx \advance\@ovdx -\@tempdima \divide\@ovdx \tw@ +%<latexrelease> \@ovdy\@ovyy \advance\@ovdy -\@tempdima \divide\@ovdy \tw@ +%<latexrelease> \@circlefnt \setbox\@tempboxa +%<latexrelease> \hbox{\if@ovr \@ovvert32\kern -\@tempdima \fi +%<latexrelease> \if@ovl +%<latexrelease> \kern \@ovxx \@ovvert01\kern -\@tempdima \kern -\@ovxx +%<latexrelease> \fi +%<latexrelease> \if@ovt \@ovhorz \kern -\@ovxx \fi +%<latexrelease> \if@ovb \raise \@ovyy \@ovhorz \fi}\advance\@ovdx\@ovro +%<latexrelease> \advance\@ovdy\@ovro \ht\@tempboxa\z@ \dp\@tempboxa\z@ +%<latexrelease> \@put{-\@ovdx}{-\@ovdy}{\box\@tempboxa}% +%<latexrelease> \endgroup} +%<latexrelease>\gdef\@ovvert#1#2{\vbox to\@ovyy{% +%<latexrelease> \if@ovb \@tempcntb \@tempcnta \advance \@tempcntb #1\relax +%<latexrelease> \kern -\@ovro \hbox{\char \@tempcntb}\nointerlineskip +%<latexrelease> \else \kern \@ovri \kern \@ovdy \fi +%<latexrelease> \leaders\vrule \@width \@wholewidth\vfil \nointerlineskip +%<latexrelease> \if@ovt \@tempcntb \@tempcnta \advance \@tempcntb #2\relax +%<latexrelease> \hbox{\char \@tempcntb}% +%<latexrelease> \else \kern \@ovdy \kern \@ovro \fi}} +%<latexrelease>\gdef\@ovhorz{\hb@xt@\@ovxx{\kern \@ovro +%<latexrelease> \if@ovr \else \kern \@ovdx \fi +%<latexrelease> \leaders \hrule \@height \@wholewidth \hfil +%<latexrelease> \if@ovl \else \kern \@ovdx \fi +%<latexrelease> \kern \@ovri}} +%<latexrelease>\EndIncludeInRelease +%<*2ekernel> +% \end{macrocode} +% % \begin{macro}{\circle} % \changes{LaTeX2.09}{1993/08/05} % {(RMS) Added error message if \cs{circle} is used in math mode.} |