본문으로 건너뛰기

© 2026 Molayo

Zenn헤드라인2026. 06. 15. 13:57

AI Safe Markdown Preview에 줌 인·줌 아웃 기능 추가

요약

VSCode 확장 프로그램인 AI Safe Markdown Preview v0.4.0에서 프리뷰 줌 인·줌 아웃 기능을 추가했습니다. CSS font-size 스케일링 방식을 사용하여 레이아웃 깨짐 없이 50%~300% 범위의 확대/축소를 지원합니다.

핵심 포인트

  • 버튼 클릭 또는 Ctrl/Cmd + 휠로 10% 단위 줌 조절 가능
  • font-size 스케일링 방식을 채택하여 테이블 및 Mermaid 레이아웃 유지
  • Webview 내 JavaScript로 줌 로직을 완결하여 구현
  • AI 에이전트 사용 시 Markdown 가독성 향상

서론

이전에 AI 에이전트의 빈번한 업데이트를 견딜 수 있는 Markdown 프리뷰 VSCode 확장 프로그램인 "AI Safe Markdown Preview"를 만들었다는 글을 쓴 적이 있습니다.

이번에 v0.4.0에서 프리뷰에 줌 인·줌 아웃 (Zoom In/Out) 기능을 추가하여 소개합니다.

추가된 기능: 프리뷰 줌

프리뷰의 글자 크기를 50%~300% 범위 내에서 확대·축소할 수 있게 되었습니다.

  • 큰 모니터에서 작게 보이는 글자를 확대하여 읽기 쉽게 만든다.
  • 전체 구성을 조감하고 싶을 때 축소한다.

와 같은 방식으로 사용할 수 있습니다.

조작 방법

줌은 세 가지 방법으로 조작할 수 있습니다.

조작방법
줌 인 (Zoom In)프리뷰 상단의 버튼 / Ctrl (Mac은 Cmd) + 휠 위로
...

줌 레벨은 10% 단위로 변화하며, 현재 줌 비율은 상단 바에 항상 표시됩니다. 또한, 프리뷰 패널을 다시 열면 매번 100%로 리셋됩니다.

구현 포인트: font-size 스케일링 (scaling)

줌 구현 방법으로는 뷰포트 (Viewport) 전체를 확대·축소하는 방법도 생각할 수 있지만, 그렇게 하면 테이블(Table)이나 Mermaid 다이어그램의 레이아웃이 깨지기 쉽습니다.

그래서 이 확장 프로그램에서는 콘텐츠의 font-size를 CSS 커스텀 프로퍼티 (--zoom)로 스케일링하는 방식을 채택했습니다.

#content { font-size: var(--zoom, 100%); }

font-size를 기준으로 함으로써, 텍스트 줄 바꿈·테이블·Mermaid 다이어그램이 비율을 유지한 채 확대·축소되어 레이아웃이 깨지지 않습니다.

JavaScript 측 처리

줌 로직은 Webview 내의 JavaScript로 완결됩니다. VSCode의 커맨드나 키 바인딩 (Keybinding)은 사용하지 않고, Webview 내의 버튼 클릭과 휠 이벤트 (Wheel Event)만으로 동작합니다.

var ZOOM_MIN = 50;
var ZOOM_MAX = 300;
var ZOOM_STEP = 10;
...

changeZoom()에서 Math.min / Math.max를 사용하여, 줌 레벨이 50%~300% 범위를 벗어나지 않도록 제어하고 있습니다.

Ctrl / Cmd + 휠에 대해서는, wheel 이벤트에서 수식 키 (Modifier Key)가 눌려 있을 때만 기본 동작을 억제하고 줌에 할당하고 있습니다.

window.addEventListener('wheel', function(event) {
if (!event.ctrlKey && !event.metaKey) { return; }
event.preventDefault();
...

수식 키가 눌려 있지 않을 때는 조기 리턴 (Early Return) 하므로, 일반적인 스크롤에는 영향을 주지 않습니다.

요약

AI Safe Markdown Preview에 프리뷰 줌 인·줌 아웃 기능을 추가했습니다.

  • 버튼 / CtrlCmd + 휠로 조작.
  • 50%~300%를 10% 단위로 조정, 퍼센트 표시 클릭 시 100%로 리셋.
  • font-size 스케일링을 통해 테이블이나 Mermaid의 레이아웃을 깨뜨리지 않음.

VS Code Marketplace에서 설치할 수 있습니다.

Claude Code와 같은 AI 에이전트와 Markdown을 사용할 기회가 많은 분은 꼭 한번 사용해 보세요.

Discussion

AI 자동 생성 콘텐츠

본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0