LaTex 如何計算雙列文件中的 \linewidth?

LaTex 如何計算雙列文件中的 \linewidth?

我想計算從 R 匯出並包含在 LaTeX 文件中的圖形的理想大小(因此圖形標籤的文字大小與結果文件的字體大小成已知比例)。但是,對於雙列文檔,我不知道 LaTeX 如何計算 \linewidth。有沒有一個公式可以計算這個?我需要類似的東西:

(paperwidth - margins)/2 - distance_of_the_columns_as_a_function_of_font_size

當然,我可以編譯pdf並包含

\the\linewidth

取得目前文件的線寬(然後我可以手動提供給 R),但我想編寫一個可以「盲目」運行的 R 腳本,並自動從純 .tex 檔案計算所需的值。

編輯:我測試過

\the\columnsep

對於 8pt、10pt、11pt 和 12pt 文章和 scrartcl 文檔,總是得到10分,因此我假設該值對於常規情況是恆定的。這將使事情變得相當容易,因為\columnwidth那時將是:

(\paperwidth - margins - 10pt)/2```

答案1

計算公式為

\def \twocolumn {%
  \clearpage
  \global\columnwidth\textwidth
  \global\advance\columnwidth-\columnsep
  \global\divide\columnwidth\tw@
  \global\hsize\columnwidth
  \global\linewidth\columnwidth

即減去 sep 欄位(文章類中的 10pt)後\linewidth\columnwidth一半。\textwidth

\textwidth預設情況下,在每個文件類別中以不同的方式設定(並且通常由諸如 之類的包重新設定geometry),在article具有預設10pt選項的類別中,它由

\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

約 345pt 或 2in 小於\paperwidth

相關內容