SVG Editor - Online Vector Drawing & Code Tool
Draw and edit SVG vector graphics in the browser. Basic shapes, text, and freehand. Export raw SVG code or as a file. No server, fully local.
UD5 Toolkit
Your HTML preview will appear here
foreignObject
<foreignObject> element. This allows you to render styled HTML content as a resolution-independent vector image that can be embedded, shared, or edited in vector design tools.<foreignObject> element allows you to embed non-SVG content (like HTML) inside an SVG document. The HTML is wrapped with an XHTML namespace and rendered natively by the browser, preserving CSS styling, layout, and text rendering—making it the standard method for HTML-to-SVG conversion.@font-face with external sources may fail (use system fonts or base64-encoded fonts), and the HTML must be valid XML (properly closed tags). Complex animations and dynamic content are not preserved.<link> or @import are generally not loaded in SVG foreignObject rendering. For reliable results, always use inline styles (the style="" attribute) or embed a <style> block directly within your HTML snippet. This ensures styles are fully self-contained within the SVG output.<script> tags) will not execute when the SVG is viewed in an image viewer or opened directly in a browser as a standalone SVG file. The SVG output is a static vector snapshot of your styled HTML. For interactive content, consider embedding the SVG in a full HTML page instead.foreignObject, including Chrome (v30+), Firefox (v25+), Safari (v9+), and Edge (all versions). The feature has been part of the SVG 1.1 specification and enjoys near-universal support. Mobile browsers on iOS and Android also render foreignObject content reliably.backdrop-filter and complex clip-path which may render inconsistently.<link> may not render in standalone SVG files because the external resource is blocked. For reliable font rendering, either use system fonts (like system-ui, -apple-system, sans-serif) or embed the font as a base64 data URI within a @font-face declaration. System fonts are the simplest and most portable option.foreignObject, the output is a true vector graphic. Text remains sharp at any zoom level, shapes scale perfectly, and the SVG can be resized to any dimensions without pixelation—unlike raster formats such as PNG or JPEG.<img> tags with absolute HTTPS URLs or data URIs will render correctly in the SVG output. Relative paths and local file references will break. For best results, convert images to base64 data URIs before including them, or ensure they're hosted on a publicly accessible server with proper CORS headers.Draw and edit SVG vector graphics in the browser. Basic shapes, text, and freehand. Export raw SVG code or as a file. No server, fully local.
Upload multiple SVGs and combine them into a single icon font (TTF, WOFF). Also get the CSS classes. Client‑side conversion.
Parse an SVG path’s d attribute and list all the commands and absolute coordinates. Convert relative to absolute. Local.
Create smooth, animated CSS waves (like water or sound) by adjusting amplitude, colors, and speed. Copy the ready‑to‑use SVG/CSS code.
Convert HTML to plain text while preserving paragraph breaks. Remove images, links, and scripts. Quick data extraction.
Create a 'drawing' effect for any SVG path. Adjust speed and delay. Copy the CSS and SVG code. No JS needed.
Map CSV columns with latitude/longitude to GeoJSON points. Create map‑ready data instantly. All local.
Assign a CSS class to any emoji and generate a snippet that displays the emoji as a background image or pseudo element. Useful for icon systems.
Create vertically oriented text layouts with `writing‑mode`. See the effect and copy the complete CSS. For vertical languages.
Transform normal sentences into cutesy UwU speak. Customizable intensity. Internet fun.
Convert standard Markdown into Slack’s mrkdwn format. Fixes bold, italic, and lists for perfect Slack message formatting.
Convert between emoji characters and their shortcode representations (e.g., :tada: to 🎉). Supports Slack and GitHub styles.
Encrypt and decrypt text using the browser's Web Crypto API. Supports AES‑GCM and subtle key generation. No server required.
Turn every line of a text file into a separate JSON object in a JSONL file. Configure key name and add line numbers. Perfect for data importing.
Use your webcam to record a video clip and download it as WebM. Adjust resolution. Works offline. Privacy‑friendly.
Use your webcam to record a video clip and download it as WebM. Adjust resolution and see a preview. Works offline.
Sign a message with a private key and verify the signature with the public key. Learn digital signature flow.
Extract a few seconds from a video and convert to a short looping GIF. Use browser video decoder.
Paste a data: URL and instantly download the file it represents. Supports all MIME types. Simple extraction.
Attempt to detect your current DNS resolver IPs using DNS‑leak test queries. Educational. Privacy‑friendly.
Create a fake WhatsApp/iMessage chat screenshot. Customize names, messages, and timestamps. Just for fun.
Create a realistic fake text message conversation. Choose iOS or Android style, set contact name, messages, and times. For laughs.
Convert hex or RGB to CIELAB L*a*b* values. Understand perceptual lightness and color opponents. Local math.
Build a complex mailto: link with to, cc, bcc, subject, and body. Get the HTML anchor tag. Local.
Trace the edges of an uploaded image and create a glowing neon SVG effect. Adjust glow color and thickness. Download SVG.
Paste a human‑readable date (like 'next Friday' or 'March 5, 2023') and convert it to ISO 8601 format. Quick and tolerant.
Click to get a randomly generated, unique abstract icon (geometric pattern). Download as SVG. For placeholder avatars and designs.
Reduce your HTML file size by stripping whitespace, comments, and optional closing tags. Secure browser‑based.
Convert between Gregorian and Hijri (Islamic) dates. Approximate visual reference. Local algorithm.
Convert a Gregorian calendar date to its Julian Day Number and vice versa. Used in astronomy and mainframe computing.