SVG is a vector format browsers can render natively; PDF is the format every printer, design buyer, and review tool can open. Converting between them shouldn't require a desktop design app, a third-party upload, or losing the vector edges. Drop your SVG above and the editor opens with your design loaded. Tweak it if you want, then click Download to get a vector PDF.
Vector preserved, no flattening
Many online "SVG to PDF" converters rasterize the result. You upload a clean vector, you get back a 300 DPI bitmap wrapped in a PDF, blurred at any other zoom and 10× the file size it should be. This converter parses the SVG into a Polotno design tree (paths, text, images, groups) and re-emits it through a real vector PDF engine. Strokes stay strokes, paths stay paths, text stays selectable. A bitmap option is also available when you need a pixel-perfect snapshot of the editor canvas instead.
What happens to your fonts
This is where SVG to PDF conversions usually go wrong, and it is worth knowing before you send the result anywhere. An SVG that uses font-family does not contain the font — it names it and assumes the machine rendering it has a copy. So a conversion has to either find that font or substitute one, and a substituted font reflows the text.
Here, text is kept as real text, and what happens to the font depends on which one it is. A Google font, or one you have registered, is embedded as a subset — the file then renders identically on a machine that has never heard of that typeface. A system family such as Arial, Times New Roman or Courier maps instead to one of the PDF base-14 fonts and is not embedded, so every reader supplies its own cut and the spacing can shift a little. That is legal and prints fine on an office printer, but a press RIP substitutes too, and PDF/X forbids unembedded fonts outright.
When a named font cannot be resolved at all, a fallback is substituted rather than the whole conversion failing — worth checking the result if your SVG uses an unusual family. To see exactly which fonts ended up embedded, drop the PDF on the preflight checker. If you need the shapes immovable regardless, convert the text to outlines in your design tool before exporting the SVG: you lose selectable text and gain absolute fidelity.
Going to print
A vector PDF is the starting point for print, not the finish line. What comes out of this page is a clean vector document at the SVG's own dimensions in RGB — right for screen, for sharing, and for an office printer. A commercial press will usually also want a specific trim size, bleed beyond it, CMYK or spot separations, and often PDF/X conformance with an ICC output intent.
Those are export options rather than conversion options, and this tool does not expose them — it gives you the two choices that matter for the common case, vector or bitmap. If you need the print-side controls, they live in @polotno/pdf-export, which is the same engine this page calls. Once you have a PDF, PDF preflight will tell you whether it carries the bleed and TrimBox your printer is asking for.
Edit during conversion
After you drop the file, the SVG opens inside the same Polotno editor we license to companies that ship design tools in their products. Move shapes, change colors, edit text, add an image, or just click Download as Vector PDF if no edits are needed. This solves the most common SVG-to-PDF pain: a designer's SVG that's 95% right, and you need to fix one thing without round-tripping through Illustrator.
How it works
svgToJson()parses the SVG into a Polotno design, the same parser our SDK customers use to import SVG assets in production.- The design loads into a Polotno editor mounted right on this page: pages, groups, paths, text, images, all editable.
- Click Download as Vector PDF and the editor passes the design JSON to
jsonToPDFBlob()from@polotno/pdf-export/browser, which emits a real vector PDF (paths, strokes, selectable text). The Bitmap PDF option callsstore.saveAsPDF()instead, one flattened image per page. - Everything runs in the browser. Your file never touches our servers.
The same conversion in code
If you're building an app that needs to convert SVGs to PDFs on the user's behalf, the same code path is available via the Polotno SDK:
import { svgToJson } from "@polotno/svg-import";
import { jsonToPDFBlob } from "@polotno/pdf-export/browser";
const json = await svgToJson({ svg: svgString });
// Vector PDF (default in this tool). skipFontError substitutes a
// fallback font instead of failing when a source font can't be loaded.
const blob = await jsonToPDFBlob(json, { skipFontError: true });
// Or raster - a flattened image per page, via a store
import { createStore } from "polotno/model/store";
const store = createStore({ key: "YOUR_KEY" });
store.loadJSON(json);
await store.saveAsPDF({ fileName: "design.pdf" });Full API reference: SVG Import, PDF Export, and the Import & Export overview.
