Transform SVG to MHTML via Java

On Premise Java API to Render SVG to MHTML without using any third party application

 

You can convert SVG to MHTML by using two simple steps. First you need to render SVG file to DOC using Aspose.PDF for Java . After that, by using powerful Document Processing API Aspose.Words for Java , you can convert DOC to MHTML. Both APIs come under Aspose.Total for Java package.

Java API to Convert SVG to MHTML

  1. Open SVG file using Document class
  2. Convert SVG to DOC by using save method
  3. Load DOC file by using Document class of Aspose.Words
  4. Save the document to MHTML format using save method and set MHTML as SaveFormat

Get Started with Java File Manipulation APIs

You can easily use Aspose.Total for Java directly from a Maven based project and include Aspose.PDF for Java and Aspose.Words for Java in your pom.xml.

Alternatively, you can get a ZIP file from downloads .

// load SVG file with an instance of Document class
Document document = new Document("template.svg");
// save SVG as a DOC 
document.save("DocOutput.doc", SaveFormat.DOC); 
// load DOC with an instance of Document
Document outputDocument = new com.aspose.words.Document("DocOutput.doc");
// call save method while passing SaveFormat.MHTML
outputDocument.save("output.mhtml", SaveFormat.MHTML);   

Open Password Protected SVG Document via Java

While converting SVG to MHTML, even if your document is password protected, you can still open it using PDF Manipulation API Aspose.PDF for Java . In order to open the encrypted file, you need to create a Document object and open the SVG using the owner’s password.

Document document = new Document("input.svg", "password");
// save SVG as a DOC 
document.save("DocOutput.doc", SaveFormat.DOC);

Save MHTML Document to a Database via Java

While saving your input document to MHTML file format, you can also save your document to database instead of a file system. You may need to implement storing and retrieving Document objects to and from a database. This would be necessary if you were implementing any type of content management system. In order to save your MHTML to database it is often necessary to serialize the document to obtain a byte array. This can be done using Aspose.Words for Java API. After getting your byte array, you can store it in the database using SQL statement.

public static void StoreToDatabase(Document doc, Connection mConnection) throws Exception {
    // create an output stream which uses byte array to save data
    ByteArrayOutputStream aout = new ByteArrayOutputStream();
    // save the document to byte array
    doc.save(aout, SaveFormat.MHTML);
    // get the byte array from output steam
    // the byte array now contains the document
    byte[] buffer = aout.toByteArray();
    // get the filename from the document.
    String fileName = doc.getOriginalFileName();
    String filePath = fileName.replace("\\", "\\\\");
    // create the SQL command.
    String commandString = "INSERT INTO Documents (FileName, FileContent) VALUES('" + filePath + "', '" + buffer + "')";
    Statement statement = mConnection.createStatement();
    statement.executeUpdate(commandString);
}  

Explore SVG Conversion Options with Java

Convert SVG to ODP (OpenDocument Presentation Format)
Convert SVG to OTP (OpenDocument Standard Format)
Convert SVG to POT (Microsoft PowerPoint Template Files)
Convert SVG to POTM (Microsoft PowerPoint Template File)
Convert SVG to POTX (Microsoft PowerPoint Template Presentation)
Convert SVG to PPT (Microsoft PowerPoint 97-2003)
Convert SVG to PPS (PowerPoint Slide Show)
Convert SVG to PPSM (Macro-enabled Slide Show)
Convert SVG to PPSX (PowerPoint Slide Show)
Convert SVG to PPT (Microsoft PowerPoint 97-2003)
Convert SVG to PPTM (Macro-enabled Presentation File)
Convert SVG to SWF (Shockwave Flash Movie)
Convert SVG to DOCM (Microsoft Word 2007 Marco File)
Convert SVG to DOT (Microsoft Word Template Files)
Convert SVG to DOTM (Microsoft Word 2007+ Template File)
Convert SVG to DOTX (Microsoft Word Template File)
Convert SVG to FLATOPC (Microsoft Word 2003 WordprocessingML)
Convert SVG to GIF (Graphical Interchange Format)
Convert SVG to MHTML (Web Page Archive Format)
Convert SVG to ODT (OpenDocument Text File Format)
Convert SVG to OTT (OpenDocument Standard Format)
Convert SVG to PCL (Printer Command Language Document)
Convert SVG to PS (PostScript File)
Convert SVG to RTF (Rich Text Format)
Convert SVG to WORDML (Microsoft Word 2003 WordprocessingML)
Convert SVG to CSV (Comma Seperated Values)
Convert SVG to DIF (Data Interchange Format)
Convert SVG to CSV (Comma Seperated Values)
Convert SVG to FODS (OpenDocument Flat XML Spreadsheet)
Convert SVG to MD (Markdown Language)
Convert SVG to ODS (OpenDocument Spreadsheet)
Convert SVG to SXC (StarOffice Calc Spreadsheet)
Convert SVG to TSV (Tab Seperated Values)
Convert SVG to TXT (Text Document)
Convert SVG to XLAM (Excel Macro-Enabled Add-In)
Convert SVG to XLSB (Excel Binary Workbook)
Convert SVG to XLSM (Macro-enabled Spreadsheet)
Convert SVG to XLT (Excel 97 - 2003 Template)
Convert SVG to XLTM (Excel Macro-Enabled Template)
Convert SVG to XLTX (Excel Template)

What is SVG File Format

SVG is a vector graphic image file format that allows users to create and save images in a range of sizes, colors, and resolutions. SVG files are created using vector graphic software, and they can be edited and resized without losing quality. SVG files are often used for web graphics, logos, and illustrations.

Read More

What is MHTML File Format

MHTML, short for MIME HTML, is a web page archive format used to combine resources that are typically represented by external links (such as images, Flash animations, Java applets, and audio files) with HTML code into a single file. The resulting file can be saved and opened by web browsers.MHTML is supported by most major web browsers, including Microsoft Edge, Internet Explorer, Google Chrome, Mozilla Firefox, and Opera. Safari has limited support for MHTML. When a web page is saved as an MHTML file, the HTML code and the resources are typically encoded using the MIME type multipart/related. This type of encoding is necessary in order to maintain the correct sequence of the HTML code and the resources when they are combined into a single file. The MHTML format is often used for archiving web pages or for distributing web pages that need to be viewed offline.

Read More