Please bookmark this page to avoid losing your image tool!

G-Major 17 Image Effect 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, invertPct = 100, hueRotateDeg = 220, contrastPct = 200, saturatePct = 300, rgbSplitOffSetStr = "6") {
    // Create a new canvas to process the image
    const canvas = document.createElement('canvas');
    const width = originalImg.width;
    const height = originalImg.height;
    
    canvas.width = width;
    canvas.height = height;
    
    const ctx = canvas.getContext('2d');

    // G-Major effects are known for their harsh, inverted, and color-shifted visuals.
    // We apply base filters commonly found in these meme-style visual distortions.
    ctx.filter = `invert(${invertPct}%) hue-rotate(${hueRotateDeg}deg) contrast(${contrastPct}%) saturate(${saturatePct}%)`;
    ctx.drawImage(originalImg, 0, 0);

    // Parse the RGB split offset
    const offset = parseInt(rgbSplitOffSetStr, 10);
    
    // If an offset is provided, apply a chromatic aberration (RGB split) effect 
    // to give it that corrupted / glitchy G-Major VHS vibe.
    if (!isNaN(offset) && offset > 0) {
        const imageData = ctx.getImageData(0, 0, width, height);
        const pixels = imageData.data;
        
        // Clone the pixel data to reference original untouched channel values
        const bufferTemp = new Uint8ClampedArray(pixels);

        for (let y = 0; y < height; y++) {
            for (let x = 0; x < width; x++) {
                const i = (y * width + x) * 4;
                
                // Shift Red channel to the right
                const redX = x + offset;
                if (redX < width) {
                    const redBaseIndex = (y * width + redX) * 4;
                    pixels[i] = bufferTemp[redBaseIndex];     // Red
                }
                
                // Shift Blue channel to the left
                const blueX = x - offset;
                if (blueX >= 0) {
                    const blueBaseIndex = (y * width + blueX) * 4;
                    pixels[i + 2] = bufferTemp[blueBaseIndex + 2]; // Blue
                }
                
                // Green channel (pixels[i + 1]) stays in its original place
                // Alpha channel (pixels[i + 3]) stays untouched
            }
        }
        
        // Push the newly distorted pixel data back to the canvas
        ctx.putImageData(imageData, 0, 0);
    }

    // Return the final canvas element containing the customized G-Major 17 look
    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 G-Major 17 Image Effect Generator is a tool designed to apply intense, stylized visual distortions to images. It achieves a high-contrast, glitchy aesthetic by combining color inversion, hue rotation, and saturation adjustments with a chromatic aberration (RGB split) effect. This tool is ideal for creators looking to produce meme-style graphics, surreal digital art, or ‘glitchcore’ visuals for social media and video content.

Leave a Reply

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