У меня есть следующая структура таблицы, где мой текст подписи отказывается быть правильно набранным. Обычный текст над ним красиво набран с переносами и пробелами, но заголовок выглядит ужасно:
Мой код:
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[a4paper,lmargin = {2.5cm},rmargin = {2.5cm},tmargin = {2.5cm},bmargin =
{2.5cm}]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage[parfill]{parskip}
\usepackage{tabularx}
\usepackage{caption}
\DeclareCaptionLabelSeparator{period-newline}{. \\}
\captionsetup{labelfont=bf, labelsep=period, format=plain, labelsep=period-newline, justification=raggedright,singlelinecheck=false,font=small}
\usepackage{floatrow}
\floatsetup[table]{font=small, position=top}
\usepackage{booktabs}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\begin{document}
\begin{table}[h]
\caption{\textbf{Title.} \\ \smallskip \footnotesize{Lorem ipsum dolor sit amet,
consectetur adipiscing elit. Mauris dolor dui, lacinia sodales condimentum nec,
malesuada vel libero. Vivamus eget ipsum non lacus lacinia tincidunt sit amet eu
metus. Fusce venenatis accumsan dui, ac commodo lorem aliquam ut. Curabitur volutpat
urna purus. Nullam in ex sed enim feugiat ornare. Fusce sit amet auctor enim.
Praesent nec ex eu massa feugiat tristique..}}
\centering
\begin{tabularx}{\textwidth}{lYYYYYYYYYYY}
\toprule
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10\\
\midrule
Low & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\
2 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\
3 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
Интересно, вызывает ли это мой довольно сложный код подписи? Есть ли лучший способ получить аналогичный конечный результат или этот набор можно исправить каким-то другим способом?





Вы отключаете переносы для своих подписей с помощью justification=raggedright в настройках подписи. Либо удалите это полностью, чтобы получить выравнивание текста для всех подписей, либо локально переключитесь обратно на текст с дефисом для определенных подписей. То же самое касается размера шрифта.
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[a4paper,lmargin = {2.5cm},rmargin = {2.5cm},tmargin = {2.5cm},bmargin =
{2.5cm}]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage[parfill]{parskip}
\usepackage{tabularx}
\usepackage{caption}
\DeclareCaptionLabelSeparator{period-newline}{. \\}
\captionsetup{labelfont = {small,bf}, labelsep=period, format=plain, labelsep=period-newline, justification=justified,singlelinecheck=false,font=footnotesize}
\usepackage{floatrow}
\floatsetup[table]{font=small, position=top}
\usepackage{booktabs}
\newcolumntype{Y}{>{\centering\arraybackslash}X}
\begin{document}
Lorem ipsum dolor sit amet,
consectetur adipiscing elit. Mauris dolor dui, lacinia sodales condimentum nec,
malesuada vel libero. Vivamus eget ipsum non lacus lacinia tincidunt sit amet eu
metus. Fusce venenatis accumsan dui, ac commodo lorem aliquam ut. Curabitur volutpat
urna purus. Nullam in ex sed enim feugiat ornare. Fusce sit amet auctor enim.
Praesent nec ex eu massa feugiat tristique..
\begin{table}[h]
\caption[short version for list of tables]{{\small \textbf{Title.}\smallskip\par} Lorem ipsum dolor sit amet,
consectetur adipiscing elit. Mauris dolor dui, lacinia sodales condimentum nec,
malesuada vel libero. Vivamus eget ipsum non lacus lacinia tincidunt sit amet eu
metus. Fusce venenatis accumsan dui, ac commodo lorem aliquam ut. Curabitur volutpat
urna purus. Nullam in ex sed enim feugiat ornare. Fusce sit amet auctor enim.
Praesent nec ex eu massa feugiat tristique..}
\centering
\begin{tabularx}{\textwidth}{lYYYYYYYYYYY}
\toprule
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10\\
\midrule
Low & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\
2 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\
3 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
Огромное спасибо, теперь это выглядит великолепно! Первоначально я использовал raggedright, чтобы выровнять его по левому краю, поэтому я не понимал, что это проблема. Что касается размера текста: я хочу, чтобы не выделенная жирным шрифтом часть была меньше. Не мог придумать другой способ сделать такую стилизацию
justification=RaggedRightиспользует алгоритм изragged2eи сочетает выравнивание по левому краю с расстановкой переносов, если вы хотите и то, и другое.geometryпринимает необязательныйmargin, который применяет одинаковое значение ко всем полям. Однако в вашем коде есть ошибка!\footnotesizeявляется переключателем и не принимает внутренний параметр. Скобки{}ничего не делают, а\footnotesizeприменяется ко всему контексту.{\footnotesize ...}, с другой стороны, будет применяться только к внутренней группе. Ошибка скрыта в заголовке, потому что последний, тем не менее, образует группу.