Estou implementando uma ideia para renderizar autores. Pelo que pude ver, nenhum outro pacote poderia fazer isso por mim, mas estou feliz em ser corrigido. A ideia é colocar os autores em diversas colunas independentes, mas minha dúvida atual é especificamente sobre as maldades que estou recebendo no MWE.
Como primeiro passo eu queria criar 3 colunas independentes e preenchê-las com conteúdo. Adicionei um pouco de cola para separar as colunas caso as linhas fiquem muito próximas. Ele faz o que eu queria, mas estou recebendo um aviso excessivo
\documentclass{article}
\begin{document}
\makebox[\textwidth][c]{
\parbox[t]{0.3\textwidth}{
\noindent{}Item 1
Item 4
Item 7
}
\hskip 10pt plus 5pt minus 5pt\relax
\parbox[t]{0.3\textwidth}{%
\noindent{}Item 2
Item 5 is a little bit longer
Item 8
}
\hskip 10pt plus 5pt minus 5pt\relax
\parbox[t]{0.3\textwidth}{%
\noindent{}Item 3
Item 6
}
}
\end{document}
Posso fazer isso desaparecer centralizando ou diminuindo a largura da minha caixa horizontal, mas alguém pode explicar por quê? Sinto que ainda estou abusando em vez de usar as macros.
Se houver uma maneira melhor de conseguir esse efeito, por favor me avise. Decidi optar por caixas em vez de mesas, mas estou feliz em revisitar. Achei que as caixas eram mais naturais quando você não sabe de antemão o número de colunas e linhas.
Responder1
Você consegue
Overfull \hbox (15.0pt too wide) in paragraph at lines 5--28
como seu exterior \makebox
é recuado, \parindent
isso \noindent
corrigiria isso, mas você também pode obter caixas cheias demais na lista interna.
Você tem uma \textwidth
caixa contendo
SPACE .3\textwidth SPACE 10pt .3\textwidth SPACE 10pt .3\textwidth SPACE
portanto, pode ou não caber, dependendo se 4 espaços de palavras + 20pt forem maiores que .1\textwidth.
\documentclass{article}
\begin{document}
\noindent\makebox[\textwidth][c]{%%%%
\parbox[t]{0.3\textwidth}{%
Item 1
Item 4
Item 7
}\hfill
\parbox[t]{0.3\textwidth}{%
Item 2
Item 5 is a little bit longer
Item 8
}\hfill
\parbox[t]{0.3\textwidth}{%
Item 3
Item 6
}%%%%
}
\end{document}
Os finais de linha marcados %
não precisam ser comentados, mas sim boa prática. Os marcados %%%%
são necessários para evitar espaços ruins.
Uma razão pela qual tabulares são frequentemente usados para este tipo de layout é que três caixas de largura igual, embora tecnicamente igualmente espaçadas e abrangendo toda a largura, parecem deslocadas para a esquerda se houver a possibilidade de ter entradas curtas.
\documentclass{article}
\begin{document}
\hrule
\noindent X\dotfill X
\noindent\makebox[\textwidth][c]{%%%%
\parbox[t]{0.3\textwidth}{
Item 1
Item 4
Item 7
}\hfill
\parbox[t]{0.3\textwidth}{%
Item 2
Item 5 is a little bit longer
Item 8
}\hfill
\parbox[t]{0.3\textwidth}{%
Item 3
Item 6
}%%%
}
\bigskip
\hrule
\noindent X\dotfill X
\noindent\makebox[\textwidth][c]{%%%%
\begin{tabular}[t]{@{}l@{}}
Item 1\\
Item 4\\
Item 7
\end{tabular}\hfill
\begin{tabular}[t]{@{}l@{}}
Item 2\\
Item 5 is a little bit longer\\
Item 8
\end{tabular}\hfill
\begin{tabular}[t]{@{}l@{}}
Item 3\\
Item 6
\end{tabular}%%%
}
\end{document}