دو فاصله عمودی وجود دارد: \abovecaptionskip و \belowcaptionskip. \abovecaptionskip فاصله \caption تا چیزی هست که قبل از خودش قرار میگیره و \belowcaptionskip فاصله \caption از چیزی که بعد از خودش قرار میگیره. در لاتک اندازه این دو پارامتر بصورت پیشفرض این هست:
\setlength\abovecaptionskip{10\p@}
\setlength\belowcaptionskip{0\p@}
حالا پاسخ سوال شما بستگی به این پیدا میکنه که دستور \caption را قبل از شکل استفاده میکنی یا بعد از شکل. اگر قبل از شکل استفاده میکنی باید مقدار \belowcaptionskip رو تغییر بدهی اما اگر بعد از شکل استفاده میکنی باید مقدار \abovecaptionskip رو تغییر بدهی.
یک نمونه
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{xepersian}
\settextfont{Yas}
\setlength\abovecaptionskip{0pt}
\begin{document}
\begin{figure}
\centering
\includegraphics{demo}
\caption{این یک شکل است.}
\end{figure}
\end{document}
خروجی بصورت زیر خواهد بود:
