Je veux ajouter une image à mon article mais jai un problème.
Quand je ajoutez limage avec juste la balise \includegraphics[]{}
, tout fonctionne bien, et limage apparaît lorsque je compile mon document.
Quand jutilise \begin{figure} \includegraphics[]{} \end{figure}
– syntaxe de limage napparaît pas dans le document compilé.
La partie pertinente de mon en-tête inclut:
\usepackage{graphicx} \graphicspath{ {pics/} }
Et plus tard jajoute limage avec ce bloc:
%This does not work \begin{figure} \centering \includegraphics[width=.4\textwidth]{generalPolya} \label{generalPolya} \end{figure} %This works \includegraphics[width=.4\textwidth]{generalPolya}
Je suppose que cest une sorte de problème dans le package graphique, mais jai copié la configuration à partir dun article précédent que javais, donc cela devrait fonctionner. Des idées sur ce qui ne va pas? Merci d’avance.
Modifier:
Merci pour toutes les réponses. Jai créé un exemple de travail minimal. Apparemment, les multicols gênent la balise figure:
\documentclass[]{article} \usepackage{multicol} % Used for the two-column layout of the document \usepackage{amsmath} \usepackage{graphicx} \graphicspath{ {pics/} } \title{\vspace{-15mm}\fontsize{24pt}{10pt}\selectfont\textbf{Lorem ipsum}} % Article title \begin{document} \maketitle % Insert title \begin{multicols}{2} % %This does not show up \begin{figure}[h] \includegraphics[width=.4\textwidth]{generalPolya} \end{figure} %This shows up. \begin{center} \includegraphics[width=.5\textwidth]{chair} \end{center} \end{multicols} \end{document}
Ce qui apparaît après la compilation du document est ceci
Quel est le problème avec cette syntaxe?
Commentaires
Réponse
Essayez dutiliser un minipage comme ceci:
\documentclass[12pt,a4paper]{article} \usepackage{caption} \usepackage{graphicx} \begin{document} \makebox[0pt][l]{% \begin{minipage}{\textwidth} \centering \includegraphics[width=.4\textwidth]{example-image.pdf} \captionof{figure}{figure caption} \label{fig:fig1} \end{minipage} } \medskip I used Figure \ref{fig:fig1} above and referred to it. \end{document}
Commentaires
- Merci pour la réponse. Ce que vous suggérez fonctionne, donc je ‘ accepterai la réponse. Je ne comprends toujours pas ‘ pourquoi cela et un simple \ includeegraphics fonctionnent, mais lenvironnement de la figure ne se compile pas.
- @PanagiotisChatzichristodoulou: Cela restera un mystère si vous ne ‘ t fournir le document défectueux qui a causé lerreur 😉
- Quel ‘ est le point de y compris les environnements
makebox
etmintage
?
Réponse
Cest pourquoi jaime compiler sur la ligne de commande et non avec TeXMaker etc.:
Il y a un avertissement clair dans le .log
fichier (et une erreur fréquente 🙂 Aucun flottant dans lenvironnement multicols
:
Package multicol Warning: Floats and marginpars not allowed inside `multicols" environment!.
Ceci est un comportement documenté, le manuel multicol
décrit cet avertissement et indique clairement ce qui va se passer (cest moi qui souligne):
Floats and marginpars not allowed inside ‘multicols’ environment!
Ce message e apparaît si vous essayez dutiliser la commande
\marginpar
ou une version sans favoris defigure
outable
environnement. Ces flotteurs disparaîtront!
Si un la figure (ou le tableau) avec légende doit être utilisée dans un environnement multicols
, puis utilisez \captionof{figure}{Caption text}
au lieu de \caption
et omettez complètement lenvironnement figure
(ou table
env.) En ce sens, ma réponse est fondamentalement la même que la solution par AboAmmar, mais sans la boîte et la minipage.
\documentclass[]{article} \usepackage{multicol} % Used for the two-column layout of the document \usepackage{amsmath} \usepackage{caption} \usepackage[demo]{graphicx} \graphicspath{ {pics/} } % I disable this since it"s not relevant %\title{\vspace{-15mm}\fontsize{24pt}{10pt}\selectfont\textbf{Lorem ipsum}} % Article title \begin{document} % \maketitle % Insert title \begin{multicols}{2} % %This does not show up %\begin{figure}[h] % Drop this \includegraphics[width=.4\textwidth]{generalPolya} \captionof{figure}{My figure which should be inside the multicols} %\end{figure} % Drop this %This shows up. \begin{center} \includegraphics[width=.5\textwidth]{chair} \end{center} \end{multicols} \end{document}
Commentaires
- Jespère que vous navez pas ‘ t fais attention à ma modification.
Réponse
Jai eu un problème similaire avec un chiffre napparaissant pas lors de lutilisation de multicol
Jai corrigé à laide de cette réponse: https://tex.stackexchange.com/a/483689/152952
\usepackage{float} [...] \begin{figure}[H] [...] \end{figure}
\documentclass{...}
et se terminant par\end{document}
.\label
dans le premier extrait de code ne sert à rien, car il ne génère pas détiquette pour votre figure – vous devez utiliser\caption
pour quun\label
y soit effectif. Ici, vous générez une étiquette pour le dernier compteur incrémenté en dehors de lenvironnementfigure
, par exemple unchapter
compteur\begin{figure}[htbp]
par défaut (\begin{figure}
) est identique à\begin{figure}[tbp]
ne notez pash
(rappelez-vous queh
ne signifie pas ICI , cela veut dire ici)multicols
désactive lenvironnement de la figure, de sorte que rien ne saffiche