Convert EMF to WMZ via Java
Transform EMF into WMZ using native Java APIs without needing any image editor or 3rd-party libraries.
How to Convert EMF to WMZ Using Java
Converting file formats may seem like a routine task encountered by graphic designers. Yet, underestimating its significance would be a mistake. The evaluation of your work might depend on how swiftly and effectively you tackle this task. Typically, original images need conversion into formats better suited for printing or online publication. If the original image originates from a graphic editor, it might be in vector format. In this scenario, it must be rasterized and converted to a raster format for publishing purposes. You have the choice to save the image in an uncompressed format for optimal quality or convert it to a lossless compressed format to reduce file size. In certain contexts, like web publishing, you can opt for lossy compressed formats. Specially designed algorithms for image data compression permit a significant reduction in file size while preserving acceptable image quality. This facilitates fast image file downloads from the internet. In order to convert EMF to WMZ, we’ll use Aspose.Imaging for Java API which is a feature-rich, powerful and easy to use image manipulation and conversion API for Java platform. You can download its latest version directly from Maven and install it within your Maven-based project by adding the following configurations to the pom.xml.
Repository
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Dependency
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>version of aspose-imaging API</version>
<classifier>jdk16</classifier>
</dependency>
Steps to Convert EMF to WMZ via Java
Developers can easily load & convert EMF files to WMZ in just a few lines of code.
- Load EMF file with Image.load method
- Create & set the instance of required subclass of ImageOptionsBase (e.g. BmpOptions, PngOptions, etc.)
- Call the Image.save method
- Pass file path with WMZ extension & object of ImageOptionsBase class
System Requirements
Before running the conversion example code, make sure that you have the following prerequisites:
- Operating system: Windows or Linux.
- Development environment: Supports .NET Core 7 and higher, such as Microsoft Visual Studio.
Free App to Convert EMF to WMZ
- Select or drag and drop EMF image
- Choose format and click Convert button
- Click Download button to download WMZ image
Check our live demos to convert EMF to WMZ
Convert EMF to WMZ - Java
import com.aspose.imaging.Image; | |
import com.aspose.imaging.ImageOptionsBase; | |
import com.aspose.imaging.fileformats.jpeg2000.Jpeg2000Codec; | |
import com.aspose.imaging.fileformats.png.PngColorType; | |
import com.aspose.imaging.fileformats.tiff.enums.TiffExpectedFormat; | |
import com.aspose.imaging.imageoptions.*; | |
//This example demonstrates how to convert all supported file formats from one to another | |
String templatesFolder = "D:\\WorkDir\\"; | |
//Formats that support both - save and load | |
HashMap<String, ImageOptionsBase> formatsThatSupportExportAndImport = new HashMap<String, ImageOptionsBase>(); | |
formatsThatSupportExportAndImport.put("bmp", new BmpOptions()); | |
formatsThatSupportExportAndImport.put("gif", new GifOptions()); | |
formatsThatSupportExportAndImport.put("dicom", new DicomOptions()); | |
formatsThatSupportExportAndImport.put("emf", new EmfOptions()); | |
formatsThatSupportExportAndImport.put("jpg", new JpegOptions()); | |
formatsThatSupportExportAndImport.put("jpeg", new JpegOptions()); | |
formatsThatSupportExportAndImport.put("jpeg2000", new Jpeg2000Options() ); | |
formatsThatSupportExportAndImport.put("j2k", new Jpeg2000Options() {{ setCodec(Jpeg2000Codec.J2K); }} ); | |
formatsThatSupportExportAndImport.put("jp2", new Jpeg2000Options() {{ setCodec(Jpeg2000Codec.Jp2); }} ); | |
formatsThatSupportExportAndImport.put("png",new PngOptions() {{ setColorType(PngColorType.TruecolorWithAlpha); }}); | |
formatsThatSupportExportAndImport.put("apng", new ApngOptions()); | |
formatsThatSupportExportAndImport.put("svg", new SvgOptions()); | |
formatsThatSupportExportAndImport.put("tiff", new TiffOptions(TiffExpectedFormat.Default)); | |
formatsThatSupportExportAndImport.put("tif", new TiffOptions(TiffExpectedFormat.Default)); | |
formatsThatSupportExportAndImport.put("wmf", new WmfOptions()); | |
formatsThatSupportExportAndImport.put("emz", new EmfOptions() {{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("wmz", new WmfOptions() {{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("svgz", new SvgOptions(){{ setCompress(true); }}); | |
formatsThatSupportExportAndImport.put("tga", new TgaOptions()); | |
formatsThatSupportExportAndImport.put("webp", new WebPOptions()); | |
formatsThatSupportExportAndImport.put("ico", new IcoOptions()); | |
//Formats that can be only saved | |
HashMap<String, ImageOptionsBase> formatsOnlyForExport = new HashMap<String, ImageOptionsBase>(); | |
formatsOnlyForExport.put("psd", new PsdOptions()); | |
formatsOnlyForExport.put("dxf", new DxfOptions() {{ setTextAsLines(true); setConvertTextBeziers(true); }} ); | |
formatsOnlyForExport.put("pdf", new PdfOptions()); | |
formatsOnlyForExport.put("html", new Html5CanvasOptions()); | |
//Formats that can be only loaded | |
List<String> formatsOnlyForImport = Arrays.asList("djvu", "dng", "dib", "eps", "cdr", "cmx", "otg", "odg"); | |
//Get total formats that can be saved | |
HashMap<String, ImageOptionsBase> exportToFormats = new HashMap<String, ImageOptionsBase>(formatsOnlyForExport); | |
exportToFormats.putAll(formatsThatSupportExportAndImport); | |
//Get total formats that can be loaded | |
List<String> importFormats = new LinkedList<>(formatsOnlyForImport); | |
importFormats.addAll(formatsThatSupportExportAndImport.keySet()); | |
importFormats.forEach((formatExt) -> { | |
String inputFile = templatesFolder + "template." + formatExt; | |
for (Map.Entry<String, ImageOptionsBase> exportFormat : exportToFormats.entrySet()) | |
{ | |
String outputFile = String.format("%s\\%s\\%s-%s-to-%s.%s", templatesFolder, "convert", "convert-", formatExt, exportFormat.getKey(), exportFormat.getKey()); | |
System.out.println(outputFile); | |
// More about load method can be found at | |
// https://apireference.aspose.com/imaging/java/com.aspose.imaging/Image#load-java.lang.String- | |
try (Image image = Image.load(inputFile)) | |
{ | |
ImageOptionsBase exportOptions = exportFormat.getValue().deepClone(); | |
if ((formatExt.equals("emf") || formatExt.equals("emz")) && (exportFormat.getValue() instanceof WmfOptions)) | |
{ | |
EmfRasterizationOptions rasterizationOptions = new EmfRasterizationOptions(); | |
rasterizationOptions.setPageWidth(image.getWidth()); | |
rasterizationOptions.setPageHeight(image.getHeight()); | |
exportOptions.setVectorRasterizationOptions(rasterizationOptions); | |
} | |
image.save(outputFile, exportOptions); | |
} | |
} | |
}); |
EMF What is EMF File Format
Enhanced metafile format (EMF) stores graphical images device-independently. Metafiles of EMF comprises of variable-length records in chronological order that can render the stored image after parsing on any output device. These variable-length records can be definitions of enclosed objects, commands for drawing, and graphics properties critical to render the image accurately. When a device opens an EMF metafile using its own graphics environment, the proportions, dimensions, colors and other graphic properties of original image remains same regardless of the opening device platform.
Read More | EMFWMZ What is WMZ File Format
WMZ is a file extension for a skin file format in/for/used by Windows Media Player. A WMZ file is basically a zipped WMF file in XML.
Read More | WMZOther Supported Conversions
Using Java, one can easily convert different formats including: