OS Xのlatex+dvipdfでコンパイルしたLatexファイルに、グラフィックを入れようとしています。しかし、Latexは次のようなエラーを返します: "Cannot determine size of graphic"
グラフィックはPowerPointからエクスポートしたものなので、.pdfと.pngの両方を試してみました。どちらも同じエラーが出ます。
動作しないサンプルコードです。
\begin{figure}[htb]
\begin{center}
\leavevmode
\includegraphics[width=0.8\textwidth]{graph.png}
\end{center}
\end{figure}
画像の寸法を手動で設定する必要がある場合、その寸法を調べる方法を教えてください。画像はテキストの幅の約80%を占め、中央に配置する必要があります。ありがとうございます。
DVI プロデュースの latex
は、PNG, JPG, PDF イメージのサイズを読み取ることをサポートしていません。これには pdflatex
を使う必要があります。実際、最近のディストリビューションでは、DVIモードでは latex
は pdflatex
となりますが、何らかの理由でPDFモードでしかサイズを読み取ることができません。しかし、natwidth
と natheight
を使って画像の自然なサイズを指定することができ、latex
をエラーなくコンパイルすることができます。生成されたDVIファイルはPDFにリンクするだけなので、DVI-to-PDFコンバータは最終的なPDFにそれを含める必要があります。事実上、dvpdf
はこれをサポートしていませんが、dvipdfm
はサポートしています。
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\includegraphics[width=0.8\textwidth,natwidth=610,natheight=642]{tiger.pdf}
\end{figure}
\end{document}
のいずれかでコンパイルします。
pdflatex <file base>
または
latex <file base>
dvipdfm <file base>
**ラテックスを使わないソリューション
非常に早い解決策は、png
ファイルをeps
フォーマットに変換することです。Inkscapeなどのグラフィックソフトを使えば簡単にできます。
つまり、Inkscape
でファイルを開いて、SaveAs
でeps
フォーマットを選択するだけでいいのです。
次に、tex
ファイルの拡張子を次のように変更します。
\includegraphics[width=0.8\textwidth]{tiger.png}
から
\includegraphics[width=0.8\textwidth]{tiger.eps}