Overview
Web application miễn phí giúp tạo background đẹp mắt cho ảnh với 6 loại nền RGB (Solid, Gradient, Linear, Radial, Glassmorphism, Frosted). Tự động bo góc, thêm watermark, và export đa kích thước cho Instagram, Facebook, Twitter, YouTube. Chạy 100% trên browser, không cần server, bảo mật tuyệt đối.
Key Features
6 Loại Nền RGB
Đa dạng style để phù hợp với mọi nhu cầu:
- Solid Color: Màu đơn sắc, clean và professional
- Gradient: Chuyển màu mượt mà giữa 2 màu
- Linear Gradient: Gradient theo hướng tùy chỉnh
- Radial Gradient: Gradient tỏa tròn từ tâm
- Glassmorphism: Hiệu ứng kính mờ hiện đại
- Frosted Background: Nền mờ ảo với blur effect
// Ví dụ tạo Glassmorphism background
const createGlassmorphism = (canvas, color1, color2) => {
const ctx = canvas.getContext('2d');
// Create gradient base
const gradient = ctx.createLinearGradient(0, 0, canvas.width, canvas.height);
gradient.addColorStop(0, color1);
gradient.addColorStop(1, color2);
// Apply glass effect
ctx.fillStyle = gradient;
ctx.fillRect(0, 0, canvas.width, canvas.height);
ctx.filter = 'blur(20px) brightness(1.2)';
};
Upload & Preview Real-time
Trải nghiệm người dùng mượt mà:
- Drag & Drop: Kéo thả ảnh vào browser
- File Picker: Hoặc click để chọn file
- Real-time Preview: Xem kết quả ngay lập tức
- Responsive: Hoạt động tốt trên mobile và desktop
Bo Góc Tùy Chỉnh
Điều chỉnh border radius từ 0-50px:
const applyRoundedCorners = (image, radius) => {
const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
// Create rounded rectangle path
ctx.beginPath();
ctx.roundRect(0, 0, canvas.width, canvas.height, radius);
ctx.clip();
// Draw image with rounded corners
ctx.drawImage(image, 0, 0);
};
Watermark Linh Hoạt
Thêm watermark text hoặc ảnh:
- 5 vị trí: Top-left, Top-right, Center, Bottom-left, Bottom-right
- Opacity điều chỉnh: 0-100%
- Size tùy chỉnh: Small, Medium, Large
- Text watermark: Font, color, shadow
- Image watermark: Upload logo riêng
const addWatermark = (canvas, text, position, opacity) => {
const ctx = canvas.getContext('2d');
ctx.globalAlpha = opacity;
ctx.font = '24px Arial';
ctx.fillStyle = 'white';
ctx.shadowColor = 'black';
ctx.shadowBlur = 4;
const positions = {
'bottom-right': [canvas.width - 150, canvas.height - 30],
'bottom-left': [30, canvas.height - 30],
'top-right': [canvas.width - 150, 50],
'top-left': [30, 50],
'center': [canvas.width/2 - 75, canvas.height/2]
};
ctx.fillText(text, ...positions[position]);
};
Export Đa Kích Thước
Tối ưu cho từng nền tảng:
| Platform | Size | Aspect Ratio |
|---|---|---|
| Instagram Post | 1080x1080 | 1:1 |
| Instagram Story | 1080x1920 | 9:16 |
| Facebook Post | 1200x630 | 1.91:1 |
| Twitter Post | 1024x512 | 2:1 |
| YouTube Thumbnail | 1280x720 | 16:9 |
| Custom | Any size | Custom |
const exportSizes = {
instagram: { width: 1080, height: 1080 },
story: { width: 1080, height: 1920 },
facebook: { width: 1200, height: 630 },
twitter: { width: 1024, height: 512 },
youtube: { width: 1280, height: 720 }
};
const exportImage = (canvas, platform) => {
const size = exportSizes[platform];
const resized = resizeCanvas(canvas, size.width, size.height);
return resized.toDataURL('image/png');
};
Architecture
100% Client-Side Processing
Tất cả xử lý diễn ra trên browser:
┌──────────────┐
│ Browser │
│ │
│ ┌────────┐ │
│ │ Upload │ │
│ └───┬────┘ │
│ │ │
│ ┌───▼────┐ │
│ │ Canvas │ │
│ │ API │ │
│ └───┬────┘ │
│ │ │
│ ┌───▼────┐ │
│ │ Export │ │
│ └────────┘ │
│ │
└──────────────┘
Lợi ích:
- ✅ Bảo mật tuyệt đối (ảnh không upload lên server)
- ✅ Tốc độ nhanh (không cần network)
- ✅ Hoạt động offline
- ✅ Không giới hạn số lượng ảnh
Cloudflare Workers Deployment
Deploy trên Cloudflare Workers để có:
- Global CDN: Tốc độ nhanh trên toàn cầu
- Zero cold start: Luôn sẵn sàng
- Free tier: 100,000 requests/day miễn phí
- HTTPS: Bảo mật mặc định
// wrangler.toml
name = "photo-background-maker"
compatibility_date = "2024-11-22"
pages_build_output_dir = "./dist"
Use Cases
Content Creators
Tạo ảnh đẹp cho social media:
- Instagram posts với nền gradient
- Story với glassmorphism effect
- YouTube thumbnails với watermark
- Facebook cover photos
Designers
Quick mockups và presentations:
- Product showcase với nền đẹp
- Portfolio images với branding
- Client presentations
- Social media templates
Marketers
Marketing materials nhanh chóng:
- Promotional graphics
- Event announcements
- Quote cards
- Brand assets
Performance
Optimization Techniques
// Lazy load images
const lazyLoadImage = (src) => {
return new Promise((resolve) => {
const img = new Image();
img.onload = () => resolve(img);
img.src = src;
});
};
// Canvas pooling for better performance
const canvasPool = [];
const getCanvas = () => {
return canvasPool.pop() || document.createElement('canvas');
};
// Web Workers for heavy processing
const worker = new Worker('image-processor.js');
worker.postMessage({ image: imageData, effect: 'blur' });
Benchmarks
- Upload to preview: < 100ms
- Apply effect: < 200ms
- Export image: < 500ms
- Memory usage: < 50MB
Tech Stack
- Frontend: Vanilla JavaScript (no framework overhead)
- Canvas API: HTML5 Canvas cho image processing
- Deployment: Cloudflare Workers
- Build: Vite cho fast development
- Styling: Tailwind CSS
User Experience
Intuitive Interface
┌─────────────────────────────────┐
│ Photo Background Maker 🎨 │
├─────────────────────────────────┤
│ │
│ [Drag & Drop or Click] │
│ │
├─────────────────────────────────┤
│ Background Type: [Gradient ▼] │
│ Color 1: [🎨] Color 2: [🎨] │
│ Border Radius: [●────────] 20px│
│ │
│ Watermark: [Text ▼] │
│ Position: [Bottom-right ▼] │
│ Opacity: [●────────] 50% │
│ │
│ Export Size: [Instagram ▼] │
│ │
│ [Download Image] │
└─────────────────────────────────┘
Mobile Responsive
Hoạt động tốt trên mọi thiết bị:
- Touch-friendly controls
- Responsive layout
- Mobile-optimized file picker
- Pinch to zoom preview
Impact
Statistics
- 🎨 6 background types để lựa chọn
- 📱 5+ export sizes cho social media
- 🔒 100% client-side processing
- 🚀 < 500ms export time
- 💰 Hoàn toàn miễn phí
User Benefits
- Tiết kiệm thời gian (không cần Photoshop)
- Không cần kỹ năng design
- Bảo mật ảnh cá nhân
- Không giới hạn sử dụng
- Không watermark bắt buộc
Future Enhancements
- Thêm filters (Vintage, B&W, Sepia)
- Batch processing nhiều ảnh cùng lúc
- Templates có sẵn cho từng ngành
- AI-powered background removal
- Collaboration features (share templates)
- Mobile app (iOS/Android)
Try It Now
🔗 Live Demo: photo-background-maker.datnt-work.workers.dev
Hoàn toàn miễn phí, không cần đăng ký, không giới hạn!