Jag vill lägga till en bild i mitt papper men jag har problem.
När jag lägg till bilden med bara \includegraphics[]{}
taggen, allt fungerar bra och bilden dyker upp när jag kompilerar mitt dokument.
När jag använder \begin{figure} \includegraphics[]{} \end{figure}
– syntax bilden visas inte i det sammanställda dokumentet.
Den relevanta delen av mitt huvud innehåller:
\usepackage{graphicx} \graphicspath{ {pics/} }
Och senare lägger jag till bilden med det här blocket:
%This does not work \begin{figure} \centering \includegraphics[width=.4\textwidth]{generalPolya} \label{generalPolya} \end{figure} %This works \includegraphics[width=.4\textwidth]{generalPolya}
Jag antar att det är något slags problem i grafikpaketet, men jag har kopierat installationen från ett tidigare papper jag hade, så det borde fungera. Några idéer om vad som är fel? Tack på förhand.
Redigera:
Tack för alla svaren. Jag skapade ett minimalt fungerande exempel. Tydligen stör multicols med figurtaggen:
\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}
Det som dyker upp efter att dokumentet har sammanställts är detta
Vad är fel med denna syntax?
Kommentarer
Svar
Försök använda en minisida så här:
\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}
Kommentarer
- Tack för svaret. Det du föreslår fungerar, så jag ’ Jag accepterar svaret. Jag förstår fortfarande inte ’ varför detta och ett enkelt \ inklusive grafik fungerar, men figurmiljön kompilerar inte.
- @PanagiotisChatzichristodoulou: Det kommer att förbli ett mysterium du ’ tillhandahåller inte det felaktiga dokument som orsakade felet 😉
- Vad ’ är poängen med inklusive
makebox
ochmintage
miljöer?
Svar
Det är därför jag gillar att kompilera på kommandoraden och inte med TeXMaker etc. saker:
Det finns en tydlig varning i .log
-fil (och ett ofta förekommande fel 🙂 Inget svävar i multicols
-miljö:
Package multicol Warning: Floats and marginpars not allowed inside `multicols" environment!.
Detta är dokumenterat beteende, multicol
manualen beskriver denna varning och anger tydligt vad som kommer att hända (betoning min):
Floats and marginpars not allowed inside ‘multicols’ environment!
Detta meddelande e visas om du försöker använda kommandot
\marginpar
eller en ostjärnig version avfigure
ellertable
miljö. Sådana flottörer försvinner!
Om en figur (eller tabell) med bildtext ska användas i en multicols
-miljö, använd sedan \captionof{figure}{Caption text}
istället för \caption
och utelämna figure
-miljön helt (eller table
env.) I denna mening är mitt svar i princip samma som lösningen av AboAmmar, men utan låda och 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}
Kommentarer
- Hoppas att du inte ’ tänk på min redigering.
Svar
Jag hade ett liknande problem med en siffra som inte dyker upp när jag använder multicol
Jag fixade med hjälp av det här svaret: https://tex.stackexchange.com/a/483689/152952
\usepackage{float} [...] \begin{figure}[H] [...] \end{figure}
\documentclass{...}
och slutar med\end{document}
.\label
i det första kodavsnittet är till ingen nytta, eftersom det inte genererar en etikett för din figur – du måste använda\caption
för att en\label
ska vara effektiv där. Här genererar du en etikett för den sista räknaren inkrementerad utanförfigure
-miljön, t.ex. achapter
räknare\begin{figure}[htbp]
som standard (\begin{figure}
) är samma som\begin{figure}[tbp]
not nrh
(kom ihågh
betyder inte HÄR , det betyder här ungefär)multicols
inaktiverar figurmiljön så att ingenting dyker upp