Reputation: 1290
When converting .docx file to markdown, the embedded image is not extracted from the docx archive, yet the output contains ![](media/image1.png){width="6.291666666666667in"
height="3.1083333333333334in"}
Is there a parameter that needs to be set in order to get the embedded pictures extracted?
Upvotes: 76
Views: 55765
Reputation: 21
You may try "--embed-resources".
https://pandoc.org/MANUAL.html#option--embed-resources[
Blockquote --embed-resources[=true|false] Produce a standalone HTML file with no external dependencies, using data: URIs to incorporate the contents of linked scripts, stylesheets, images, and videos. The resulting file should be “self-contained,” in the sense that it needs no external files and no net access to be displayed properly by a browser. This option works only with HTML output formats, including html4, html5, html+lhs, html5+lhs, s5, slidy, slideous, dzslides, and revealjs. Scripts, images, and stylesheets at absolute URLs will be downloaded; those at relative URLs will be sought relative to the working directory (if the first source file is local) or relative to the base URL (if the first source file is remote). Elements with the attribute data-external="1" will be left alone; the documents they link to will not be incorporated in the document. Limitation: resources that are loaded dynamically through JavaScript cannot be incorporated; as a result, fonts may be missing when --mathjax is used, and some advanced features (e.g. zoom or speaker notes) may not work in an offline “self-contained” reveal.js slide show.
Upvotes: 1
Reputation: 39189
pandoc --extract-media ./myMediaFolder input.docx -o output.md
From the manual:
--extract-media=DIR
Extract images and other media contained in or linked from the source document to the path DIR, creating it if necessary, and adjust the images references in the document so they point to the extracted files. Media are downloaded, read from the file system, or extracted from a binary container (e.g. docx), as needed. The original file paths are used if they are relative paths not containing..
. Otherwise filenames are constructed from the SHA1 hash of the contents.
Upvotes: 134
Reputation: 1229
Referring to the comment by gridtrak and the problem of an unnecessarily deep directory strucutre (e.g. media/media/image2.jpeg
), use the current directory as path DIR, then a folder media
is created within the current directory (e.g. media/image2.jpeg
):
pandoc --extract-media=. input.docx -o output.md
Upvotes: 33