
Я использую команду \usepackage[font=footnotesize]{caption}
, чтобы изменить размер шрифта подписи к моим рисункам. Это работает нормально, если подпись занимает только одну строку. Но если подпись очень длинная и занимает две строки, размер шрифта второй строки остается неизменным. Как это исправить?
\documentclass[11pt,letterpaper,colorlinks=true,linkcolor=blue,citecolor=blue,urlcolor=blue]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[english]{babel}
\usepackage{hyperref}
\usepackage{graphicx}
\usepackage[font=footnotesize]{caption}
\begin{document}
\begin{equation} \label{a}
A
\end{equation}
\begin{table}
\centering
\begin{tabular}{|p{0.9\linewidth}|}
\hline A \\ \hline
\end{tabular}
\caption{This text here is in footnotesize as required. Now comes a reference \hyperref[a]{(\ref*{a})}}. Why is this text and the reference \hyperref[a]{(\ref*{a})} large? And why does LaTeX make the linebreak before the dot?
\end{table}
\end{document}
решение1
Вы сравниваете содержимое подписи с текстом документа, т. е. Ваша подпись заканчивается сразу после команды \hyperref[a]{(\ref*{a})}
. Точка уже вышла за пределы подписи.
Видеть:
\documentclass[11pt,letterpaper,
colorlinks=true,linkcolor=blue,citecolor=blue,
urlcolor=blue]{scrartcl}
\usepackage{lmodern}
\usepackage[english]{babel}
\usepackage[font=footnotesize]{caption}
\usepackage{hyperref}
\usepackage{lipsum}
\begin{document}
\begin{equation} \label{a}
A
\end{equation}
\begin{table}[h]
\centering
\begin{tabular}{|p{0.9\linewidth}|}
\hline A \\ \hline
\end{tabular}
\caption{This text here is in \texttt{footnotesize} as required. Now comes a reference \hyperref[a]{(\ref*{a})}% <--- here was end of caption!!!
. Why is this text and the reference large? Because this part of text was not included in caption!}
\end{table}
\lipsum[66]
\end{document}
Как видите, \hyperref[a]{(\ref*{a})}
размер шрифта текста подписи не меняется.