Transform MHTML to PCL via Java
On Premise Java API to Render MHTML to PCL without using any third party application
You can convert MHTML to PCL by using two simple steps. First you need to render MHTML 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 PCL. Both APIs come under Aspose.Total for Java package.
Java API to Convert MHTML to PCL
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 MHTML file with an instance of Document class
Document document = new Document("template.mhtml");
// save MHTML 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.PCL
outputDocument.save("output.pcl", SaveFormat.PCL);
Open Password Protected MHTML Document via Java
While converting MHTML to PCL, 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 MHTML using the owner’s password.
Document document = new Document("input.mhtml", "password");
// save MHTML as a DOC
document.save("DocOutput.doc", SaveFormat.DOC);
Save PCL Document to a Database via Java
While saving your input document to PCL 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 PCL 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.PCL);
// 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);
}
Other Conversion Options
MHTML What is MHTML File Format?
Files with MHTML extension represent a web page archive format that can be created by a number of different applications. The format is known as archive format because it saves the web HTML code and associated resources in a single file. These resources include anything linked to the webpage such as images, applets, animations, audio files and so on. MHTML files can be opened in a variety of applications such as Internet Explorer and Microsoft Word. Microsoft Windows uses MHTML file format for recording scenarios of problems observed during the usage of any application on Windows that raises issues. The MHTML file format encodes the page contents similar to specifications defined in message/rfc822 which is plain text email related specifications. The actual specifications of the format are as detailed by RFC 2557.
Read MorePCL What is PCL File Format?
PCL stands for Printer Command Language which is a Page Description Language introduced by Hewlett Packard (HP). HP created PCL to provide an efficient way for controlling printer features across many different printing devices. The format was originally developed for HP’s dot matrix and Inkjet printers, but has been part of various thermal, matrix and page printers with the passage of time. The format underwent several different revisions, resulting in different versions where each version was enhanced to meet the demands of time with respect to the printer control features. Today, PCL is the most widely spread printer language in the laster printer market.
Read More