Memoir, showframe y curve2e no funcionan bien juntos

Memoir, showframe y curve2e no funcionan bien juntos

Parece que una combinación de la memoirclase y los paquetes showframeand curve2eno funcionan bien juntos. A continuación se muestra un MWE que utilicé para realizar pruebas.

% memframeprob.tex

%\documentclass{book}
\documentclass[a4paper]{memoir}
\usepackage{showframe}
\usepackage{lipsum}
\usepackage{comment}

%\begin{comment}
\setlrmarginsandblock{0.5in}{*}{*}
\setulmarginsandblock{0.5in}{*}{1}
\checkandfixthelayout
\pagestyle{empty}
\usepackage{url}
%\end{comment]

\usepackage{pict2e}
\usepackage{curve2e} % problem 


%\begin{comment}
\newcommand*{\X}{{\LARGE\textbf{.}}}
\renewcommand*{\X}{\makebox(0,0){{\large\textbf{+}}}}
\newcommand*{\Flag}{{\LARGE$\uparrow$}}
\newcommand*{\mk}{\makebox(0,0){$\circ$}}
\newcommand*{\Mk}{\makebox(0,0){$\bullet$}}
%\end{comment}

\begin{document}
\lipsum[1]
\end{document}

Como puede ver, he intentado, comentando fragmentos de código, desviarme hacia dónde está el problema. Cuando compilé el MWE obtuve

(/usr/local/texlive/2020/texmf-dist/context/base/mkii/sypp-pdf.mkii
[Loading MPS to PDF converter (version 2006.09.02).]
)
! Missing number, treated as zero.
<to be read again>
                   \bgroup
l.31 \end{document}

Esto no ocurrió cuando usé la bookclase (eliminando todos los memoircomandos específicos) y no ocurrió memoircuando bookno usé el curve2epaquete.

No tengo idea de qué podría estar causando el problema.

Respuesta1

Desde el lanzamiento del 1 de octubre de 2020, el modo de imagen de látex permite longitudes en \putcoordenadas (una característica que el picturepaquete proporcionaba anteriormente, pero de forma diferente).

Curve2e se ha actualizado pero omite algunos casos, incluidos\line

% memframeprob.tex

%\documentclass{book}
\documentclass[a4paper]{memoir}
\usepackage{showframe}
\usepackage{lipsum}
\usepackage{comment}

%\begin{comment}
\setlrmarginsandblock{0.5in}{*}{*}
\setulmarginsandblock{0.5in}{*}{1}
\checkandfixthelayout
\pagestyle{empty}
\usepackage{url}
%\end{comment]

\usepackage{pict2e}
\usepackage{curve2e} % problem 

\makeatletter



\def\line(#1)#2{\begingroup
  \@defaultunitsset\@linelen{#2}\unitlength
  \ifdim\@linelen<\z@\@badlinearg\else
    \expandafter\DirOfVect#1to\Dir@line
    \GetCoord(\Dir@line)\d@mX\d@mY
    \ifdim\d@mX\p@=\z@\else
      \edef\sc@lelen{\fpeval{1 / abs(\d@mX)}}\relax
      \@linelen=\sc@lelen\@linelen
    \fi
    \moveto(0,0)\pIIe@lineto{\d@mX\@linelen}{\d@mY\@linelen}%
    \strokepath
  \fi
\endgroup\ignorespaces}%


\makeatother


%\begin{comment}
\newcommand*{\X}{{\LARGE\textbf{.}}}
\renewcommand*{\X}{\makebox(0,0){{\large\textbf{+}}}}
\newcommand*{\Flag}{{\LARGE$\uparrow$}}
\newcommand*{\mk}{\makebox(0,0){$\circ$}}
\newcommand*{\Mk}{\makebox(0,0){$\bullet$}}
%\end{comment}

\begin{document}
\lipsum[1]
\end{document}

información relacionada