Se duas colunas LaTeX

Se duas colunas LaTeX

Estou escrevendo um artigo em LaTeX. Precisarei das versões de uma coluna e de duas colunas do artigo. Para isso, os tamanhos/configurações das figuras precisam ser diferentes nos dois documentos. Estou procurando um comando como \iftwocolumn! Você sabe se existe e se não, como posso defini-lo e usá-lo?

Eu precisaria de algo como:

\begin{figure}[tb]
\iftwocolumn\includegraphics[width=0.7\linewidth]{FiguresDouble/figure.eps}
\else\includegraphics[width=0.5\linewidth]{FiguresSingle/figure.eps}
\fi

Responder1

\linewidthou \columnwidthdeveria funcionar, já que um não- twocolumndocumento consiste tecnicamente em uma única coluna (de largura \columnwidth).

No entanto, se você estiver usando o twocolumnmodo tradicional de (digamos)article, a condição \if@twocolumnestará disponível para teste/ramificação.

Aqui está um pequeno exemplo mostrando a diferença:

\documentclass{article}
\usepackage{graphicx,showframe}% http://ctan.org/pkg/{graphicx,showframe}
\begin{document}
\noindent
\makeatletter%
\if@twocolumn%
  \includegraphics[width=\columnwidth]{example-image-a}%
\else% \@twocolumnfalse
  \includegraphics[width=\columnwidth]{example-image-b}%
\fi
\makeatother
\end{document}

Observe que você precisa do uso de um par \makeatletter... \makeatother, pois a definição do comando da condicional contém @. VerO que fazer \makeatlettere \makeatotherfazer?

Responder2

Aqui está como criei uma condicional para fazer coisas diferentes com uma ou duas colunas:

\documentclass[onecolumn]{article}
\begin{document}

\makeatletter
\if@twocolumn
\newcommand{\whencolumns}[2]{
#2
}
\else
\newcommand{\whencolumns}[2]{
#1
}
\fi
\makeatother

\whencolumns{One Column}{Two Columns}
\end{document}

Quando isso for definido, você pode fazer a pergunta original como:

\whencolumns{
 \includegraphics[width=0.5\linewidth]{FiguresSingle/figure.eps}
}{
 \includegraphics[width=0.7\linewidth]{FiguresDouble/figure.eps}
}

Este método pressupõe que o documento inteiro tenha uma ou duas colunas e não esteja alternando.

informação relacionada