Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteUse the renderer that matches your diagram language: Mermaid code is rendered with Mermaid CLI (mmdc), PlantUML source with PlantUML’s Java command, and DOT files with Graphviz’s dot. Choose SVG when the image must stay sharp at any size, PNG for broad application compatibility, and PDF for reports or print handoff.
Choose the renderer before choosing the image format
Diagram code is not interchangeable. A Mermaid definition must be parsed by Mermaid, PlantUML syntax by PlantUML, and DOT syntax by Graphviz. Trying to open one language with another renderer produces syntax errors or an empty output.
| Source | Renderer | Typical command | Automation | Best starting format |
|---|---|---|---|---|
| Mermaid definition | Mermaid CLI | mmdc -i input.mmd -o output.svg |
Strong; shell and CI friendly | SVG or PNG |
| PlantUML source | PlantUML Java archive | java -jar plantuml.jar diagram.puml |
Strong; batch processing and directories | PNG by default, SVG/PDF when selected |
| DOT source | Graphviz dot |
dot -Tsvg input.dot > output.svg |
Strong; files, standard input, and pipelines | SVG or PNG |
| Mermaid in a hosted editor | Mermaid Chart export controls | Use the editor’s export command | Convenient UI; automation depends on service features | PNG, SVG, or PDF |
Pick PNG, SVG, or PDF
SVG for scalable diagrams
SVG is vector artwork, so labels and lines remain crisp when enlarged. It is usually the safest choice for web pages, documentation sites, and print layouts where the final size may change. Check that your publishing system allows SVG uploads and that any embedded fonts or external assets are available to the reader.
PNG for compatibility
PNG is a raster image supported by virtually every presentation, ticketing, and document tool. It is a practical default when recipients may not accept SVG. Export at a sufficient pixel size for the largest display you expect; enlarging a small PNG later will blur text.
#1 Best Overall
PDF for reports and handoff
PDF is useful when the diagram is part of a report or must be printed consistently. It preserves a page-oriented layout, but check paper size, margins, and page breaks before distribution.
Convert Mermaid code to an image with Mermaid CLI
1. Install the command-line renderer
Mermaid CLI is distributed through npm. Install it globally:
npm install -g @mermaid-js/mermaid-cli
Run mmdc --help afterward to confirm that the executable is on your PATH.
2. Save the diagram definition
Create input.mmd, for example:
flowchart LR
A[Write code] --> B{Choose renderer}
B -- Mermaid --> C[Mermaid CLI]
B -- PlantUML --> D[PlantUML]
B -- DOT --> E[Graphviz]
3. Render SVG, PNG, or PDF
mmdc -i input.mmd -o output.svg
mmdc -i input.mmd -o output.png
mmdc -i input.mmd -o output.pdf
The input file is parsed and the output extension selects the requested format. Mermaid CLI also supports presentation options such as a dark theme and a transparent PNG background:
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →mmdc -i input.mmd -o dark-transparent.png -t dark -b transparent
Use a normal background when text must remain readable on unknown page colors. Keep the source file in version control so the image can be regenerated after edits.
Export PlantUML source with Java
1. Run the archive on a source file
With plantuml.jar available, the basic invocation is:
java -jar plantuml.jar diagram.puml
PNG is the default output. PlantUML writes the generated image alongside the source unless an output directory is configured.
2. Select SVG or PDF explicitly
java -jar plantuml.jar -t svg diagram.puml
java -jar plantuml.jar -t pdf diagram.puml
PlantUML can process multiple files in one command and can work through directories, which makes it suitable for documentation builds. A batch example is:
Free tools Windows power users keep installed
One-click scans. No signup required.
java -jar plantuml.jar -t svg diagrams/*.puml
On systems where the shell does not expand wildcards, pass each filename or use the platform’s directory processing options.
Turn a DOT file into SVG or PNG with Graphviz
Render a saved file
Graphviz’s dot command reads a DOT file and uses -T to choose the output language:
dot -Tsvg input.dot > output.svg
dot -Tpng input.dot > output.png
A minimal input.dot file looks like this:
digraph {
start -> render
render -> image
}
Pipe DOT text without creating a file
echo 'digraph { a -> b }' | dot -Tsvg > output.svg
This pattern is useful in scripts that generate graph data dynamically. Graphviz supports many output languages; use the format name after -T and verify that the installed build includes it.
Use a hosted Mermaid editor when you do not want a local install
Mermaid Chart provides a browser editor with export controls. Open or create the Mermaid diagram, then choose the export format. Its documented use cases are PNG for presentations and documents, SVG for web or print because it scales without quality loss, and PDF for reports.
A hosted editor is convenient for occasional diagrams and collaborative editing. Local CLI tools are generally better when a build must run unattended, when source files are private, or when you need deterministic rendering in CI. Treat a hosted service as a digital service: review its account, storage, and sharing settings before uploading confidential diagrams.
Make conversion repeatable in documentation and CI
- Store source (
.mmd,.puml, or.dot) beside generated assets. - Pin the renderer version in the project’s package or build environment so an upgrade does not silently change layout.
- Render into a predictable directory and fail the build when the command exits nonzero.
- Keep SVG for sites that can display it, and generate PNG or PDF variants only where a consumer requires them.
- Review long labels and wide diagrams at the target page width; a technically successful render can still be unreadable.
Troubleshooting common conversion failures
“Command not found” or an unavailable executable
Check installation and PATH first. For Mermaid CLI, confirm the npm global binary directory is on PATH. For PlantUML, verify the Java runtime with java -version and use the correct path to plantuml.jar. For Graphviz, run dot -V.
Blank output or a parser error
Make sure the renderer matches the source language and inspect the first reported line. Mermaid errors often come from an invalid diagram declaration or arrow syntax; PlantUML requires its expected source delimiters and diagram statements; DOT requires balanced braces and valid graph statements.
Rank #4
Text is clipped or too small
Prefer SVG, increase the PNG output dimensions when your renderer supports that option, shorten labels, or split an oversized diagram into linked sections. For PDF, check page size, orientation, and margins rather than scaling a raster image after export.
Fonts or icons differ between machines
Rendering depends on installed fonts and, for some diagrams, browser or Java rendering environments. Use a pinned build image, install required fonts in CI, and inspect the generated artifact rather than relying only on a local preview.
SVG is rejected by the destination system
Export PNG for systems that block vector uploads. Keep the SVG as the high-resolution master so you can regenerate a correctly sized PNG later.
Or skip the browser setup
ScreenshotNeo can capture a rendered web page with one request, including PNG, JPEG, WebP, or PDF output. It accepts the cookie or consent banner like a visitor, then removes more than 60 known consent platforms, newsletter popups, and chat widgets before the capture; each cleanup step can be disabled. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and the response identifies the result with X-Page-Verdict and X-Billed headers.
Use the API when your diagram is already published in a browser-based renderer or documentation page and you need a clean image of that page. API details and all options are in the ScreenshotNeo documentation.
Recommended Free Tools
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
ScreenshotNeo also offers an MCP server for Claude, Cursor, and other MCP clients, with take_screenshot, get_page_info, and capture_pdf tools. It supports full-page captures with lazy images loaded, CSS-selector element captures, dark mode, device and viewport presets, retina scale, custom CSS and JavaScript, clicks, waits, request blocking, headers, cookies, user agents, authorization, timezone and geolocation, transparent backgrounds, resizing, TTL caching, signed links, asynchronous jobs with signed webhooks, bulk capture of up to 100 URLs per call, a usage API, and an OpenAPI specification. Parameter names used by other screenshot APIs also work.
Best Value
- Students build unmatched deductive-reasoning skills as they become crime-solving stars
- Most scenarios have more than one plausible outcome, allowing individuals or groups to broadly interpret evidence
- Includes interpretive handwriting, body language, fingerprinting, and many more activities
The Free plan includes 1,000 screenshots a month with no card. Paid plans start at $5 for 3,000 shots; yearly billing gives two months free. Sign up for the free plan to try it without a card.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Which workflow should you use?
- Choose Mermaid CLI when the source is Mermaid and you want a Node-based, scriptable build.
- Choose PlantUML when the source uses PlantUML or UML-oriented notation and Java batch processing fits your environment.
- Choose Graphviz when the source is DOT or when a shell pipeline must generate graph output.
- Choose Mermaid Chart when you prefer browser editing and occasional manual export.
- Choose ScreenshotNeo when the diagram is rendered on a web page and you want a clean, automated capture without maintaining browser setup.
Frequently Asked Questions
Can I convert Mermaid, PlantUML, and DOT with one universal command?
No. Each language has its own parser and renderer: Mermaid CLI, PlantUML, or Graphviz, respectively.
Is SVG always better than PNG?
No. SVG scales better, but PNG is more widely accepted by applications that reject vector uploads.
What should I commit to version control?
Commit the diagram source and the build configuration; generate images during the build when practical, or commit generated assets when your publishing workflow requires them.
Why does my generated image look different on another computer?
Fonts, renderer versions, and runtime environments can change layout. Pin versions and provide the same fonts in local and CI environments.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

