我是 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}