Mermaid 다이어그램을 PNG, SVG, Markdown으로 내보내기

다이어그램은 보여질 수 있는 곳에서만 쓸모가 있습니다. mermaid는 네 가지 탈출구를 제공합니다 — 이미지, 벡터, 소스, 그리고 스스로 렌더링되는 Markdown 블록 — 그리고 어떤 것이 맞는지는 전적으로 다이어그램이 어디로 가느냐에 달려 있습니다. 이 글은 짧은 요약과 함께, 각 방법에서 무엇이 틀어질 수 있는지도 다룹니다.

형식부터 정하세요

목적지용도이유
GitHub, GitLab, Notion, ObsidianMarkdown 블록네이티브로 렌더링되고 diff도 가능합니다 — 별도로 관리할 파일이 없습니다.
슬라이드, 명세서, 채팅 메시지PNG어디에나 붙여넣을 수 있고, 렌더러가 필요 없으며, 어디서나 똑같이 보입니다.
웹사이트, 인쇄물SVG벡터 — 어떤 크기에서도 선명하고, 텍스트도 선택 가능한 채로 남습니다.
다른 에디터, 저장소.mmd 소스나중에 수정할 수 있습니다. 이미지는 막다른 길입니다.

목적지가 mermaid를 렌더링할 수 있다면, 아예 내보내지 마세요. 텍스트로 커밋된 다이어그램은 줄 단위로 리뷰할 수 있지만, 같은 다이어그램을 PNG로 커밋하면 통째로 교체하는 것만 가능합니다.

이 에디터에서 내보내기

코드 탭을 여세요 — 내보내기 버튼은 툴바에 있고, 각 버튼은 현재 렌더링된 결과에 대해 동작합니다.

  1. Copy SVG — <svg> 마크업을 클립보드에 담아, HTML 파일이나 디자인 툴에 바로 붙여넣을 수 있게 합니다.
  2. Download SVG — diagram.svg로 저장합니다.
  3. Download PNG — diagram.png로 저장하며, 흰 배경 위에 2배 해상도로 렌더링되어 고밀도 화면에서도 선명하고 흰 슬라이드 위에서 투명 얼룩으로 나타나는 일이 없습니다.
  4. Download .mmd — mermaid 소스를 일반 텍스트 파일로 저장합니다.
  5. Download .md (Notion) — 소스를 ```mermaid 펜스 블록으로 감싸 저장하며, Notion, GitHub, Obsidian은 붙여넣을 때 이를 렌더링합니다.

슬라이드 덱이라면 PNG를 선택하세요. 문서 제목, 포스터, 인쇄물처럼 크기가 조정될 것이라면 SVG를 선택하세요 — PNG를 내보낸 크기보다 크게 확대하면 즉시 흐릿해집니다.

대신 텍스트로 남기기

펜스 블록은 그 자리에서 계속 수정 가능한 상태로 남는 유일한 내보내기 방식입니다. 백틱 세 개, mermaid라는 단어, 다이어그램, 그리고 다시 백틱 세 개:

```mermaid
flowchart LR
  A[Write] --> B[Review]
  B --> C[Merge]
```
GitHub README에 이것을 붙여넣으면 바로 렌더링됩니다.
  • GitHub — README 파일, 이슈, 풀 리퀘스트, 댓글에서 렌더링됩니다.
  • GitLab — 위키, 이슈, 머지 리퀘스트에서 렌더링됩니다.
  • Notion — 코드 블록에 붙여넣고 언어를 Mermaid로 설정하세요.
  • Obsidian — 미리보기와 게시된 노트에서 렌더링됩니다.
  • Docusaurus / MkDocs Material / VitePress — 빌드된 문서에서 mermaid 블록이 렌더링됩니다.

흔히 틀어지는 것들

PNG가 흐릿해요

PNG는 고정 해상도입니다 — 정해진 픽셀 크기로 내보내지고, 그보다 크게 확대하면 보간이 일어납니다. 이 에디터가 2배 해상도로 내보내는 것도 그 때문입니다. 그래도 부족하다면 SVG를 내보내 원하는 크기로 변환하거나, 그냥 SVG를 사용하세요.

SVG에 배경이 없어요

SVG는 설계상 투명하게 내보내지므로, 어두운 노드 텍스트가 어두운 슬라이드 위에서 사라집니다. SVG를 밝은 카드 위에 올리거나, 흰 배경으로 내보내지는 PNG를 사용하세요.

다른 곳에서 폰트가 다르게 보여요

SVG는 폰트를 내장하지 않고 폰트 계열을 참조만 하므로, 해당 폰트가 없는 기기에서는 다른 폰트로 대체되어 라벨 박스가 어긋납니다. 뷰어의 폰트를 통제할 수 없다면 PNG를 사용하세요.

다이어그램이 잘려요

내보내기는 현재 렌더링된 화면을 그대로 읽으므로, 큰 다이어그램을 내보내기 전에 화면을 다시 가운데로 맞추세요. 노드 라벨이 지나치게 길다면 <br>로 줄을 나누세요 — mermaid는 라벨을 자동으로 줄바꿈하지 않습니다.

클릭 두 번으로 내보내기

에디터를 열고, 다이어그램을 붙여넣거나 그린 뒤, SVG나 PNG, 소스를 가져가세요. 계정 없이도 모두 이용할 수 있습니다.

자주 묻는 질문

mermaid를 PNG로 변환하려면 어떻게 하나요?

다이어그램을 렌더링한 뒤 Download PNG를 사용하세요. 에디터는 렌더링된 SVG를 2배 배율에 흰 배경으로 캔버스에 그려서 결과를 저장합니다 — 서버 왕복이 없으므로 다이어그램은 브라우저를 벗어나지 않습니다.

투명한 PNG로 내보낼 수 있나요?

PNG 버튼으로는 안 됩니다 — 의도적으로 흰색을 채우는데, 투명 배경 위의 어두운 다이어그램 텍스트는 PNG가 붙여지는 대부분의 장소에서 읽기 어렵기 때문입니다. 대신 SVG를 내보내세요 — SVG는 투명합니다.

크기 제한이 있나요?

고정된 제한은 없습니다. 내보내기는 브라우저 안에서 이루어지므로, 실질적인 한계는 브라우저가 렌더링할 수 있는 범위입니다 — 이는 다이어그램이 사람이 읽기 어려워지는 지점을 훨씬 지나서까지 이어집니다.

내보낸 후에도 다이어그램을 수정 가능한 상태로 유지하려면요?

소스를 보관하세요. 이미지와 함께 .mmd 파일이나 Markdown 블록을 다운로드하세요. PNG나 SVG는 다시 mermaid로 되돌릴 수 없지만, 소스는 에디터에 그대로 다시 붙여넣을 수 있습니다.

더 많은 가이드

  1. Mermaid 시퀀스 다이어그램

    참가자, 화살표 종류, 활성화 바, 반복문, alt 블록까지 — 바로 실행해볼 수 있는 예제로 배우는 시퀀스 다이어그램 문법 전체.

  2. Mermaid 문법 치트시트

    노드 모양, 화살표, 서브그래프, 스타일링을 한 페이지에 — 그리고 mermaid가 렌더링하는 모든 다이어그램 유형의 예제까지.

에디터를 여세요. 무료 — 가입 없음.

빈 캔버스, 코드 탭, 모든 내보내기 옵션까지 — 무료로, 브라우저에서, 지금 바로.