Why to Convert MHTML to DOTM?
MHTML (MIME HTML) is a web page archive format used to save web pages for offline viewing. It is a combination of HTML code and resources such as images, audio, and video. DOTM is a Microsoft Word Open XML Macro-Enabled Document Template file format used to store documents with macros. It is used to create documents with predefined settings and formatting. Converting MHTML to DOTM allows users to access the content of a web page in a Word document with macros.
How Aspose.Total Helps for MHTML to DOTM Conversion?
Aspose.Total for C++ is a suite of file format automation libraries that enables C++ developers to convert MHTML to DOTM in two simple steps. Firstly, you can use Aspose.PDF for C++ API to convert MHTML file format to DOC. This API provides a wide range of features to manipulate PDF documents, such as creating, editing, converting, and printing. Secondly, by using advanced Word Document Processing API Aspose.Words for C++, you can export DOC to DOTM. This API provides features to create, edit, and convert Word documents, as well as to generate reports, mail merge, and more. With Aspose.Total for C++, developers can easily convert MHTML to DOTM with just a few lines of code.
C++ API to Render MHTML to DOTM
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 MHTML file with an instance of Document class reference
auto doc = MakeObject<Document>(u"sourceFile.mhtml");
// save MHTML 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 Dotm
wordDoc->Save(u"output.Dotm");
Change Password of MHTML Document via C++
In the process of rendering MHTML to DOTM, you can open a password protected MHTML and also change its password. In order to change the password of a MHTML 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 MHTML Document
auto doc = MakeObject<Document>(L"input.mhtml", L"owner");
// change password of MHTML Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");
Restrict DOTM File Editing via C++
You can also restrict DOTM 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.Dotm");