tool
const express = require('express');
const multer = require('multer');
const sharp = require('sharp');
const path = require('path');
const fs = require('fs');
const app = express();
const upload = multer({ dest: 'uploads/' });
app.use(express.static('public')); // Serve static files like converted files
// Convert API endpoint
app.post('/convert', upload.single('file'), async (req, res) => {
const file = req.file;
const format = req.body.format;
if (!file) {
return res.json({ success: false, error: "No file uploaded." });
}
try {
let outputPath = '';
const fileName = `${Date.now()}_converted`;
// File conversion logic
if (format === 'png-to-jpg') {
outputPath = `public/converted/${fileName}.jpg`;
await sharp(file.path).toFormat('jpeg').toFile(outputPath);
} else if (format === 'jpg-to-pdf') {
// Convert JPG to PDF logic here (PDF creation code)
}
// Provide download link
res.json({
success: true,
downloadLink: `http://localhost:3000/converted/${fileName}.jpg`, // Path to the converted file
});
} catch (error) {
res.json({ success: false, error: error.message });
}
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
File Converter Tool
Comments
Post a Comment