图像周围的边框

图像周围的边框

我是 LaTeX 新手。我正在使用其他人创建的模板,我想进行修改。该模板使用子函数来创建图形,我想为所有图像添加边框。

我现在插入一个这样的图:

\munepsfig[width=5in]{CG289}{CG289}

munepsfig是在文件中创建的子函数.sty。子函数如下所示:

\newcommand{\munepsfig}[3][scale=1.0]{%
    \begin{figure}[!htbp]
        \centering
        \vspace{2mm}
        \includegraphics[#1]{figures/#2.png}
        \caption{#3}
        \label{fig:#2}
    \end{figure}
}

我尝试了网上的许多建议,但似乎什么都没出现——图形总是显示没有变化,或者脚本失败。我只是在寻找一个我可以选择厚度的黑色边框。

答案1

要获取图像的边框,可以使用命令\framebox{}。要定义规则的宽度,可以使用命令\setlength{\fboxrule}{0.5pt}

两者结合导致以下结果

\newcommand{\munepsfig}[4][scale=1.0]{% <===============================
    \begin{figure}[!htbp]
        \centering
        \vspace{2mm}
        \setlength{\fboxrule}{#4} % <===================================
        \framebox{\includegraphics[#1]{#2.png}} % <=====================
        \caption{#3}
        \label{fig:#2}
    \end{figure}
}

现在您可以使用命令

%\munepsfig[option]{figure}{caption}{fboxrule}
\munepsfig[width=5cm]{example-image}{caption of figure}{1pt}

打印example-image带有边框的图像1pt

完整的 MWE

\documentclass{article}

\usepackage{graphicx}

\newcommand{\munepsfig}[4][scale=1.0]{% <===============================
    \begin{figure}[!htbp]
        \centering
        \vspace{2mm}
        \setlength{\fboxrule}{#4} % <===================================
        \framebox{\includegraphics[#1]{#2.png}} % <=====================
        \caption{#3}
        \label{fig:#2}
    \end{figure}
}

\begin{document}

%\munepsfig[option]{figure}{caption}{fboxrule}
\munepsfig[width=5cm]{example-image}{caption of figure}{1pt}

\munepsfig[width=5cm]{example-image-a}{caption of figure2}{0.5pt}

\end{document}

给你:

生成的图像

要消除图像和规则之间的空格,请使用命令\setlength{\fboxsep}{0pt}。请参阅以下新的 MWE

\documentclass{article}

\usepackage{graphicx}

\newcommand{\munepsfig}[4][scale=1.0]{% <===============================
    \begin{figure}[!htbp]
        \centering
        \vspace{2mm}
        \setlength{\fboxrule}{#4} % <===================================
        \setlength{\fboxsep}{0pt} % <===================================
        \framebox{\includegraphics[#1]{#2.png}} % <=====================
        \caption{#3}
        \label{fig:#2}
    \end{figure}
}

\begin{document}

%\munepsfig[option]{figure}{caption}{fboxrule}
\munepsfig[width=5cm]{example-image}{caption of figure}{1pt}

\munepsfig[width=5cm]{example-image-a}{caption of figure2}{0.5pt}
\end{document}

生成 pdf 文件:

在此处输入图片描述

答案2

有了pstricks它,实现这一点相当容易。

 \documentclass{article}
 \usepackage{pstricks}
 \usepackage{graphicx}
 \newcommand{\munepsfig}[4][scale=1.0]{%
     \begin{figure}[!htbp]
         \centering
         \vspace{2mm}
         \psframebox[linewidth=#4]{\includegraphics[#1]{figures/#2.eps}}
         \caption{#3}
         \label{fig:#2}
     \end{figure}
 }

 \begin{document}
 \munepsfig[scale=0.5]{MarmotOutlook}{Outlook.}{2pt}

 \end{document}

编辑:现在同样的事情TiKz

 \documentclass{article}
 \usepackage{tikz}
 \usepackage{graphicx}
 \newcommand{\munepsfig}[4][scale=1.0]{%
     \begin{figure}[!htbp]
         \centering
         \vspace{2mm}
         \tikz\node[draw=black,line width=#4](#2){\includegraphics[#1]{figures/#2.png}};
         \caption{#3}
         \label{fig:#2}
     \end{figure}
 }

 \begin{document}
 \munepsfig[scale=0.5]{MarmotOutlook}{Outlook.}{2pt}

 \end{document}

相关内容