Develop DOC processing software in Node.js using DOC Optimization API. This powerful Node.js solution helps you optimize and reduce the size of DOC files effortlessly. Test DOC compressing capabilities online for free!
Make large DOC files smaller without loss of quality. Delete unnecessary and unused data. Shrink the size of a DOC file in code. The JavaScript library provides developers with an integrated API to optimize DOC content.
JavaScript library is a stand-alone solution and doesn't require any third party software installed.
Lossless compression and deep content optimization made easy with 'Aspose.Words for Node.js via .NET'. The following example demonstrates how to optimize the content of a DOC file in JavaScript:
npm install @aspose/words
Copy
const aw = require('@aspose/words');
var doc = new aw.Document("Input.doc");
doc.cleanup();
var shapes = doc.getChildNodes(aw.NodeType.Shape, true)
for (var shape of shapes) {
if (shape.hasImage()) {
// It's up to developer to choose the library for image compression.
const imageData = shape.getImageData().toStream();
// ...
// Compress image and set it back to the shape.
shape.getImageData().setImage(compressedImageBuffer);
}
}
doc.save("Output.doc")
const aw = require('@aspose/words');
var doc = new aw.Document("Input.doc");
doc.cleanup();
var shapes = doc.getChildNodes(aw.NodeType.Shape, true)
for (var shape of shapes) {
if (shape.hasImage()) {
// It's up to developer to choose the library for image compression.
const imageData = shape.getImageData().toStream();
// ...
// Compress image and set it back to the shape.
shape.getImageData().setImage(compressedImageBuffer);
}
}
var saveOptions = new aw.Saving.PdfSaveOptions()
saveOptions.cacheBackgroundGraphics = true
doc.save("Output.doc", saveOptions)
const aw = require('@aspose/words');
var doc = new aw.Document("Input.doc");
doc.cleanup();
var shapes = doc.getChildNodes(aw.NodeType.Shape, true)
for (var shape of shapes) {
if (shape.hasImage()) {
// It's up to developer to choose the library for image compression.
const imageData = shape.getImageData().toStream();
// ...
// Compress image and set it back to the shape.
shape.getImageData().setImage(compressedImageBuffer);
}
}
doc.save("Output.doc")
const aw = require('@aspose/words');
var doc = new aw.Document("Input.doc");
doc.cleanup();
var shapes = doc.getChildNodes(aw.NodeType.Shape, true)
for (var shape of shapes) {
if (shape.hasImage()) {
// It's up to developer to choose the library for image compression.
const imageData = shape.getImageData().toStream();
// ...
// Compress image and set it back to the shape.
shape.getImageData().setImage(compressedImageBuffer);
}
}
var saveOptions = new aw.Saving.OoxmlSaveOptions()
saveOptions.compressionLevel = aw.Saving.CompressionLevel.Maximum
doc.save("Output.doc", saveOptions)
const aw = require('@aspose/words');
var doc = new aw.Document()
var builder = new aw.DocumentBuilder(doc)
shape = builder.insertImage("Input.doc")
var saveOptions = new aw.Saving.ImageSaveOptions(aw.SaveFormat.Doc)
shape.getShapeRenderer().save("Output.doc", saveOptions)
We host our Node.js via .Net packages in NPM repositories. Please follow the step-by-step instructions on how to install "Aspose.Words for Node.js via .NET" to your developer environment.
This package is compatible with Node.js 14.17.0 or higher.
You can optimize files in many other file formats: