У меня получился следующий пример:
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper, margin=2cm]{geometry}
\usepackage[brazil]{babel}
\usepackage{array,ragged2e}
\begin{document}
\section{Riscos}
\begin{tabular}{|p{2.5cm}|p{2.5cm}|p{2.0cm}|p{2.0cm}|p{2.5cm}|p{2.5cm}|}
\hline Riscos & Probabilidade & Impacto & Prioridade & Resposta & Prevenção \\ \hline
\hline Problemas com notebook & Baixa & Médio & Alta & Usar desktop & Manutenção preventiva \\
\hline Problemas com o desktop & Baixa & Alto & Alta & Usar o labUFSC & Manutenção preventiva \\
\hline Problemas com perda de dados & Baixa & Alto & Alta & Uso do backup & Backup periódicos \\
\hline Problemas de Saúde & Baixa & Alto & Alta & Tratamento adequado & Cuidados diários apropriados \\ \hline
\end{tabular}
\end{document}
Что генерирует этот PDF-файл:
Буква o
, указанная на изображении, не должна быть размещена/выровнена по правому краю пробела. Я думаю, что латекс должен уметь определять такую аберрацию.
У меня вопрос: есть ли способ заставить Latex автоматически не выравнивать текст по ширине, если слова слишком редки, как в примере выше?
Я долго искал и обнаружил, что могу вручную заставить некоторые слова не быть плохо выровненными, однако мне не нравится идея делать это вручную, потому что это может сделать автоматически сам latex, когда выполняются определенные условия, то есть, когда пересекаются определенные пределы интервалов.
Обновлять
Отвечая на комментарий, я бы хотел, чтобы latex не выравнивал слова, если они выходят за пределы минимальной ширины, и соответственно количеству символов в текущей строке.
Например, если строка содержит менее 50 символов и выравнивание приведет к образованию пробела размером более 30 пикселей или 6 символов, то выравнивание для этой строки применять нельзя.
решение1
Вот три версии таблицы с использованием
пакеты
array
иragged2e
вставлять\RaggedRight
в начало каждой ячейки; это дает больше возможностей для переносов строк, что полезно для узких столбцов.пакет
array
для вставки\raggedright
в начало каждой ячейки; это приводит к меньшему количеству переносов строк, но текст выравнивается по левому краю.пакеты
array
иbooktabs
; это похоже на вторую версию, но без вертикальных линий.
массив, ragged2e и \RaggedRight
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper, margin=2cm]{geometry}
\usepackage[brazil]{babel}
\usepackage{array,ragged2e}
\begin{document}
\noindent
\begin{tabular}{|*2{>{\RaggedRight\arraybackslash}p{2.5cm}|}
*2{>{\RaggedRight\arraybackslash}p{2.0cm}|}
*2{>{\RaggedRight\arraybackslash}p{2.5cm}|}}
\hline Riscos & Probabilidade & Impacto & Prioridade & Resposta & Prevenção \\ \hline
\hline Problemas com notebook & Baixa & Médio & Alta & Usar desktop & Manutenção preventiva \\
\hline Problemas com o desktop & Baixa & Alto & Alta & Usar o labUFSC & Manutenção preventiva \\
\hline Problemas com perda de dados & Baixa & Alto & Alta & Uso do backup & Backup periódicos \\
\hline Problemas de Saúde & Baixa & Alto & Alta & Tratamento adequado & Cuidados diários apropriados \\ \hline
\end{tabular}
\end{document}
массив и \raggedright
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper, margin=2cm]{geometry}
\usepackage[brazil]{babel}
\usepackage{array}
\begin{document}
\noindent
\begin{tabular}{|*2{>{\raggedright\arraybackslash}p{2.5cm}|}
*2{>{\raggedright\arraybackslash}p{2.0cm}|}
*2{>{\raggedright\arraybackslash}p{2.5cm}|}}
\hline Riscos & Probabilidade & Impacto & Prioridade & Resposta & Prevenção \\ \hline
\hline Problemas com notebook & Baixa & Médio & Alta & Usar desktop & Manutenção preventiva \\
\hline Problemas com o desktop & Baixa & Alto & Alta & Usar o labUFSC & Manutenção preventiva \\
\hline Problemas com perda de dados & Baixa & Alto & Alta & Uso do backup & Backup periódicos \\
\hline Problemas de Saúde & Baixa & Alto & Alta & Tratamento adequado & Cuidados diários apropriados \\ \hline
\end{tabular}
\end{document}
массив, booktabs и \raggedright
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[a4paper, margin=2cm]{geometry}
\usepackage[brazil]{babel}
\usepackage{array,booktabs}
\begin{document}
\noindent
\begin{tabular}{*2{>{\raggedright\arraybackslash}p{2.5cm}}
*2{>{\raggedright\arraybackslash}p{2.0cm}}
*2{>{\raggedright\arraybackslash}p{2.5cm}}}
\toprule
Riscos & Probabilidade & Impacto & Prioridade & Resposta & Prevenção \\
\midrule
Problemas com notebook & Baixa & Médio & Alta & Usar desktop & Manutenção preventiva \\
\midrule
Problemas com o desktop & Baixa & Alto & Alta & Usar o labUFSC & Manutenção preventiva \\
\midrule
Problemas com perda de dados & Baixa & Alto & Alta & Uso do backup & Backup periódicos \\
\midrule
Problemas de Saúde & Baixa & Alto & Alta & Tratamento adequado & Cuidados diários apropriados \\
\bottomrule
\end{tabular}
\end{document}