Skip to content


ImageMagick Preprocessor

This tool provides additional processing of images that referred in Markdown source, with ImageMagick.


$ pip install foliantcontrib.imagemagick


To enable the preprocessor, add imagemagick to preprocessors section in the project config:

    - imagemagick

The preprocessor has a number of options with the following default values:

    - imagemagick:
        convert_path: convert
        cache_dir: .imagemagickcache
Path to convert binary, a part of ImageMagick.
Directory to store processed images. These files can be reused later.


Suppose you want to apply the following command to your picture image.eps:

$ convert image.eps -resize 600 -background Orange label:'Picture' +swap -gravity Center -append image.jpg

This command takes the source EPS image image.eps, resizes it, puts a text label over the picture, and writes the result into new file image.jpg. The suffix of output file name specifies that the image must be converted into JPEG format.

To use the ImageMagick preprocessor to do the same, enclose one or more image references in your Markdown source between <magick> and </magick> tags.

<magick command_params="-resize 600 -background Orange label:'Picture' +swap -gravity Center -append" output_format="jpg">
(leading exclamation mark here)[Optional Caption](image.eps)

Use output_format attribute to specify the suffix of output file name. The whole output file name will be generated automatically.

Use command_params attribute to specify the string of parameters that should be passed to ImageMagick convert binary.

Instead of using command_params attribute, you may specify each parameter as its own attribute with the same name:

<magick resize="600" background="Orange label:'Picture' +swap" gravity="Center" append="true" output_format="jpg">
(leading exclamation mark here)[Optional Caption](image.eps)
Back to top