![包含具有透明背景的 pdf 作为图像时为黑色背景](https://linux22.com/image/261396/%E5%8C%85%E5%90%AB%E5%85%B7%E6%9C%89%E9%80%8F%E6%98%8E%E8%83%8C%E6%99%AF%E7%9A%84%20pdf%20%E4%BD%9C%E4%B8%BA%E5%9B%BE%E5%83%8F%E6%97%B6%E4%B8%BA%E9%BB%91%E8%89%B2%E8%83%8C%E6%99%AF.png)
我有一个带有透明背景的 pdf 图像,我将使用 graphicx ( \includegraphics
) 将其包含进去。使用 pdfLaTeX 构建 pdf 时一切都很好,但是当我切换到 XeTeX 时,图像会突然变成黑色背景而不是透明的。我尝试重现该问题,奇怪的是,有些 pdf 图像没有出现此问题,而有些则出现。
我的 XeTeX 版本是 3.1415926-2.4-0.9998,我相信这是最新版本。如果有人想测试的话,这里有一个示例 pdf 图像:https://docs.google.com/file/d/0BxDcKKtrknW_MlZMV2lKOE5oMXc/edit
最小代码:
\documentclass[10pt]{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}[h]
\centering \includegraphics[scale=0.48]{MapReduce_Pipeline.pdf}
\caption{MapReduce Pipeline.}
\label{fig:MapReduce_Pipeline}
\end{figure}
\end{document}
答案1
PDF 文件MapReduce_Pipeline.pdf
包含带有透明蒙版的 JPEG 图像。xdvipdfmx
,XeTeX 的 PDF 驱动程序部分似乎忘记添加蒙版条目。版本 0.7.8 在 TeX Live/Linux 下运行,但在 MiKTeX/Windows 下失败。
由于 JPEG 不是此类具有锐利边缘的绘图的最佳格式,因此最好保留图像的矢量属性。也许您可以在生成图像的原始程序中找到更好的绘图 PDF 导出方式。
MapReduce_Pipeline.pdf
或者,您可以使用打开图像evince
。在那里,您可以存储(右键单击)图像对象作为 PNG 文件(PNG 具有透明度功能)。然后,您可以将 PNG 图像包含在 XeLaTeX 文档中(比例因子需要调整,或使用width=\linewidth
或类似)。