Amy Pearson Amy is a Java developer and member of the support team. Her main technical interests are JavaFX and Cloud. Out of hours she enjoys gaming and Virtual reality.

How to convert WMF files to SVG in java with JDeli

53 sec read

WMF to SVG

This article will show you how to convert WMF files into SVG files. We also have a related article covering how to read WMF files in Java that might interest you.

WMF to SVG

What is WMF?

WMF is a file format designed for the Windows platform by Microsoft. WMF stands for Windows MetaFile and it is a Vector file format, meaning it scales well if you need to resize. You can learn more about them in our post “What are the WMF and EMF image file formats?”.

The file name extension for WMF files is: .wmf

Why convert WMF files to SVG

The WMF file format has been around for quite some time. As a result, many companies have lots of WMF files. However, outside of the Windows world, the WMF format is not heavily supported. SVG is also a Vector file format so converted content keeps the benefits of being rescaled easily. In contrast to WMF, SVG is a very popular cross-platform format that is supported by all modern Browsers and many tools on Windows, Mac, and Linux.

How to convert WMF file to SVG in JDeli

  1. Add JDeli to your class or module path. (download link to the trial jar).
  2. Create a File (or InputStream) object for the WMF file
    File wmfFile = new File("/path/to/wmfFile.wmf"));
  3. Create a File (or OutputStream) object for the converted SVG output
    File svgFile = new File("/path/to/svgFile.svg"));
  4. Pass the File (or OutputStream) objects into a static method
    WmfDecoder.toSVG(wmfFile,svgFile);


Are you a Java Developer working with Image files?

// Read an image
BufferedImage bufferedImage = JDeli.read(dicomImageFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(heicImageFile);

// Write an image
JDeli.write(bufferedImage, "heic", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpegImageFile);

// Write an image
JDeli.write(bufferedImage, "jpeg", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(jpeg2000ImageFile);

// Write an image
JDeli.write(bufferedImage, "jpx", outputStreamOrFile);
// Write an image
JDeli.write(bufferedImage, "pdf", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(pngImageFile);

// Write an image
JDeli.write(bufferedImage, "png", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(tiffImageFile);

// Write an image
JDeli.write(bufferedImage, "tiff", outputStreamOrFile);
// Read an image
BufferedImage bufferedImage = JDeli.read(webpImageFile);

// Write an image
JDeli.write(bufferedImage, "webp", outputStreamOrFile);
Amy Pearson Amy is a Java developer and member of the support team. Her main technical interests are JavaFX and Cloud. Out of hours she enjoys gaming and Virtual reality.

What is JBIG2?

JBIG2 is a lossless and lossy compression standard for bi-level images like scanned documents, offering high compression ratios by identifying and encoding similar shapes...
chika
47 sec read