设置 \newcommand 的行距

设置 \newcommand 的行距

我添加了一个 \newcommand,“Source”,用于在图片标题后添加图片的来源。但是,我发现调整来源和标题之间的间距存在一些问题。我的代码:

\documentclass{article}
\renewcommand{\baselinestretch}{1.25} 
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{graphicx}  
\graphicspath{{./images/}}
\usepackage{caption}
\usepackage{subcaption}
\newcommand{\source}[1]{\caption*{Source: {#1}}}  % define a new style of caption, "source"
\begin{document}
\begin{figure}[ht]
    \centering
    \includegraphics[width=0.8\textwidth]{DS products & service.png}
    \caption{Some products and services 3DS provides}
    \source{Dassault systèmes website, \url{https://www.3ds.com/products-services/}}
    \label{fig:prodService}
\end{figure}
\end{document}

结果如下图所示。红色箭头指向的行距太宽,该如何调整? 在此处输入图片描述

答案1

您可以在定义中添加一些负垂直空间\source

\documentclass{article}
\usepackage[left=1cm,right=1cm]{geometry}
\usepackage{hyperref}
\renewcommand{\baselinestretch}{1.25} 
\usepackage[demo]{graphicx}  
\usepackage{caption}
\usepackage{subcaption}
\newcommand{\source}[1]{\vspace{-1Em}\caption*{Source: {#1}}}  % define a new style of caption, "source"
\begin{document}
\begin{figure}[ht]
    \centering
    \includegraphics[width=0.8\textwidth]{DS products & service.png}
    \caption{Some products and services 3DS provides}
    \source{Dassault systèmes website, \url{https://www.3ds.com/products-services/}}
    \label{fig:prodService}
\end{figure}
\end{document}

在此处输入图片描述

答案2

由于您正在使用caption包,因此更明智的方法是使用宏\captionsetup内部\souce来删除间距。

\newcommand{\source}[1]{\captionsetup{aboveskip=0pt}\caption*{Source: {#1}}}

因此,无需目测来\vspace使其看起来正常,无论全局间距设置如何,所提出的方法都将有效。

相关内容