zip-file-processor
v1.0.9
Published
A package for processing ZIP files
Maintainers
Readme
zip-file-processor
This package provides functionality for processing ZIP files, including extracting a JSON file, modifying its content, and adding text to images.
Installation
Install the package with npm:
npm install zip-file-processorUsage
Import the module and call the processZipFile function, passing it a ZIP file for processing:
import { processZipFile } from 'zip-file-processor';
async function processMyZipFile(file) {
const updatedFile = await processZipFile(file);
if (updatedFile) {
console.log('ZIP file processed successfully and saved');
} else {
console.error('Error occurred while processing ZIP file');
}
}
// Example usage
const inputFile = document.getElementById('zip-file-input').files[0];
processMyZipFile(inputFile);Functionality
processZipFile: Extracts a JSON file from the ZIP archive, modifies its content by adding text to images, and creates a new ZIP archive with the updated content;extractJsonFile: Searches for a JSON file in the ZIP archive and extracts its content;updateJsonContent: Modifies the JSON file's content by adding text to images;
Dependencies
jszip: A library for working with ZIP archives. Documentationcanvas: A browser API for drawing graphics on a canvas. Documentation
Requirements
Node.jsversion12.0.0or higher.;npmversion6.0.0or higher;
Examples
// Example of handling errors and providing feedback to the user
async function processMyZipFile(file) {
try {
const updatedFile = await processZipFile(file);
if (updatedFile) {
console.log('ZIP file processed successfully and saved');
}
} catch (error) {
console.error('Error occurred while processing ZIP file:', error.message);
}
}
// Example of using FileReader to save the updated ZIP file
const inputFile = document.getElementById('zip-file-input').files[0];
processMyZipFile(inputFile).then(() => {
const fileSaver = new FileReader();
fileSaver.onload = (event) => {
const blob = new Blob([event.target.result], { type: updatedFile.type });
const link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.download = updatedFile.name;
link.click();
};
fileSaver.readAsArrayBuffer(updatedFile);
});License
zip-file-processor zip-file-processor is licensed under the ISC License. License
Contact Information
- Name: Atabay Arniyazov
- Email: [email protected]
Acknowledgments
This package was created using the following resources and libraries:
jszip: https://github.com/Stuk/jszipcanvas: https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API
