.大家好,tex.se 社区,
当我将一个图片放在 overpic 环境中时,我遇到了一个问题\frame
。框架的顶部边框与图片重叠。
这是错误还是命令使用错误\frame
?我在互联网或 tex.se 上找不到任何信息。
我只是想在图像周围添加一个框架。
以下是 mwe:
\documentclass{article}
\usepackage{graphicx}
\usepackage{overpic}
\begin{document}
\begin{figure}
\centering
\frame{\includegraphics[width=0.7\textwidth]{foo}}
\caption{framed figure include with \emph{includegraphics}.}
\end{figure}
\begin{figure}
\centering
\frame{\begin{overpic}[width=0.7\textwidth]{foo}
\put(50,20){foo}
\end{overpic}}
\caption{framed figure include with \emph{overpic}.}
\end{figure}
\end{document}
编辑1
问题似乎不是出在查看器和细边框渲染上。请查看使用 xpdf 和 evince 渲染 pdf 的屏幕截图。在本例中,图像是一个灰色方块,横跨框架的右边框。
由 cfr 编辑
下面的图片可以用来重现该问题:
改编的MWE:
\documentclass{article}
\usepackage{graphicx}
\usepackage{overpic}
\begin{document}
\begin{figure}
\centering
\frame{\includegraphics[width=0.7\textwidth]{img}}
\caption{framed figure include with \emph{includegraphics}.}
\end{figure}
\begin{figure}
\centering
\frame{\begin{overpic}[width=0.7\textwidth]{img}
\put(50,10){foo}
\end{overpic}}
\caption{framed figure include with \emph{overpic}.}
\end{figure}
\end{document}
影响:
答案1
部分解决方案
[使用 overpic 包 v0.53 2010/09/13]
可能的解释
overpic 包对图像的尺寸进行操作,以适应用于定位重叠对象的局部基础。这些操作中似乎存在一些近似值,导致局部基础上的图像尺寸错误。由于图像相对于左下角放置,因此它会越过右侧或顶部的图片框。
解决方案
看起来,当使用选项 或 加载包时,图像尺寸的近似值会有所不同percent
。permil
在abs
我
的例子中,permil
选项似乎没有引入任何错误,并且具有正确的框架图像。
错误修复?
我查看了 overpic.sty 文件,但我根本不是 TeX 专家。
如果有人能证实我的想法,我们可以解决这个问题。
它只有一百行文件。
答案2
这是您的查看器的一个产物,但您可以避免这个问题。
我懂了
正如你所见,两者都失去了一些边缘,但放大后发现
显示所有边缘。
但是,你可以在图像后绘制框架,使其位于顶部,从而使 pdf 不那么精致:
第 2 页在所有缩放级别下显示如下:
\documentclass{article}
\usepackage{graphicx}
\usepackage{overpic}
\begin{document}
\begin{figure}
\centering
\frame{\includegraphics[width=0.5\textwidth]{house}}
\caption{framed figure include with \emph{includegraphics}.}
\end{figure}
\begin{figure}
\centering
\frame{\begin{overpic}[width=0.5\textwidth]{house}
\put(50,20){foo}
\end{overpic}}
\caption{framed figure include with \emph{overpic}.}
\end{figure}
\clearpage
\begin{figure}
\centering
\sbox0{\includegraphics[width=0.5\textwidth]{house}}%
\usebox{0}%
\kern-\wd0\frame{\phantom{\usebox0}}
\caption{framed figure include with \emph{includegraphics}.}
\end{figure}
\begin{figure}
\centering
\sbox0{\begin{overpic}[width=0.5\textwidth]{house}
\put(50,20){foo}
\end{overpic}}%
\usebox{0}%
\kern-\wd0\frame{\phantom{\usebox0}}
\caption{framed figure include with \emph{overpic}.}
\end{figure}
\end{document}