Why to Convert SVG to MHTML
The Scalable Vector Graphics (SVG) format is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation. It is widely used for web graphics and is supported by all modern web browsers. MHTML, or 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. It is used to save webpages for offline viewing and is supported by most web browsers. Converting SVG to MHTML can be useful for creating a single file that contains all the resources of a webpage, making it easier to share and view.
How Aspose.Total Helps for SVG to MHTML Conversion
Aspose.Total for C++ is a suite of file format automation libraries that enables C++ developers to easily convert SVG to MHTML in two simple steps. Firstly, you can use Aspose.PDF for C++ API to convert SVG file format to DOC. This API provides a wide range of features for manipulating PDF documents, including the ability to convert PDF documents to other file formats. Secondly, by using the advanced Word Document Processing API Aspose.Words for C++, you can export DOC to MHTML. This API provides a comprehensive set of features for creating, editing, and converting Word documents, including the ability to convert Word documents to other file formats. With Aspose.Total for C++, you can quickly and easily convert SVG to MHTML with just a few lines of code.
C++ API to Render SVG to MHTML
Get Started with C++ File Automation APIs
Install from command line as nuget install Aspose.Total.Cpp
or via Package Manager Console of Visual Studio with Install-Package Aspose.Total.Cpp
.
Alternatively, get the offline MSI installer or DLLs in a ZIP file from downloads .
// load SVG file with an instance of Document class reference
auto doc = MakeObject<Document>(u"sourceFile.svg");
// save SVG as a DOC
doc->Save(u"DocOutput.doc", SaveFormat::Doc);
// load DOC with an instance of Document
System::SharedPtr<Document> wordDoc = System::MakeObject<Document>(u"DocOutput.doc");
// save document as Mhtml
wordDoc->Save(u"output.Mhtml");
Change Password of SVG Document via C++
In the process of rendering SVG to MHTML, you can open a password protected SVG and also change its password. In order to change the password of a SVG file, you must know the owner password of that document. You can load password protected PDF document with Aspose.PDF for C++ by specifying its owner password and use ChangePasswords method to change the password.
// load an existing SVG Document
auto doc = MakeObject<Document>(L"input.svg", L"owner");
// change password of SVG Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");
Restrict MHTML File Editing via C++
You can also restrict MHTML file editing using using Aspose.Words for C++ API. Sometimes you may need to limit the ability to edit a document and only allow certain actions with it. API enables you to control the way you restrict the content using the ProtectionType enumeration parameter. The following code example demonstrates how to restrict editing in a document so only editing in form fields is possible.
// load Doc with an instance of Document
auto doc = System::MakeObject<Document>("input.doc");
// document protection only works when document protection is turned and only editing in form fields is allowed.
doc->Protect(ProtectionType::AllowOnlyFormFields, u"password");
// save the protected document.
doc->Save(u"Protected.Mhtml");