43

I m importing one image in latex document. But caption has bigger font than my normal text on page.

\documentclass{article}
\usepackage{graphicx}

\begin{document}

  Some text...

  \begin{figure}[htb]
  \begin{center}
  \includegraphics[height=1in,width=1in,angle=-90]{foo}
  \caption{This is a figure.}
  \end{center}
  \end{figure}

   More text...

  \end{document}

How to reduce the font size of caption and space between caption and image?

60

You can do it with caption package. The space between the caption and the figure is called skip (default is 10pt).

\documentclass{article}
\usepackage[demo]{graphicx} %% Remove [demo] in your file
%\usepackage{caption}
%\captionsetup[table]{font=small,skip=0pt}     %% Adjust here
%or equivalently 
\usepackage[font=small,skip=0pt]{caption}

\begin{document}

  Some text...

  \begin{figure}[htb]
  \begin{center}
  \includegraphics[height=1in,width=1in,angle=-90]{foo}
  \caption{This is a figure.}
  \end{center}
  \end{figure}

   More text...

  \begin{table}[htb]
  \centering
  \caption{This is a table.}
  \begin{tabular}{|c|c|}
    \hline
    % after \\: \hline or \cline{col1-col2} \cline{col3-col4} ...
    1 & 2 \\
    4 & 7 \\
    \hline
  \end{tabular}
  \end{table}

     More text...

  \end{document}

enter image description here

Please note that \captionsetup{font=small,skip=0pt} affects both tables and figures. If you want it separately, you may use:

 \captionsetup[table]{font=small,skip=0pt}

for tables only or

\captionsetup[figure]{font=small,skip=0pt}

for figures only.

  • 1
    I was about to edit my answer to contain the explanation but you already have it in yours so I am deleting my answer :) – hpesoj626 Jan 16 '13 at 5:03
  • 1
    As much as I enjoy earning reputation, I enjoy better answers more. :) Making mine better is out of the question since it will look like a duplicate of your answer. +1 anyway. – hpesoj626 Jan 16 '13 at 5:10
  • 1
    @hpesoj626 Nice of you. I basically enjoy troubleshooting (and learning in turn). Everything comes next :-) – user11232 Jan 16 '13 at 5:15
  • 1
    @user15662 The setup here will affect both figures and tables. If you want to separate caption settings for tables and figures set \captionsetup[table]{} and \captionsetup[figure]{} separately. – hpesoj626 Jan 16 '13 at 6:52
  • 1
    How do I change the value of skip locally ? Not for all the document. – LMT-PhD May 7 '14 at 8:43
4

For locally change the caption position you can also use a negative value on the setting. For example, when the figure has larger white part, e.g use \vspace{-1cm}, instead of changing the figure itself.

4

A brute force \vspace{1pt} just before the caption, inside any figure, also works if one wants to change spacings locally.

  • 3
    Always? Surely not. This should add absolutely no correction in terms of the vertical spacing (since you've added 0pt). Can you elaborate? – Werner Apr 27 '17 at 19:37
  • If you replace 0 with other numbers of course. I edited the answer for clarity, thank you. – Carlo Galli Jul 16 '18 at 12:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.