Inserting images in LaTeX
Categories:
Mastering Image Insertion in LaTeX Documents

Learn how to effectively include and position images in your LaTeX documents using the graphicx
package, covering common scenarios and best practices.
Inserting images is a fundamental requirement for creating professional and visually appealing LaTeX documents, whether for academic papers, reports, or presentations. LaTeX provides robust tools, primarily through the graphicx
package, to manage image inclusion, scaling, and positioning. This article will guide you through the essential commands and environments to seamlessly integrate graphics into your work.
The graphicx
Package: Your Gateway to Graphics
The graphicx
package is the standard and most powerful way to include external graphics in LaTeX. It provides the \includegraphics
command, which is highly configurable. Before you can use it, you must declare the package in your document's preamble using \usepackage{graphicx}
. LaTeX supports various image formats, but for PDFLaTeX, it's best to use PDF, PNG, or JPG. For standard LaTeX (DVI output), EPS is the preferred format.
\documentclass{article}
\usepackage{graphicx}
\begin{document}
This is a document with an image.
\includegraphics[width=0.5\textwidth]{example-image-a}
\end{document}
Basic image inclusion using \includegraphics
.
image.png
) unless you are using a mix of formats for different compilers (e.g., image.eps
for latex
and image.pdf
for pdflatex
). PDFLaTeX automatically selects the correct format if multiple exist with the same base name.Controlling Image Size and Position
The \includegraphics
command accepts optional arguments in square brackets []
to control the image's size and rotation. Common options include width
, height
, scale
, and angle
. For precise positioning and captions, images are typically placed within a figure
environment. This environment treats the image as a floating object, allowing LaTeX to place it optimally while maintaining document flow.
\begin{figure}[htbp]
\centering
\includegraphics[width=0.8\textwidth, angle=90]{my_diagram.pdf}
\caption{A rotated diagram illustrating the process flow.}
\label{fig:process_diagram}
\end{figure}
Image inclusion within a figure
environment with scaling, rotation, caption, and label.
The [htbp]
options in the figure
environment are placement specifiers:
h
: Here (try to place the float approximately at the same point in the text where it occurs)t
: Top (place at the top of the page)b
: Bottom (place at the bottom of the page)p
: Page (place on a separate float page)
Using \centering
ensures the image is horizontally centered within the column or text width. The \caption
command provides a descriptive title, and \label
allows you to cross-reference the figure elsewhere in your document using \ref{fig:process_diagram}
.
flowchart TD A[Start LaTeX Document] --> B{Include graphicx package?} B -- Yes --> C[\usepackage{graphicx}] B -- No --> D[Error: Undefined control sequence] C --> E{Image file type?} E -- PDF/PNG/JPG (pdflatex) --> F[\includegraphics{image.pdf}] E -- EPS (latex) --> G[\includegraphics{image.eps}] F --> H{Need caption/float?} G --> H H -- Yes --> I[\begin{figure} \centering \includegraphics \caption \label \end{figure}] H -- No --> J[Direct \includegraphics] I --> K[Compile Document] J --> K K --> L[View Output (PDF/DVI)]
Workflow for inserting images in LaTeX.
C:/Users/Me/Documents/image.png
). Instead, place your images in the same directory as your .tex
file or in a subdirectory (e.g., images/my_image.png
) and use relative paths. This makes your document portable.Advanced Options and Troubleshooting
The \includegraphics
command offers many more options. For instance, trim
and clip
can be used to crop images, while keepaspectratio
ensures that scaling doesn't distort the image. If you encounter issues like images not appearing or incorrect placement, check the following:
- File Path: Is the image file in the correct directory, and is the path specified correctly?
- File Extension: Is the extension correct for your compiler (e.g.,
.pdf
forpdflatex
)? - Package Inclusion: Have you included
\usepackage{graphicx}
in your preamble? - Compilation Errors: Check your
.log
file for specific error messages related to image loading. - Float Placement: If an image isn't appearing where you expect, LaTeX might be placing it on a subsequent page due to space constraints. Try adjusting the float placement options (
[h!tbp]
) or reducing the image size.
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth, trim=1cm 2cm 3cm 4cm, clip]{another_image.jpg}
\caption{An image cropped from all sides.}
\label{fig:cropped_image}
\end{figure}
Example of using trim
and clip
to crop an image.
The trim
option takes four values: left bottom right top
. These values specify how much to trim from each side of the image. The clip
option must also be present for trim
to take effect.