Please bookmark this page to avoid losing your image tool!

Perfect Day Image Generator

(Free & Supports Bulk Upload)

Drag & drop your images here or

The result will appear here...
You can edit the below JavaScript code to customize the image tool.
function processImage(originalImg, caption = "ИДЕАЛЬНЫЙ ДЕНЬ", applySunFilter = "1") {
    const canvas = document.createElement('canvas');
    const ctx = canvas.getContext('2d');
    
    // Set canvas dimensions to match the original image
    canvas.width = originalImg.width;
    canvas.height = originalImg.height;

    // Apply "perfect day" warm filters if enabled
    if (String(applySunFilter) === "1") {
        ctx.filter = 'brightness(1.15) contrast(1.1) saturate(1.3) sepia(0.15)';
    }

    // Draw the original image onto the canvas
    ctx.drawImage(originalImg, 0, 0);
    ctx.filter = 'none';

    // Add a warm sunlight optical flare/overlay to enhance the "perfect day" effect
    if (String(applySunFilter) === "1") {
        const cx = canvas.width * 0.85;
        const cy = canvas.height * 0.15;
        const rMax = Math.max(canvas.width, canvas.height) * 0.8;

        const gradient = ctx.createRadialGradient(cx, cy, 0, cx, cy, rMax);
        gradient.addColorStop(0, 'rgba(255, 255, 230, 0.6)');
        gradient.addColorStop(0.2, 'rgba(255, 215, 100, 0.25)');
        gradient.addColorStop(0.5, 'rgba(255, 150, 50, 0.08)');
        gradient.addColorStop(1, 'rgba(255, 255, 255, 0)');

        ctx.globalCompositeOperation = 'screen';
        ctx.fillStyle = gradient;
        ctx.fillRect(0, 0, canvas.width, canvas.height);
        
        // Reset composite operation to normal
        ctx.globalCompositeOperation = 'source-over';
    }

    // Add the caption text (default: "Идеальный день")
    if (caption && caption.length > 0) {
        const fontSize = Math.floor(Math.max(30, canvas.width / 12));
        ctx.font = `bold ${fontSize}px Impact, "Arial Black", sans-serif`;
        ctx.textAlign = 'center';
        ctx.textBaseline = 'bottom';
        
        ctx.lineWidth = Math.max(3, fontSize / 12);
        ctx.strokeStyle = '#000000';
        ctx.fillStyle = '#ffffff';

        // Support multiline text inputs
        const lines = caption.split(/\\n|\n/);
        const margin = Math.floor(canvas.height * 0.05);

        for (let i = 0; i < lines.length; i++) {
            const drawY = canvas.height - margin - ((lines.length - 1 - i) * (fontSize * 1.2));
            const text = lines[i].trim();
            if (text) {
                // Stroke text for meme-like readability over any image background
                ctx.strokeText(text, canvas.width / 2, drawY);
                // Fill text
                ctx.fillText(text, canvas.width / 2, drawY);
            }
        }
    }

    return canvas;
}

Free Image Tool Creator

Can't find the image tool you're looking for?
Create one based on your own needs now!

Description

The Perfect Day Image Generator is a creative tool designed to enhance your photos with a warm, sun-drenched aesthetic. It applies filters to increase brightness, contrast, and saturation, while adding a soft sunlight flare effect to simulate a bright, sunny atmosphere. Additionally, the tool allows you to overlay custom text captions with high-readability styling, making it ideal for creating social media posts, nostalgic memories, or meme-style imagery.

Leave a Reply

Your email address will not be published. Required fields are marked *