Image FFT Visualizer - Online See Frequency Domain
Upload an image and see its 2D FFT magnitude and phase. Learn how image filtering works. Educatinal tool. Canvas.
UD5 Toolkit
Test onload / onerror events in real-time with precise timing.
onload event fires when an image has been successfully downloaded and decoded by the browser. At this point, the image's naturalWidth and naturalHeight properties are available, and the image can be rendered to a canvas or displayed in the DOM. This event is crucial for triggering actions that depend on the image being fully available, such as starting animations, updating UI states, or measuring image dimensions for responsive layouts.
onerror event triggers when the browser fails to load the image. Common causes include: 404 Not Found (the URL points to a non-existent resource), DNS resolution failure (the domain doesn't exist), network errors (timeouts, connection refused), invalid image data (the server returned a non-image response with a 200 status), CORS issues (when using cross-origin images in canvas), and server errors (5xx status codes). Always implement an onerror handler to provide fallback images or graceful degradation in production applications.
Image object strictly validates the response: if the MIME type isn't an image format (like image/png, image/jpeg, image/webp, image/svg+xml), or if the binary data is corrupted, onerror fires. This is a common pitfall when debugging image loading issues. Use this tool to test URLs and see exactly which event fires.
performance.now() or Date.now() to capture timestamps before setting the image src and inside the onload callback. The difference gives you the exact loading duration in milliseconds. This tool automates that process — every test shows the precise load time. For production monitoring, consider using the Resource Timing API (performance.getEntriesByType('resource')) which provides detailed network timing breakdowns including DNS, TCP, TLS, and TTFB for each image.
<img> tags and trigger onload normally — CORS does not block basic image display. However, if you try to draw a cross-origin image onto a <canvas> without the crossorigin="anonymous" attribute and proper CORS headers on the server, the canvas becomes tainted and you cannot call toDataURL() or getImageData(). The image onload event still fires, but subsequent canvas operations will throw a security error. Always set img.crossOrigin = 'anonymous' before setting src if you plan to use canvas operations.
loading="lazy" attribute on <img> tags, the browser defers loading until the image approaches the viewport. The onload and onerror events do not fire until the image actually starts loading. If an image never enters the viewport, these events may never trigger. When testing with JavaScript new Image() (as this tool does), lazy loading is not applicable — the image begins loading immediately upon setting src, which gives you the most direct way to debug load events. Keep this distinction in mind when debugging lazy-loaded images in your application.
Upload an image and see its 2D FFT magnitude and phase. Learn how image filtering works. Educatinal tool. Canvas.
Pick any emoji and download it as a high‑resolution PNG image with transparent background. For social media or icons.
Rotate the hue of any image globally. Turn a red car blue instantly. Download the result. Works entirely in the browser.
Predict the file size of an image based on pixel dimensions and format (JPEG, PNG, WebP). Rough estimate. Local.
Paste an image from your clipboard directly into the page (Ctrl+V) and extract its color palette. No file dialog needed.
Add a repeating diagonal text watermark to your images. Adjust opacity, font, and color. Protect your photos locally.
Turn a photo into a high‑contrast ASCII art using only standard text characters. Adjust brightness and character set. Works offline.
Apply an emboss filter to your photo. Choose direction and depth. Gives a 3D carved stone look. Pure canvas.
Convert any image into a raw binary array of RGBA values. For use in embedded systems or game development. Copy as Uint8Array.
Automatically remove white background from an image and make it transparent. Adjust tolerance. Save as PNG.
Reduce an image to large colored squares. Create bold, minimalist wall art. Adjust block size. Download PNG.
Convert any image into colored ASCII art using divs with background colors. Creates a stunning text‑based replica. View & copy HTML.
Paste a list of JavaScript values and see them pretty‑printed as if in the browser console. Great for debugging.
Paste HTML/CSS snippets or enter properties to test how z‑index and stacking contexts interact. Real‑time example.
Drop an image that might have wrong extension and see its real format (JPEG, PNG, WebP) based on header bytes.
Upload a small pixel art image and get a CSS grid layout that recreates it using divs. Novelty developer tool.
Get a random adorable dog picture. Breed info shown if known. Pure mood booster. Client‑side API call.
Enter a message and render it as an image of dots and dashes. Customizable colors. Great for posters.
Convert short text into a black‑and‑white Braille bump image ready for embossing. Educational and inclusive.
Resize and crop an image to a specific aspect ratio (1:1, 16:9…) with automatic fit/cover. Download the perfect image.
Enter an image URL and extract its dominant color palette. No download needed. Fast visual analysis.
Convert multiple images to Base64 data URIs at once. Copy individually or as a JSON array. Great for inline assets. Local.
Enter a regular expression and see a visual railroad diagram explaining the pattern. Learn and debug regex.
Paste two texts, compute the diff, and render the result as a highlighted image. Easier to share changes visually.
Create shareable quote images. Choose background gradient or photo, add text, and download as PNG. Fully local design tool.
Remove solid or similar backgrounds from images using color thresholding. No AI, just quick client-side canvas processing. Download as PNG.
Generate dynamic placeholder images by specifying width, height, colors, and text. View instantly as a URL you can embed in mockups. Canvas-based.
Create beautiful, syntax-highlighted screenshots of your code snippets. Choose themes and export as PNG. All client-side canvas rendering.
Split an image into equal grid parts or horizontal/vertical strips. Useful for Instagram carousel posts or puzzle creation. Everything runs in your browser.
Protect your images by adding a text or image watermark. Adjust transparency, position, and rotation. All image processing is done locally; no upload to server.