자막 폰트 추천: Netflix와 BBC가 정한 기준
자막 폰트는 Verdana나 Arial처럼 폭이 넓고 단순한 산세리프체가 가장 좋아요. Netflix와 BBC가 정한 기준, 픽셀로 환산한 크기, 글자 대신 빈 사각형이 뜨는 이유를 정리했어요.
자막에 가장 좋은 폰트는 Verdana, Arial, Tiresias처럼 폭이 넓고 단순한 산세리프체예요. 줄 높이는 화면 높이의 약 8%로 맞추고, 글자는 흰색에 어두운 외곽선이나 박스를 두르면 돼요. 이 정도면 Netflix와 BBC가 정한 기준에 가까워요. 굵은 디스플레이 폰트는 짧은 소셜 캡션용이고, 대사용이 아니에요.
이 글에서는 흔히 쓰는 폰트를 비교하고, 크기 규칙을 픽셀로 환산해서 보여주고, 일부 캡션 폰트가 언어 전체를 빈 사각형으로 바꿔 버리는 이유를 짚어요. 시청자가 내 폰트를 볼 수 있는지 아닌지를 가르는 전달 방식의 세부 사항도 다뤄요.
자막에 가장 좋은 폰트 비교
읽기 좋은 자막 폰트에는 세 가지 공통점이 있어요. 열린 글자꼴, 고른 획 굵기, 넉넉한 폭이에요. 자막은 움직이는 화면 위에서, 흔히 휴대폰으로, 2~3초 동안만 시선을 받는데, 이 세 가지는 모두 글자를 알아보는 속도를 높여 줘요.
| 폰트 | 스타일 | 적합한 용도 | 키릴 문자 | 아랍, 히브리, 인도계, 태국, CJK 문자 | 구하는 곳 |
|---|---|---|---|---|---|
| Verdana | 폭이 넓은 휴머니스트 산세리프체 | 두 줄짜리 대사 | 지원 | 미지원 | Windows와 Mac에 기본 포함 |
| Arial | 네오 그로테스크 산세리프체 | 대사, Netflix 영어 가이드의 자리 표시용 폰트 | 지원 | Windows에서 아랍 문자와 히브리 문자 | Windows와 Mac에 기본 포함 |
| Roboto | 네오 그로테스크 산세리프체 | 화면 텍스트, 세로 영상 | 지원 | 미지원 | 무료, Google Fonts |
| Noto Sans 패밀리 | 휴머니스트 산세리프체 | 모든 언어 | 지원 | 지원, 문자 체계마다 패밀리 하나 | 무료, Google Fonts |
| Montserrat ExtraBold | 굵은 지오메트릭 산세리프체 | 짧은 소셜 캡션 | 지원 | 미지원 | 무료, Google Fonts |
| Bebas Neue | 폭이 좁은 대문자체 | 한 단어에서 세 단어 | 미지원 | 미지원 | 무료, Google Fonts |
| Anton | 폭이 좁은 디스플레이 서체 | 한 단어에서 세 단어 | 미지원 | 미지원 | 무료, Google Fonts |
패턴에서 벗어나는 건 디스플레이 서체예요. 숏폼 캡션에 흔히 쓰는 Bebas Neue와 Anton은 러시아어나 우크라이나어 글자를 단 하나도 그리지 못해요. Google Fonts가 두 폰트를 라틴 문자만 담아서 배포하기 때문이에요. 릴스 영상에 올릴 영어 세 단어라면 괜찮지만, 여러 언어로 자막을 달 영상에는 잘못된 선택이에요.
Verdana가 표 맨 위에 있는 데는 Microsoft가 자체 문서에서 밝히는 이유가 있어요. 화면용으로 설계된 폰트이고, 문서에는 “Verdana 글자의 넉넉한 폭과 간격이 가독성의 핵심”이라고 적혀 있어요. 자막에 필요한 특성이 바로 이거예요. BBC의 자막 가이드라인은 “Reith Sans, Verdana, Tiresias 같은 폭이 넓은 폰트”를 요구하는데, Reith Sans는 BBC 전용 서체라서 그 밖의 사람들에게 현실적인 선택지는 Verdana와 Tiresias예요.
자막 크기는 어느 정도가 좋을까요?
자막 크기는 포인트 숫자가 아니라 화면 높이를 기준으로 정하세요. BBC는 16:9, 4:3, 1:1 영상에서 줄 높이를 유효 영상 높이의 8%로, 9:16에서는 4.5%로 정해 두었어요. 두 번째 수치는 첫 번째 수치에 9/16을 곱한 값이라서, 세로 영상에서도 가로 영상과 거의 같은 크기의 텍스트가 나와요:
| 프레임 | 화면비 | 줄 높이 | 픽셀 환산 |
|---|---|---|---|
| 1280×720 | 16:9 | 8% | 58 px |
| 1920×1080 | 16:9 | 8% | 86 px |
| 3840×2160 | 16:9 | 8% | 173 px |
| 1080×1080 | 1:1 | 8% | 86 px |
| 1080×1920 | 9:16 | 4.5% | 86 px |
Netflix는 같은 생각을 반대쪽 끝에서 말해요. 영어 스타일 가이드는 텍스트 크기를 “영상 해상도, 그리고 화면 가로에 42자를 담을 수 있는지에 맞춰” 정해요. 42자는 줄 길이 한도이기도 한데, 읽기 속도 가이드도 이 숫자를 기준으로 삼아요. 최대 길이의 한 줄은 여백을 넉넉히 남기고도 프레임 안에 들어와야 해요.
편집기의 포인트 크기는 어떤 캔버스를 기준으로 측정되는지 알기 전에는 아무 의미가 없어요. FFmpeg의 subtitles 필터는 SRT를 288라인짜리 가상 캔버스에 배치하기 때문에, 거기서 FontSize=23은 어떤 해상도에서든 대략 BBC가 말하는 8%예요. 반면 실제 프레임을 기준으로 측정하는 영상 편집기에서 같은 숫자를 쓰면 몇 분의 일 크기의 텍스트가 나와요.
외곽선이냐 박스냐: 흰 글자를 읽기 좋게 지키는 법
흰색 글자는 주변에 어두운 무언가가 있어야 해요. 영상은 계속 어둡게 유지되지 않으니까요. BBC는 검은 배경 위에 쓰는 자막 색을 흰색, 노란색, 시안, 초록색 네 가지로 제한하고, 기본값은 흰색이에요. 글자를 화면에서 분리하는 방법은 세 가지예요:
- 외곽선은 글자마다 어두운 테두리를 둘러요. 화면 대부분이 그대로 보이기 때문에 영화 자막과 소셜 캡션이 이 방식을 써요. 외곽선이 두꺼울수록 복잡한 영상에서 더 잘 버티지만 더 무거워 보여요.
- 그림자는 글자 뒤에 살짝 비껴 놓은 부드러운 복사본을 더해요. 은은하지만, 그림자만으로는 밝고 디테일이 많은 배경에서 실패해요.
- 박스는 줄 뒤에 불투명하거나 반투명한 직사각형을 깔아요. 어떤 영상에서든 가장 읽기 쉬운 방식이고 전통적인 방송 자막의 모양이지만, 화면도 가장 많이 가려요.
ASS 파일에서는 이 값이 BorderStyle=1이면 그림자가 있는 외곽선이고, BorderStyle=3이면 불투명한 박스예요. 같은 텍스트가 이 값 하나에 따라 영화 자막처럼도, TV 자막처럼도 보여요.
굵은 캡션 폰트는 가독성을 해칠까요?
대사에서는 해쳐요. 세 단어짜리 캡션에서는 그렇지 않아요. 두 작업은 서체에 정반대를 요구하고, 이 둘을 혼동하는 게 자막에서 가장 흔한 폰트 실수예요.
대사 자막은 힐끗 보는 게 아니라 읽는 거예요. 최대 42자씩 두 줄을 초당 17~20자 속도로 읽는데, 그러는 동안 시청자는 얼굴도 보고 있어요. 그 속도로 읽으려면 글자를 즉시 구별할 수 있어야 하고, 폭이 넓고 열린 글자꼴이 그걸 쉽게 해 줘요. BBC가 폭이 넓은 폰트를 요구하는 이유가 이거예요. 폭이 좁은 대문자체는 정반대로 글자를 바짝 붙이고 모든 글자를 같은 높이로 맞춰요. Bebas Neue로 쓴 한 줄은 그래픽으로는 훌륭하지만, 84자에 걸쳐 읽기에는 힘들어요.
소셜 캡션은 반대로 작동해요. 한 번에 한 단어에서 세 단어가 크게, 가운데에 놓이고, 역할은 읽히는 게 아니라 리듬과 강조예요. Montserrat ExtraBold, Anton 같은 굵은 디스플레이 서체는 바로 그 일에 강하고, 그 스타일이 어떻게 만들어지는지는 Hormozi 자막 스타일 분석에서 볼 수 있어요.
그래서 “어떤 폰트가 가장 좋나요?”라는 질문에 대한 솔직한 답은 되묻는 거예요. 시청자가 문장을 읽고 있나요, 아니면 단어를 붙잡고 있나요? 다큐멘터리 자막에 캡션 폰트를 그대로 가져다 쓰는 게 실수이고, 쇼츠의 한 단어짜리 후크에 Verdana를 8%로 쓰는 것도 마찬가지예요.
자막에 글자 대신 빈 사각형이 나오는 이유는 뭘까요?
폰트에 그 문자의 글리프가 없어서, 렌더러가 대신 자리 표시용 모양을 그렸기 때문이에요. 이렇게 속이 빈 사각형에는 “두부(tofu)”라는 별명이 붙었고, Google은 “no more tofu”라는 목표에서 이름을 따와 Noto 폰트 패밀리라고 지었어요. 지금은 800개가 넘는 언어를 지원해요.
보통 원인은 캡션 폰트예요. Sablate는 캡션용 디스플레이 서체 다섯 개를 앱에 포함하고 있고, 우리가 fontTools로 그 서체들의 문자 맵을 측정해 봤어요. 키릴 문자를 지원하는 건 Montserrat ExtraBold뿐이고, 다섯 개 — Montserrat ExtraBold, Anton, Archivo Black, Bebas Neue, Bangers — 중에는 아랍어, 히브리어, 인도계 문자, 태국어, 중국어, 일본어, 한국어를 그릴 수 있는 서체가 하나도 없어요.
그다음에 어떻게 되는지는 렌더러에 따라 달라요. 어떤 렌더러는 빈 사각형을 그려요. 어떤 렌더러는 빠진 글자만 조용히 다른 폰트로 대체하는데, 미리보기와 최종 렌더링이 서로 다른 서체로 나오는 게 바로 이래서예요. 확실한 해결책은 언어마다 폰트를 따로 고르는 것이고, 두 운영체제 모두 주요 문자 체계마다 이미 하나씩 갖추고 있어요:
| 문자 체계 | Windows | macOS | 무료 다운로드 |
|---|---|---|---|
| 아랍어 | Segoe UI | Geeza Pro | Noto Sans Arabic |
| 히브리어 | Segoe UI | Arial Hebrew | Noto Sans Hebrew |
| 데바나가리(힌디어, 마라티어) | Nirmala UI | Kohinoor Devanagari | Noto Sans Devanagari |
| 태국어 | Leelawadee UI | Thonburi | Noto Sans Thai |
| 중국어(간체) | Microsoft YaHei | PingFang SC | Noto Sans SC |
| 일본어 | Yu Gothic UI | Hiragino Sans | Noto Sans JP |
| 한국어 | Malgun Gothic | Apple SD Gothic Neo | Noto Sans KR |
시스템 폰트는 비용이 들지 않고 이미 설치돼 있지만, 해당 운영체제에만 있어요. 자막 파일이나 프로젝트를 다른 컴퓨터로 옮길 거라면 Noto 패밀리가 더 안전한 선택이에요. 폰트를 함께 가져갈 수 있으니까요. 폰트는 언어별로 점검할 여러 항목 중 하나이고, 나머지는 다국어 작업 흐름에서 다뤄요.
내 폰트가 시청자에게 닿는 전달 방식은 두 가지뿐이에요
.srt나 .vtt 파일에는 텍스트와 타이밍만 들어 있고 서체는 들어 있지 않아서, 파일을 재생하는 쪽이 모양을 정해요. 플랫폼들도 이걸 분명히 해 뒀어요. YouTube의 자막 설정에서는 시청자가 누구나 폰트, 색상, 크기, 배경, 가장자리 스타일을 바꿀 수 있고, Netflix의 자막 모양 설정에서는 프로필마다 폰트, 크기, 그림자, 배경을 바꿀 수 있어요.
| 전달 방식 | 누가 폰트를 정하나 | 시청자가 바꿀 수 있나 |
|---|---|---|
| YouTube에 업로드한 SRT나 VTT | YouTube 플레이어 | 네 |
| Netflix의 타임드 텍스트 | Netflix 플레이어 | 네 |
| 폰트를 첨부한 MKV 안의 ASS 트랙 | 나, ASS를 렌더링하는 플레이어에서 | 플레이어에 따라 다름 |
| 화면에 구워 넣기 | 나 | 아니요 |
그래서 폰트를 내가 정할 수 있는 전달 방식은 두 가지가 남아요. 하나는 폰트 파일을 첨부해서 MKV에 넣은 스타일 있는 ASS 트랙으로, MKV 자막 가이드에서 단계별로 보여줘요. 다른 하나는 텍스트가 픽셀이 되어 더는 끌 수 없는 구워 넣기예요. 이 둘 사이의 장단점이 곧 하드서브 vs 소프트서브의 전부예요.
YouTube로 갈 SRT라면 그 노력을 줄 길이와 읽기 속도에 쓰세요. 폰트는 내 손을 떠난 문제예요.
어떤 폰트를 골라야 할까요?
“영화, 강의, 인터뷰에 쓸 자막이에요.” Verdana나 Arial을 쓰고, 흰색 글자에 검은 외곽선을 두르고, 줄 높이는 8%에 맞추세요. 지루한 게 핵심이에요. 아무도 폰트를 의식하지 않아야 하니까요.
“쇼츠, 릴스, TikTok용 캡션이에요.” Montserrat ExtraBold 같은 굵은 디스플레이 서체를 쓰고, 한 번에 한 단어에서 세 단어만 보여주고, 플랫폼의 버튼을 피해서 배치하세요.
“같은 영상을 러시아어나 우크라이나어로도 내요.” Montserrat ExtraBold, Arial, Verdana 중에서 고르세요. Bebas Neue, Anton, Archivo Black은 피하세요.
“아랍어, 힌디어, 태국어, 중국어, 일본어, 한국어 자막이에요.” 위 표에 있는 그 문자 체계의 시스템 폰트를 쓰세요. 파일을 다른 컴퓨터로 옮긴다면 맞는 Noto 패밀리를 쓰세요.
“YouTube나 Netflix에 낼 SRT예요.” 아무것도 고르지 마세요. 시청자의 플레이어가 정해요.
Sablate가 자막 폰트를 다루는 방식
Sablate에서 쓸 수 있는 폰트 패밀리는 열두 개예요. 앱에 포함된 캡션 서체 다섯 개(Montserrat ExtraBold, Anton, Bangers, Bebas Neue, Archivo Black)와 시스템 서체 일곱 개(Arial, Arial Black, Helvetica Neue, Verdana, Trebuchet MS, Georgia, Impact)예요. 목록이 짧은 건 일부러 그런 거예요. 이 목록의 모든 패밀리는 Sablate 편집기 미리보기와 구워 넣기에서 똑같이 렌더링되는데, 디스크 어디서나 고른 폰트로는 이걸 약속할 수 없어요.
언어 레이어는 하나하나 그 언어가 쓰는 문자 체계에 맞는지 검사해요. 고른 서체가 그 문자를 그릴 수 없으면 — 러시아어 레이어의 Bebas Neue나 일본어 레이어의 Montserrat ExtraBold처럼 — 미리보기와 구워 넣기 모두 그 문자를 그릴 수 있는 같은 시스템 폰트로 바뀌어요. 그래서 편집기에서 확인한 모습이 그대로 파일에 들어가요. 크기는 해상도와 상관없이 높이 1080의 캔버스를 기준으로 측정하는데, 그래서 BBC의 8%는 가로형 내보내기에서 크기 약 86, 4.5% 규칙은 9:16 내보내기에서 약 49가 돼요. 언어마다 트랙 하나씩을 담은 MKV 하나를 내보내면 — Pro 내보내기예요 — 앱에 포함된 캡션 서체가 파일 안에 함께 들어가요.
부족한 부분은 이래요:
| Sablate | libass를 쓰는 FFmpeg | Premiere Pro 또는 DaVinci Resolve | |
|---|---|---|---|
| 컴퓨터에 설치된 어떤 폰트든 사용 | 아니요, 내장 폰트 패밀리 12개 | 네 | 네 |
| 폰트 파일을 설치하지 않고 불러오기 | 아니요 | 네, fontsdir 사용 | 아니요 |
| 문자 체계에 맞게 언어별로 폰트 교체 | 네, 자동으로 | 수동, 언어마다 파일 하나씩 | 수동, 캡션 트랙마다 |
브랜드 폰트를 반드시 써야 한다면 Sablate에서 자막을 만들고 타이밍을 맞춘 뒤 .ass 파일로 내보내세요. .ass 내보내기도 Pro에 포함돼 있어요. 그다음 FFmpeg에서 fontsdir 옵션으로 내 폰트를 지정해 구워 넣으면 돼요. 이 방법이면 전사 작업은 그대로 살리고, 포기하는 건 폰트 목록뿐이에요.
한 줄 요약
대사에는 Verdana나 Arial처럼 폭이 넓고 단순한 산세리프체를 쓰고, 줄 높이는 프레임 높이의 8%로, 세로 영상에서는 4.5%로 맞추고, 흰색 글자에는 검은 외곽선이나 박스를 두르세요. 굵은 디스플레이 서체는 짧은 캡션에만 쓰고, 라틴 문자가 아닌 언어에는 모두 그 문자를 그릴 수 있는 폰트를 지정하세요. 그리고 플랫폼에 올린 SRT는 내 폰트를 전혀 보여주지 못한다는 점을 기억하세요. 언어별 폰트 교체를 알아서 처리해 주길 원한다면 Sablate를 다운로드하세요.