Como posso imprimir um comprimento de hsize (tamanho horizontal) em mm (milímetro)?

Como posso imprimir um comprimento de hsize (tamanho horizontal) em mm (milímetro)?

Sou novo na VTEX. Como posso resolver isso??

\documentclass{article}
\begin{document}
\the\hsize
\end{document}

Saída: 345,0 pontos

mas eu tenho que escrever uma macro para calcular hsize em mm exemplo: \printdimen[mm]\hsize e se eu pegar hsize 6,5in então o que será produzido em mm?

Responder1

% arara: pdflatex

\documentclass[a4paper]{article}
\usepackage{xparse}
\usepackage{siunitx}
\usepackage{pgf}
\usepackage{mathtools}
\makeatletter
\def\convertto#1#2{\strip@pt\dimexpr #2*65536/\number\dimexpr 1#1}
\makeatother
\newcommand*{\getlength}[3]{%
    \pgfmathsetmacro#1{#3*#2}
}
\DeclareDocumentCommand\printdimen { o m }{%
    \getlength{\tmp}{\convertto{#1}{1pt}}{#2}\SI{\tmp}{#1}
}


\begin{document}  
\begin{align*}  
    \text{\the\hsize} &\equiv \printdimen[mm]\hsize \\
                      &\equiv \printdimen[cm]\hsize \\
                      &\equiv \printdimen[ex]\hsize \\                    
                      &\equiv \printdimen[em]\hsize \\      
                      &\equiv \printdimen[bp]\hsize \\
                      &\equiv \printdimen[dd]\hsize \\                    
                      &\equiv \printdimen[pc]\hsize \\  
                      &\equiv \printdimen[in]\hsize                                    
\end{align*}
\end{document}

insira a descrição da imagem aqui

Responder2

Assim?

\documentclass{article}
\usepackage{printlen}
\begin{document}
\uselengthunit{mm}\printlength{\hsize}
\end{document}

informação relacionada