<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">% Copyright 1999 Michael John Downes.
% Copyright 2012 TeX Users Group.
% This file is part of the showdim package.
% 
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1
% of this license or (at your option) any later version.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2003/12/01 or later.
%
% This work has the LPPL maintenance status "unmaintained".
%
% There are only two files in this package: showdim.sty and README.

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{showdim}[2012/12/18 v1.2]

%    Print dimen in points, rounded to the nearest tenth.
%
\newcommand{\tenthpt}[1]{\dimen@#1\relax
%      Round up to the nearest tenth, by half-adding:
  \advance\dimen@ \ifdim\dimen@&lt;\z@-\fi .05\p@
  \expandafter\tenth@extract\the\dimen@ pt}

%    Print dimen in picas, rounded to the nearest tenth.
%
\newcommand{\tenthpc}[1]{\dimen@#1\relax
%    Round up to the nearest tenth
  \advance\dimen@ \ifdim\dimen@&lt;\z@-\fi .05pc%
  \divide\dimen@ 12 \expandafter\tenth@extract\the\dimen@ pc}

%    Print dimen in picas, rounded to the nearest hundredth.
%
\newcommand{\hundredthpc}[1]{\dimen@#1\relax
%    Round up to the nearest hundredth
  \advance\dimen@ \ifdim\dimen@&lt;\z@-\fi .005pc%
  \divide\dimen@ 12 \expandafter\hundredth@extract\the\dimen@ pc}

%    Print dimen in tenths of a pica and whole points.
%
\newcommand{\tenthpcpt}[1]{\tenthpc{#1} (\points{#1})}

%    Print dimen in points and tenths of a pica.
%
\newcommand{\pttenthpc}[1]{\points{#1} (\tenthpc{#1})}

%    Print dimen in points followed by the equivalent in picas (to
%    two decimal places).
%
\newcommand{\pthundredthpc}[1]{\points{#1} (\hundredthpc{#1})}

%    Print dimen truncated to one place after the decimal point
%    (maximum).
%
\edef\@tempa#1pt{#1\string p\string t}\@tempa
\def\tenth@extract#1.#2#3pt{#1\ifnum#2=\z@ \else.#2\fi}

%    Print dimen truncated to two places after the decimal point
%    (maximum).
%
\edef\@tempa#1pt{#1\string p\string t}\@tempa
\def\hundredth@extract#1.#2#3pt{#1\h@extract#2#300\@nil}

%    Extract a hundredths value: .0 is converted to "", .1 and .10 are both
%    converted to ".1", and .03 or .93 are printed as is.
%
\def\h@extract#1#2#3\@nil{%
   \ifnum#1#2=\z@ \else.#1\ifnum#2=\z@ \else#2\fi\fi}

%    Print dimen rounded to the nearest whole point.
%
\newcommand{\points}[1]{\dimen@#1\relax
  \advance\dimen@ \ifdim\dimen@&lt;\z@-\fi .5\p@
  \expandafter\wholepart@extract\the\dimen@\@nil pt}

%    Convert a negative point value to a positive value, for use in
%    messages such as "height of box A is \negpoints{\dimen@} less
%    than height of box B", where the negativity is conveyed by the
%    word "less" and therefore the minus sign should be removed from
%    the actual value that is printed in order not to be redundant.
%
\newcommand{\negpoints}[1]{\points{-#1}}

%    Print dimen converted to the nearest whole pica.
%
\newcommand{\picas}[1]{\dimen@#1\relax
  \advance\dimen@ \ifdim\dimen@&lt;\z@-\fi .5pc%
  \divide\dimen@ 12 \expandafter\wholepart@extract\the\dimen@\@nil pc}

%    Extract the whole part of a decimal number (i.e. the part before
%    the decimal point.)
%
\def\wholepart@extract#1.#2\@nil{#1}

\endinput %
</pre></body></html>