Quiero calcular el tamaño ideal de las figuras que exporto desde R e incluyo en documentos LaTeX (de modo que el tamaño del texto de las etiquetas de las figuras esté en una proporción conocida con el tamaño de fuente del documento resultante). Sin embargo, para documentos de dos columnas no sé cómo calcula LaTeX \linewidth. ¿Existe una fórmula sobre cómo calcular esto? Necesitaría algo como:
(paperwidth - margins)/2 - distance_of_the_columns_as_a_function_of_font_size
Por supuesto, podría compilar el pdf e incluirlo.
\the\linewidth
para obtener el ancho de línea del documento actual (que luego podría proporcionar manualmente a R), pero quiero escribir un script de R que pueda ejecutar "a ciegas" y que calcule los valores requeridos a partir del archivo .tex simple automáticamente.
Editar: probé
\the\columnsep
para artículos de 8 puntos, 10 puntos, 11 puntos y 12 puntos y documentos scrartcl y siempre obtuve10 puntosPor tanto, supongo que el valor es constante para los casos normales. Esto facilitará bastante las cosas, ya que \columnwidth
entonces será:
(\paperwidth - margins - 10pt)/2```
Respuesta1
El cálculo es
\def \twocolumn {%
\clearpage
\global\columnwidth\textwidth
\global\advance\columnwidth-\columnsep
\global\divide\columnwidth\tw@
\global\hsize\columnwidth
\global\linewidth\columnwidth
Es decir, lo que \linewidth
es \columnwidth
la mitad \textwidth
después de restar la columna sep (10 puntos en la clase de artículo).
\textwidth
se establece en cada clase de documento de diferentes maneras (y a menudo se restablece mediante paquetes como geometry
) de forma predeterminada, en article
la clase con la opción predeterminada 10pt
se establece mediante
\if@compatibility
\if@twocolumn
\setlength\textwidth{410\p@}
\else
\setlength\textwidth{345\p@}
\fi
\else
\setlength\@tempdima{\paperwidth}
\addtolength\@tempdima{-2in}
\setlength\@tempdimb{345\p@}
\if@twocolumn
\ifdim\@tempdima>2\@tempdimb\relax
\setlength\textwidth{2\@tempdimb}
\else
\setlength\textwidth{\@tempdima}
\fi
\else
\ifdim\@tempdima>\@tempdimb\relax
\setlength\textwidth{\@tempdimb}
\else
\setlength\textwidth{\@tempdima}
\fi
\fi
\fi
\if@compatibility\else
\@settopoint\textwidth
\fi
que es más o menos 345 puntos o 2 pulgadas menos que\paperwidth