Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have a figure that is wider than the \textwidth of my document. (I don't want to change the \textwidth.) As a result, the leftmost part of the figure is flush with the left margin, while the rightmost part spills into the right margin too much. I'd like to center the figure, so that it will exceed the \textwidth equally on both sides.

share|improve this question
add comment

3 Answers

up vote 61 down vote accepted

Put the content of your figure environment into a \makebox[\textwidth][c]{...} macro. This will center its content to the normal text width even if it is wider than that. See also my similar answer to Place figures side by side, spill into outer margin.

The image can also be aligned to the left and right using [l] and [r], which makes the image lap into the right or left margin, respectively.

Example:

\documentclass{article}
\usepackage{graphicx}
\begin{document}

\begin{figure}
  \makebox[\textwidth][c]{\includegraphics[width=1.2\textwidth]{image}}%
  \caption{Caption}
  \label{fig:key}
\end{figure}
\end{document}

Starting from 2011/08/13 you can also use adjustbox package for such alignments. For centering use the center=<length> which centers the content in the given length. The length is optional and defaults to \linewidth which is normally identical to \textwidth. There is also left and right as well as inner and outer.

\documentclass{article}
\usepackage[export]{adjustbox}[2011/08/13]
\begin{document}

\begin{figure}
  \includegraphics[width=1.2\textwidth,center]{image}%
  \caption{Caption}
  \label{fig:key}
\end{figure}
\end{document}
share|improve this answer
    
Perfect. Thank you. –  ℝaphink Aug 1 '11 at 14:01
1  
I'm just adding a new center option to adjustbox which will do this automatically. –  Martin Scharrer Aug 1 '11 at 14:08
    
that's great new feature :) –  zfm Nov 8 '11 at 18:37
2  
At tex.stackexchange.com/a/57709/2552 there's the suggestion of using \centerline{\includegraphics}. Could you comment on whether there are any drawbacks with that approach compared to your suggestions (in the interest of a "canonical answer")? –  Jake May 29 '12 at 6:49
1  
@Jake: like egreg pointed out \centerline is actually a plainTeX macro and does not leave-vmode, i.e. you need to add \leavevmode before it to make sure it is not accidentally stacked in vertical mode with some following \hbox. Beside this the center key of adjustbox works the exact same way as \centerline, just with on optional width argument. –  Martin Scharrer May 29 '12 at 6:52
show 5 more comments

If you're using the memoir class, the \centerfloat command does that:

\begin{figure}
\centerfloat
% your figure, caption and label
\end{figure}

If you're using another class, you can define the same command by grabbing its code from memoir:

\makeatletter
\newcommand*{\centerfloat}{%
  \parindent \z@
  \leftskip \z@ \@plus 1fil \@minus \textwidth
  \rightskip\leftskip
  \parfillskip \z@skip}
\makeatother
share|improve this answer
add comment

You could also use the changepage package, which defines the adjustwidth environment that allows an environment that spills out across the margins.

screenshot

% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass{article}

\usepackage[showframe=true,margin=3cm]{geometry}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{changepage}                 % adjust margins for selected portions
\usepackage{lipsum}

% wide page for side by side figures, tables, etc
\newlength{\offsetpage}
\setlength{\offsetpage}{1.0cm}
\newenvironment{widepage}{\begin{adjustwidth}{-\offsetpage}{-\offsetpage}%
    \addtolength{\textwidth}{2\offsetpage}}%
{\end{adjustwidth}}

\begin{document}

\lipsum[1]
\begin{table}[!htb]
    \begin{widepage}
    \begin{tabularx}{\linewidth}{X*{7}rr}
        \toprule
            & 2008/09 & 2009/10 & 2010/11 & 2011/12 & 2012/13 & --2011/12 & --2012/13  & --2012/13 \\
        \midrule
        SY  & 6764    & 8155    & 8847    & 9682    & 8840    & 43.14\%   & $-8.70\%$  & 30.70\%   \\
        CA  & 4159    & 5745    & 5963    & 6585    & 5887    & 58.33\%   & $-10.60\%$ & 41.55\%   \\
        RC  & 6625    & 8033    & 8192    & 8669    & 8454    & $30.85\%$ & $-2.48\%$  & 27.60\%   \\
        ELC & 2785    & 3883    & 4404    & 4709    & 4860    & $69.08\%$ & 3.21\%     & 74.50\%   \\
        \bottomrule
    \end{tabularx}
    \end{widepage}
\end{table}
\lipsum[1]
\end{document}
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.