Convert a Google Document into an EPUB File
With Google Documents, you can easily save any document into an ePub file in the browser. Just open any document inside the Google Documents web editor and choose File > Download > EPUB
from the menu to convert the file.
If you have bunch of documents in your Google Drive, converting them to EPUB format manually would be a tedious task and that’s where Apps Script can help.
function convertDocToEPUB() {
// Get the currently opened document
var document = DocumentApp.getActiveDocument();
// Get the EPUB export link
var mimeType = 'application/epub+zip';
var exportLink = Drive.Files.get(document.getId()).exportLinks[mimeType];
// Get the blob of the epub exported file
var response = UrlFetchApp.fetch(exportLink, {
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken(),
},
});
// Save the EPUB file in the Google Drive root folder
var file = DriveApp.createFile(response.getBlob());
// Set the file name same as the document name
file.setName(document.getName() + '.epub');
// Return the file URL from Drive
return file.getUrl();
}
We use the Google Drive Advanced Service of Apps Script to get get the export link for the EPUB MIME Type. Next, the URLFetchApp
service exports the Google Doc to the requested MIME type and returns the exported content as a blob.
The blog is saved to Google Drive and the file URL is returned.
A similar technique is used by Document Studio to convert merged documents into EPUB ebooks.
Amit Agarwal
Google Developer Expert, Google Cloud Champion
Amit Agarwal is a Google Developer Expert in Google Workspace and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India.
Amit has developed several popular Google add-ons including Mail Merge for Gmail and Document Studio. Read more on Lifehacker and YourStory