RAW & SVG conversion, done properly
Camera RAW files (.CR2, .CR3, .NEF, .ARW, .DNG, .RAF, .RW2, .ORF, .PEF) are TIFF-based containers. Buried inside every one of them — alongside the unprocessed sensor data — is a full-resolution JPEG preview that the camera itself generated for the rear LCD screen. VeloTools' RAW decoder walks the file's IFD/SubIFD structure in pure JavaScript, locates that embedded preview, inspects its JPEG header to confirm it's a standard baseline or progressive image (not the lossless sensor data, which browsers can't render), and loads it straight into the editor.
From there, the RAW preview behaves exactly like any uploaded photo: compress it, resize it, rotate it, or convert it to JPG, PNG, WebP, AVIF — even SVG. Batch mode supports RAW too, so a folder of 15 CR2 or NEF files can be converted to JPG or PNG in one pass, with each thumbnail decoded and shown before you hit Process.
SVG conversion works both directions. SVG → PNG/JPG/WebP rasterizes your vector file at its native size via the Canvas API — perfect for using a logo or icon anywhere SVG isn't supported. PNG/JPG → SVG wraps your image inside a single-file SVG container (the picture embedded as base64), which stays pixel-perfect and opens correctly in browsers, Figma, and Illustrator as a portable vector-compatible asset.
Every step — TIFF parsing, JPEG validation, rasterization, re-encoding — happens locally via WebAssembly-grade browser APIs. No RAW file, preview, or SVG ever touches a server.