我有 PNG 图像,想将其引入到演示文稿中。该图是黑白的,边缘很小。当我用 编译文件时,pdflatex
一切都很好,但是当我用 编译它时,xelatex
我收到!dimension too large
错误:
[1] <use "./figs/surface.png" > [2]
! Dimension too large.
<to be read again>
b
l.31 \end{frame}
我使用的线路:
\includegraphics<2> [width=0.8\textwidth]{./figs/surface.png}\par
以及文件:
以下是 MWE:
\documentclass[bigger]{beamer}
\begin{document}
\begin{frame}{Coarse-Grained (CG) simulation of a membrane}
\begin{columns}
\begin{column}{0.6\textwidth}
\includegraphics<2> [width=0.8\textwidth]{./figs/surface.png}\par
\includegraphics<3> [width=1.0\textwidth]{./figs/a_lipid_CG.jpg}
\end{column}
\begin{column}{0.4\textwidth}
\begin{itemize}
\item bla
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\end{document}
以下是所用文件的链接: http://www.4shared.com/photo/EK4CPOF2/a_lipid_CG.html http://www.4shared.com/photo/un7JtzXa/surface.html
答案1
这a_lipid_CG.jpg
似乎是导致问题的原因。如下所述,此特定 JPG 似乎与 XeTeX 不兼容。
我使用以下 MWE 遇到了同样的错误:
\documentclass{beamer}
\begin{document}
\begin{frame}
\includegraphics{a_lipid_CG.jpg}
\end{frame}
\end{document}.
请注意,这[1] <use "./figs/surface.png" > [2]
不是错误消息的一部分,而只是在它之前打印的信息消息。
在通过 Image Magick 转换工具运行 JPG 图像convert
(即,convert a_lipid_CG.jpg a_lipid_CG2.jpg
用这个新的 JPG 文件测试文档)后,错误消失。这使我得出结论,您的特定 JPG 文件与 XeTeX 不完全兼容。显然,XeTeX 在从 JPG 的元数据读取大小时存在问题,这不知何故导致了“太大”错误。
要解决此问题,请在图像处理程序中打开 JPG 文件并再次保存。
答案2
与 @Martin-Scharrer 所说的类似,convert
/mogrify
也适用于我,但只能通过明确添加解决方案,而解决方案似乎缺失了。因此,以下方法解决了该问题(顺便说一下,这些文件是用 matplotlib 生成的):
mogrify -density 90 myfile.png