P.S.: I have come up with another possibility, more automatic, on the LaTeX side, if you compile with LuaTeX. This thread (https://tex.stackexchange.com/questions/202046/width-of-the-caption-of-a-figure), where someone proposes to use a \savebox for concrete images, gave me the idea. We can automate that through a simple function in Lua, and add it to the `process_input_buffer' callback, in order to the caption *always* has the width of each image:
You can put this in your Org document: #+NAME: luacode #+begin_src latex :exports none \usepackage{luacode} \begin{luacode*} function caption_width ( text ) text = string.gsub ( text, "(\\includegraphics.+)", "\\sbox0{%1}") text = string.gsub ( text, "(\\caption{.+})", "\\begin{minipage}{\\wd0}\\usebox0%1\\end{minipage}") return text end \end{luacode*} \newcommand\CaptionAutoWidth{\directlua{luatexbase.add_to_callback ( "process_input_buffer" , caption_width , "caption_width" )}} \AtBeginDocument{\CaptionAutoWidth} #+end_src #+begin_src latex :noweb yes :results raw ,#+LaTeX_HEADER: <<luacode>> #+end_src And then: #+CAPTION: Lorem ipsum dolor sit amet, consectetuer adipiscing elit #+ATTR_LaTeX: :width .3\linewidth [[img]] Best regards, Juan Manuel Juan Manuel Macías writes: > If you use the caption package (https://www.ctan.org/pkg/caption), you > can indicate in each figure the width of the caption. In this case, you > would have to introduce the code using raw latex via the `:caption' > property: > > #+LaTeX_Header: \usepackage{caption} > > #+ATTR_LaTeX: :caption \captionsetup{width=.3\linewidth}\caption{Lorem ipsum > dolor sit amet, consectetuer adipiscing elit} > #+ATTR_LaTeX: :width .3\linewidth > [[file_path]]