I'm using the IEEEtrans document class and sometimes the figure caption

Fig. n: label

looks like

Fig. n: label

where the space after the “Fig.” is stretched.

How do I make the next space after “Fig.” fixed width?

I have tried the commands \enspace and \kern 0.33em which I found on this link What's the easiest way of putting a fixed-width space? but neither works.

I cannot use the \spaceskip command as proposed here Fixed-width interword space because I don't know where to turn it off. I need to fix the width of the next space but not all spaces in the environment.

Thank you for your time.

  • I use a non-breaking space in these cases: Fig.~n.
    – schtandard
    Commented Oct 12, 2021 at 11:47
  • I though about this too, but I think that this would require me to edit the IEEEtrans class file, which I would prefer to avoid. I'll do it, if no other solution is suggested. Thanks.
    – wos
    Commented Oct 12, 2021 at 11:49
  • Well, you could also use \frenchspacing if you don't want spaces of varying widths anywhere. But if you want to change just the space in figure captions, you will have to modify the macros that place them.
    – schtandard
    Commented Oct 12, 2021 at 11:57

1 Answer 1


The IEEEtran class has


You can solve your problem by saying, before \begin{document},

\def\fnum@figure{\mbox{\figurename\ }\thefigure}

so the space after \figurename will not be influenced by the space factor of the period and be fixed because it appears in a box.

  • Don't you have to still add a \space (or ~ or something) after \@? The space in the input should be discarded, right?
    – schtandard
    Commented Oct 12, 2021 at 12:24
  • 1
    @schtandard Oh, dear, yes! Here @ is a letter! Thanks for noting.
    – egreg
    Commented Oct 12, 2021 at 12:25
  • Thank you. This solved the issue.
    – wos
    Commented Oct 13, 2021 at 8:08

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .