diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/ncctools/nccboxes.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/ncctools/nccboxes.sty | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ncctools/nccboxes.sty b/Master/texmf-dist/tex/latex/ncctools/nccboxes.sty new file mode 100644 index 00000000000..fca4d4763e0 --- /dev/null +++ b/Master/texmf-dist/tex/latex/ncctools/nccboxes.sty @@ -0,0 +1,145 @@ +%% +%% This is file `nccboxes.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% nccboxes.dtx (with options: `package') +%% +%% IMPORTANT NOTICE: +%% +%% This file is a generated file from the sources of the `ncctools' +%% bundle. +%% +%% You are not allowed to modify this file. +%% +%% You are allowed to distribute this file if and only if +%% it is distributed with the corresponding source files in +%% the `ncctools' bundle. +%% +%% For the copying and distribution conditions of the source files, +%% see the README file distributed with the ncctools bundle. +%% +%% File: nccboxes.dtx Copyright (C) 2002--2005 by Alexander I. Rozhenko +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{nccboxes} + [2005/02/07 v1.2 Additional Boxes (NCC)] +\newcommand*{\addbox}[3]{% + \@begin@tempboxa\hbox{#3}% + \setlength\@tempdima{#1}% + \advance\@tempdima \ht\@tempboxa + \ht\@tempboxa \@tempdima + \setlength\@tempdima{#2}% + \advance\@tempdima \dp\@tempboxa + \dp\@tempboxa \@tempdima + \leavevmode\box\@tempboxa + \@end@tempboxa +} +\newcommand*{\jhbox}[1]{\settowidth\@tempdima{#1}\makebox[\@tempdima]} +\newcommand*{\jvbox}[1]{% + \setbox\z@\hbox{\color@begingroup#1\color@endgroup}% + \setbox\z@\hbox{\vrule \@width\z@ \@height\ht\z@ \@depth\dp\z@}% + \NCC@jvbox +} +\newcommand*{\NCC@jvbox}[2][]{% + \setbox\@tempboxa\hbox{\color@begingroup#2\color@endgroup}% + \let\m@t\vss \let\m@b\vss + \@tfor\@tempa :=#1\do {% + \expandafter\let\csname m@\@tempa\endcsname\relax}% + \@tempdima\ht\z@ \advance\@tempdima -\ht\@tempboxa + \ifx\m@t\relax \else + \@tempdimb\dp\@tempboxa \advance\@tempdimb -\dp\z@ + \ifx\m@b\relax \@tempdima \@tempdimb \else + \advance\@tempdimb \@tempdima \@tempdima .5\@tempdimb + \fi + \fi + \leavevmode \box\z@ \raise\@tempdima\box\@tempboxa +} +\newcommand*{\jparbox}[1]{% + \@ifnextchar[{\NCC@jparbox{#1}}{\NCC@jparbox{#1}[]}% +} +\long\def\NCC@jparbox#1[#2]#3#4{% + \@begin@tempboxa\vtop{\setlength\@tempdima{#3}% + \hsize\@tempdima\@parboxrestore#4\@@par}% + \setlength\@tempdima{#3}% vbox containing only display equations can + \wd\@tempboxa\@tempdima % have lesser width. We correct it here + \jvbox{#1}[#2]{\box\@tempboxa}% + \@end@tempboxa +} +\newcommand*{\pbox}[2][]{% + \let\m@l\hss \let\m@r\hss \let\m@t\vss \let\m@b\vss + \@tfor\@tempa:=#1\do{% + \expandafter\let\csname m@\@tempa\endcsname\relax% + }% + \leavevmode\hbox{\color@begingroup + $\ifx\m@t\relax \vtop \else\ifx\m@b\relax \vbox\else \vcenter\fi\fi + \bgroup \baselineskip\z@\lineskip\z@ + \def\\{\strut\@stackcr}% + \halign{\m@l\ignorespaces ##\unskip\m@r\cr #2\strut\crcr}% + \egroup$\color@endgroup + }% +} +\newcommand*{\picbox}[1]{% + \setbox\@tempboxa\hb@xt@\z@{\ignorespaces#1\hss}% + \ht\@tempboxa\z@\dp\@tempboxa\z@ + \leavevmode\box\@tempboxa +} +\newcommand{\Strutletter}{A} +\newcommand{\Strutstretch}{1.5} +\newsavebox\NCC@strutbox +\newdimen\NCC@strutsep +\def\NCC@setstrut#1{% + \setbox\NCC@strutbox\hbox{\vphantom{\Strutletter}}% + \@tempdima\ht\strutbox \advance\@tempdima\dp\strutbox + \NCC@strutsep \Strutstretch\@tempdima + \advance\NCC@strutsep -\ht\NCC@strutbox + \advance\NCC@strutsep -\dp\NCC@strutbox + \NCC@strutsep .5\NCC@strutsep + \@ifnextchar/{\NCC@setstrutn{#1}}{\NCC@setstrutl{#1}\z@}% +} +\def\NCC@setstrutn#1/#2/{\NCC@setstrutl{#1}{#2\@tempdima}} +\def\NCC@setstrutl#1#2{% + \@defaultunits\@tempdima#2\relax\@nnil + \ifdim\@tempdima>\z@ + \advance\@tempdima \ht\NCC@strutbox + \ht\NCC@strutbox \@tempdima + \else + \@tempdima -\@tempdima + \advance\@tempdima \dp\NCC@strutbox + \dp\NCC@strutbox \@tempdima + \fi + #1% +} +\newcommand{\Strut}{% + \NCC@setstrut{\leavevmode\copy\NCC@strutbox\ignorespaces}% +} +\newcommand{\tstrut}{% + \NCC@setstrut{}\addbox\NCC@strutsep\z@{\copy\NCC@strutbox}% +} +\newcommand{\bstrut}{% + \NCC@setstrut{}\addbox\z@\NCC@strutsep{\copy\NCC@strutbox}% +} +\newcommand{\tbstrut}{% + \NCC@setstrut{}\addbox\NCC@strutsep\NCC@strutsep{\copy\NCC@strutbox}% +} +\newcommand{\cboxstyle}{} +\newcommand{\cbox}{% + \@ifstar{\def\@tempa{\ht\@tempboxa\z@ \dp\@tempboxa\z@}\NCC@xcbox}% + {\let\@tempa\relax\NCC@xcbox}% +} +\def\NCC@xcbox{% + \leavevmode \hbox\bgroup\color@begingroup + \cboxstyle\NCC@setstrut{\NCC@ycbox}% +} +\newcommand*{\NCC@ycbox}[2][]{% + \setbox\@tempboxa\hbox{% + \jvbox{\addbox\NCC@strutsep\NCC@strutsep{\copy\NCC@strutbox}}[#1]% + {\pbox[#1t]{\tstrut\ignorespaces #2\unskip\bstrut}}}% + \@tempa \box\@tempboxa + \color@endgroup\egroup +} +\newcommand{\tc}[1]{\hspace*{\fill}#1\hspace*{\fill}} +\endinput +%% +%% End of file `nccboxes.sty'. |