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.,
.pdfforpdflatex)? - Package Inclusion: Have you included
\usepackage{graphicx}in your preamble? - Compilation Errors: Check your
.logfile 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.