Package color Error: Argument `1.01125' no in range [0,1]
Actually I get no error on the supplied test file however
\makeatletter
\p@=1bp
\makeatother
is spectacularly wrong and will break almost all latex arithmetic, not only color
, but the graphics
package, arithmetic by the calc
package, tabularx
, .....
To see why note that latex has no floating point registers, only lengths or integers so if for example you are mixing colours and need to multiply .3 by 2 the usual way is to go via lengths
\dimen@=.3\p@
now \dimen@
is .3pt
\dimen@=2\dimen@
now it is .6pt
\edef\result{\strip@pt\dimen@}
\show\result
removes the pt
> \result=macro:
->0.6.
But now redefine \p@
to be 1bp
the same calculation ends up with
> \result=macro:
->0.60223.
so even the simplest arithmetic operation gives an incorrect result.
\p@
is originally defined as 1.0pt
. After \p@=1bp
it has the value 1.00374pt
. I suggest to add the lines
\makeatletter
\p@=1pt
\makeatother
to the preamble after loading dgruyter_NEW.sty
.
Edit: The issue is still present in the most recent version of de Gruyter's LaTeX package. One of the first lines in dgruyter.sty
(identifying itself as 2016/09/28 v1.82 De Gruyter layout
) still reads \p@=1bp\relax
, which leads to the error described in the original post.