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.

It seems that after figures there is no vertical space whatsoever. LaTeX doesn't seem to like me adding a \\ after the figure, too.

How can I accomplish some vertical spacing after a figure?

Here's my current latex code:

\begin{figurehere}
    \centering
        \includegraphics[width=16cm]{abc.png}
    \caption{\footnotesize{my footnote 1}}
    \label{q-qg}
\end{figurehere}

\begin{figurehere}
    \centering
        \includegraphics[width=16cm]{def.png}
    \caption{\footnotesize{my footnote 2}}
    \label{q-qg}
\end{figurehere}

\noindent abcabc

This is the header of my file:

\documentclass[a4paper,10pt]{article}
\pagenumbering{arabic}
\pagestyle{headings}
\usepackage{color}
\definecolor{dkgreen}{rgb}{0,0.5,0}

\usepackage[left=2.5cm,top=2cm,right=2.5cm,bottom=3cm]{geometry}
\usepackage{listings}
\lstset{language=Java, keywordstyle=\color{blue}, commentstyle=\color{dkgreen},escapechar=|}
\usepackage{multicol,multirow,graphicx,tabularx}
\usepackage{marvosym,textcomp,cancel,gensymb,lscape}

\usepackage{hyperref}
\usepackage{pdflscape}  
\usepackage{subfigure}
\usepackage{ucs}  %Unicode support
\usepackage[utf8x]{inputenc} % UCS' UTF-8 driver is better than the LaTeX kernel's
\usepackage[T1]{fontenc}  %The default font encoding only contains Latin characters
\usepackage{ae,aecompl}  %Almost European fonts/hyphenation do a better job than Computer Modern
\usepackage{amsmath, amsthm, amssymb}  %something i found for page numbering

%hack para meter imagens e tabelas em multicol
\makeatletter
\newenvironment{tablehere}
  {\def\@captype{table}}
  {}

\newenvironment{figurehere}
  {\def\@captype{figure}}
  {}
\makeatother

\newenvironment{lista}{
\begin{itemize}
  \setlength{\itemsep}{2pt}
  \setlength{\parskip}{0pt}
  \setlength{\parsep}{0pt}}{
  \end{itemize}
}

%e uns teoremazinhos$\eta$
\newtheorem{theorem}{Theorem}[section]
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{proposition}[theorem]{Proposition}
\newtheorem{corollary}[theorem]{Corollary}

\title{{\bfseriesyyy}\\{\bfseries \small xxx}}
\author{\Large{xyz}\\ abcde}
\date{some date}

 %costumizar captions e titulos
\renewcommand{\abstractname}{Resumo}
\renewcommand{\figurename}{Fig.}
\renewcommand{\tablename}{Tabela}
\renewcommand\refname{Referências}

\long\def\symbolfootnote[#1]#2{\begingroup
\def\thefootnote{\fnsymbol{footnote}}\footnote[#1]{#2}\endgroup}
share|improve this question
    
The \\ is strictly for text lines, you can't use it without text like you can just press Enter in Word. There should be some vertical space before and after figures. Please add a minimal working example (MWE) that shows your exact problem. –  Martin Scharrer Mar 15 '12 at 10:16
    
@MartinScharrer: I've updated the OP. –  user12079 Mar 15 '12 at 10:18
1  
We would need a complete example with the preamble. The figurehere is not a standard environment. Normal figure environments do add vertical space. –  Martin Scharrer Mar 15 '12 at 10:21
    
@MartinScharrer: updated again. I'm not sure that's all you're asking? –  user12079 Mar 15 '12 at 10:22
1  
No, this is not yet an MWE. Please turn it into a complete compilable, but minimal document (from \documentclass to \end{document}) that we could copy and paste to understand your problem. This would encourage the gurus here to help you. –  Daniel Mar 15 '12 at 10:23
show 2 more comments

2 Answers

If you really want your figures and tables here-and-no-discussion-about-it, then you can load the float package and use

\begin{figure}[H]
...
\end{figure}

\begin{table}[H]
...
\end{table}

instead of your figurehere and tablehere environments (which are defined not to leave any vertical space around them). It will be easier to modify the option to get a floating environment (which I recommend).

Side notes

  1. Don't use the ae and aecompl packages: they are obsolete. Also subfigure is obsolete and subfig should be used.

  2. Usage of ucs and the [utf8x] option to inputenc is probably not needed (and incompatible with packages such as biblatex); use simply

    \usepackage[utf8]{inputenc}
    
  3. hyperref should be loaded last

Here's an amended version

\documentclass[a4paper,10pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage[left=2.5cm,top=2cm,right=2.5cm,bottom=3cm]{geometry}

\usepackage{color}

\usepackage{multicol,multirow,graphicx,tabularx}
\usepackage{marvosym,textcomp,cancel,gensymb,pdflscape}
\usepackage{subfig}
\usepackage{float} % for the H specifier
\usepackage{amsmath, amsthm, amssymb}
\usepackage{listings}

\usepackage{hyperref}

% set up
\pagenumbering{arabic}
\pagestyle{headings}
\definecolor{dkgreen}{rgb}{0,0.5,0}

\lstset{language=Java, keywordstyle=\color{blue}, 
  commentstyle=\color{dkgreen},escapechar=|}
share|improve this answer
add comment

Ok, you seem to want to make your own figure environment. Note that LaTeX doesn't recognize such an environment automatically as a figure and somehow adds vertical space by itself. You need to add it manually using e.g. using \vspace{<length>} or \medskip/\bigskip etc. at the end of the environment. Adding a manual paragraph break using \par would also be something to consider.

\newenvironment{figurehere}
  {\def\@captype{figure}}
  {\par\medskip}% or \par\vspace{1ex} etc.
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.