From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/showdim/showdim.sty | 97 ++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 macros/latex/contrib/showdim/showdim.sty (limited to 'macros/latex/contrib/showdim/showdim.sty') diff --git a/macros/latex/contrib/showdim/showdim.sty b/macros/latex/contrib/showdim/showdim.sty new file mode 100644 index 0000000000..1bf74accc9 --- /dev/null +++ b/macros/latex/contrib/showdim/showdim.sty @@ -0,0 +1,97 @@ +% 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@<\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@<\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@<\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@<\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@<\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 % -- cgit v1.2.3