Is there any command line tool available to convert emf to png images?
I tried the
convert utility from ImageMagick, but it says
decoder for emf not found
(Found in https://stackoverflow.com/a/28749719)
libreoffice --headless --convert-to png image.emf
The other answers here did not work for me, but one I found on stakoverflow did
Another way is to use inkscape:
inkscape -e file.png source.emf
See inkscape --help for more export options (area to export, dpi, image resolution, background color etc).
inkscape is a great idea, but unfortunately it does not do a perfect job, for ex. with label positions getting messed in certain cases, as described here: https://gitlab.com/inkscape/inbox/-/issues/2847
So far the only accurate conversion outside of Windows that I've seen is with OpenOffice (headless) or using the unoconv Python script which calls OpenOffice/LibreOffice to do the work. Maybe there's some way to hack together ImageMagick and Mono (libgdi) under Linux but haven't found anything that's done that yet.
Install library libemf2svg, example for debian or ubuntu:
git clone [email protected]:kakwa/libemf2svg.git
sudo apt-get install gcc g++ cmake libpng-dev libfreetype-dev libfontconfig1-dev -y
cmake . -DCMAKE_INSTALL_PREFIX=/usr/
sudo make install
Use the lib by
./emf2svg-conv -i test.emf -o test.svg
Now you have a svg file.
Finally, finish the convert by
convert test.svg test.png