字幕に最適なフォント:NetflixとBBCの指定内容
字幕に最適なフォントは、シンプルで横幅の広いサンセリフです。NetflixとBBCが指定している内容、ピクセルで示した字幕サイズのルール、そしてフォントによっては文字が空の四角になってしまう理由まで詳しく解説します。
字幕に最適なフォントは、Verdana、Arial、Tiresiasのような、シンプルで横幅の広いサンセリフです。行の高さは映像の高さの約8%、色は白で、暗い色の輪郭線かボックスを付けます。これはNetflixとBBCの指定にほぼ沿った設定です。極太の表示用フォントが向いているのはSNS向けの短いキャプションで、セリフの字幕ではありません。
この記事では、よく使われる選択肢の比較、ピクセルで示したサイズの目安、キャプション用フォントによっては特定の言語がまるごと空の四角になってしまう理由、そして視聴者があなたのフォントを目にできるかどうかを左右する配信形態の違いを取り上げます。
字幕に最適なフォントを比較する
読みやすい字幕フォントには、字形が開いている、線の太さが均一である、横幅にゆとりがある、という3つの共通点があります。字幕に向けられる視聴者の注意は、動く映像を背景に2〜3秒ほどで、しかも多くはスマートフォンの画面上です。この3つの特徴は、どれも文字を認識する速さにつながります。
| フォント | 書体の系統 | 向いている用途 | キリル文字 | アラビア文字、ヘブライ文字、インド系文字、タイ文字、CJK | 入手先 |
|---|---|---|---|---|---|
| Verdana | 幅広のヒューマニストサンセリフ | 2行のセリフ字幕 | 対応 | 非対応 | WindowsとMacに標準搭載 |
| Arial | ネオグロテスクサンセリフ | セリフ字幕、Netflixの英語用プレースホルダー | 対応 | Windowsではアラビア文字とヘブライ文字に対応 | WindowsとMacに標準搭載 |
| Roboto | ネオグロテスクサンセリフ | 画面表示用のテキスト、縦型動画 | 対応 | 非対応 | 無料、Google Fonts |
| Noto Sansファミリー | ヒューマニストサンセリフ | あらゆる言語 | 対応 | 対応、文字体系ごとに1ファミリー | 無料、Google Fonts |
| Montserrat ExtraBold | 極太のジオメトリックサンセリフ | SNS向けの短いキャプション | 対応 | 非対応 | 無料、Google Fonts |
| Bebas Neue | 大文字のみのコンデンスド体 | 1〜3語 | 非対応 | 非対応 | 無料、Google Fonts |
| Anton | コンデンスド体の表示用フォント | 1〜3語 | 非対応 | 非対応 | 無料、Google Fonts |
パターンから外れるのは、表示用フォントの行です。ショート動画のキャプションでよく選ばれるBebas NeueとAntonは、ロシア語やウクライナ語の文字を1文字も描画できません。Google Fontsが配布している両フォントは、ラテン文字しか収録していないためです。Reelに載せる3語の英文には問題ありませんが、複数の言語で字幕を付ける動画には、選んではいけないフォントです。
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文字は1行の長さの上限でもあり、読み上げ速度のガイドが土台にしている数字です。最大の長さの1行は、余白を十分に残したままフレームの中に収まる必要があります。
編集ソフトに表示されるポイント数は、どのキャンバスを基準に測った値なのかが分からない限り、意味を持ちません。FFmpegのsubtitlesフィルターはSRTを高さ288の仮想キャンバス上に配置するため、そこでのFontSize=23は、解像度に関係なくBBCの8%にほぼ相当します。一方、実際のフレームを基準に測る動画編集ソフトで同じ数値を指定すると、何分の一かの大きさの文字になります。
輪郭線かボックスか: 白い文字を読みやすく保つ
白い文字には、周囲に暗い色が必要です。映像がずっと暗いままとは限らないからです。BBCは、字幕の色を白、黄、シアン、緑の4色に限り、黒の背景の上に置くものとして、白を基本にしています。文字を映像から切り離す方法は3つあります:
- 輪郭線は、1文字ずつの周囲に暗い色の縁取りを描きます。映像の大部分を隠さずに済むため、映画の字幕やSNS向けのキャプションで使われています。輪郭線を太くすると複雑な映像の上でも読みやすさが保たれますが、そのぶん見た目は重くなります。
- 影は、文字の背後に、ずらした柔らかなコピーを加えます。控えめな効果で、影だけでは明るく細部の多い背景の上では役に立ちません。
- ボックスは、行の背後に不透明または半透明の長方形を置きます。どんな映像の上でも最も読みやすい方法で、放送の伝統的な見た目でもありますが、そのぶん映像を最も多く隠します。
ASSファイルでは、BorderStyle=1が影付きの輪郭線、BorderStyle=3が不透明のボックスにあたります。同じテキストでも、この1つの値によって、映画の字幕にも、テレビのキャプションにも見えます。
太いキャプションフォントは読みやすさを損なうか?
セリフの字幕では損ないます。3語のキャプションでは損ないません。この2つの用途は書体に正反対のことを求めており、両者を取り違えることが、字幕のフォント選びで最も多い間違いです。
セリフの字幕は、ちらっと見るものではなく、読むものです。1行42文字で最大2行、毎秒17〜20文字の速さで表示され、視聴者は同時に出演者の顔も見ています。その速さで読めるかどうかは、文字を瞬時に見分けられるかにかかっており、横幅が広く開いた字形のほうが見分けやすいため、BBCは幅の広いフォントを求めているのです。コンデンスドの大文字フォントはその逆で、文字を詰め込み、すべての文字を同じ高さに揃えてしまいます。Bebas Neueで組んだ1行はグラフィックとしては優れていますが、84文字にわたって読み通すのは大変です。
SNS向けのキャプションは逆です。一度に画面に出るのは1〜3語で、大きく中央に置かれ、役割は読ませることではなく、リズムと強調です。Montserrat ExtraBoldやAntonのような極太の表示用フォントは、まさにその用途に向いていて、その見た目がどう作られているかはHormozi風キャプションの解説で紹介しています。
ですから、「どのフォントが最適か」という質問への正直な答えは、問い返しになります。視聴者は文章を読むのか、それとも単語をつかむのか、ということです。キャプション用のフォントをドキュメンタリーの字幕にそのまま持ち込むのは間違いで、Shortに載せる1語だけのフックにVerdanaを8%で使うのも同じく間違いです。
字幕が文字ではなく四角で表示されるのはなぜか?
そのフォントにその文字のグリフがなく、レンダラーが代わりにプレースホルダーを描いたためです。この空の長方形は「豆腐」(tofu)の通称で知られています。Googleは「no more tofu」という目標にちなんでNotoフォントファミリーと名付け、現在は800を超える言語をカバーしています。
たいてい原因になるのは、キャプション用のフォントです。Sablateには、キャプション向けの表示用フォントが5つ同梱されていて、それぞれの文字マップをfontToolsで測定しました。その結果、キリル文字に対応しているのはMontserrat ExtraBoldだけで、5つ(Montserrat ExtraBold、Anton、Archivo Black、Bebas Neue、Bangers)のいずれも、アラビア文字、ヘブライ文字、インド系のあらゆる文字体系、タイ文字、中国語・日本語・韓国語の文字を描画できません。
その後どうなるかは、レンダラーによって異なります。四角を描くものもあれば、足りない文字だけを黙って別のフォントに置き換えるものもあり、プレビューと最終レンダリングが別々の書体になってしまうのは、このためです。確実な対策は言語ごとにフォントを選ぶことで、主要な文字体系には、どちらのOSにもすでに標準搭載のフォントがあります:
| 文字体系 | 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 |
システムフォントは無料で、すでにインストールされていますが、存在するのはそのOSの上だけです。字幕ファイルやプロジェクトを別のパソコンに持ち出す場合は、一緒に持ち運べるNotoファミリーのほうが安全な選択です。フォントは言語ごとに確認すべき項目のひとつで、残りの項目は多言語ワークフローで取り上げています。
自分のフォントが視聴者に届くのは2つの配信形態だけ
.srtや.vttのファイルが持っているのはテキストとタイミングで、書体は含まれていません。そのため、見た目を決めるのは再生する側です。プラットフォームもそれを明示しています。YouTubeのキャプション設定では、視聴者が誰でもフォント、色、サイズ、背景、縁取りのスタイルを変更でき、Netflixの字幕の外観設定では、プロフィールごとにフォント、サイズ、影、背景を変更できます。
| 配信形態 | フォントを決めるのは誰か | 視聴者が変更できるか |
|---|---|---|
| YouTubeにアップロードしたSRTまたはVTT | YouTubeのプレイヤー | できる |
| Netflixのタイムドテキスト | Netflixのプレイヤー | できる |
| フォントを添付したMKV内のASSトラック | あなた(ASSを描画できるプレイヤーの場合) | プレイヤーによる |
| 映像に焼き込み | あなた | できない |
つまり、フォントを自分で決められるのは2つの配信形態です。1つは、フォントファイルを添付したMKVの中のスタイル付きASSトラックで、その手順はMKV字幕のガイドで順を追って紹介しています。もう1つは焼き込みで、テキストがピクセルになり、二度とオフにできなくなります。この2つの間のトレードオフこそが、ハードサブとソフトサブの問題のすべてです。
YouTube向けのSRTでは、代わりに行の長さと読み上げ速度に力を注いでください。フォントは自分では決められません。
どのフォントを選ぶべきか?
「映画、講座、インタビューの字幕」 VerdanaかArialを使い、白文字に黒の輪郭線を付けて、行の高さが8%になるサイズにします。地味であることが狙いです。誰にもフォントを意識させてはいけません。
「Shorts、Reels、TikTokのキャプション」 Montserrat ExtraBoldのような極太の表示用フォントを使い、一度に1〜3語ずつ、プラットフォームのボタンにかからない位置に置きます。
「同じ動画をロシア語やウクライナ語で」 Montserrat ExtraBold、Arial、Verdanaを使います。Bebas Neue、Anton、Archivo Blackは避けてください。
「アラビア語、ヒンディー語、タイ語、中国語、日本語、韓国語」 上の表から、その文字体系のシステムフォントを選びます。ファイルを別の環境に持ち出す場合は、対応するNotoファミリーを選びます。
「YouTubeやNetflix向けのSRT」 何も選びません。視聴者のプレイヤーが決めます。
Sablateは字幕フォントをどう扱うか
Sablateが用意しているフォントファミリーは12種類です。同梱のキャプション用フォントが5つ(Montserrat ExtraBold、Anton、Bangers、Bebas Neue、Archivo Black)、システムフォントが7つ(Arial、Arial Black、Helvetica Neue、Verdana、Trebuchet MS、Georgia、Impact)です。リストをあえて短くしているのは、このリストのどのファミリーも、Sablateのエディタのプレビューと焼き込みで同じように描画されるようにするためです。ディスクのどこからでも選べるフォントでは、これを保証できません。
各言語レイヤーは、書かれている文字体系に対してチェックされます。選んだフォントがその文字体系を描画できない場合(ロシア語レイヤーのBebas Neue、日本語レイヤーのMontserrat ExtraBoldなど)、プレビューも焼き込みも、描画できる同じシステムフォントに切り替わります。そのため、エディタで確認した結果がそのままファイルに反映されます。サイズはどの解像度でも高さ1080のキャンバスを基準に測られ、BBCの8%は横型の書き出しでサイズ約86、4.5%のルールは9:16の書き出しで約49になります。すべての言語をトラックとして1本のMKVに書き出す場合(Proの書き出しです)は、同梱のキャプション用フォントがファイルの中に収められて一緒に運ばれます。
Sablateが及ばない点は次のとおりです:
| Sablate | libassを使うFFmpeg | Premiere ProまたはDaVinci Resolve | |
|---|---|---|---|
| マシンにインストールされた任意のフォントを使えるか | できない、内蔵の12ファミリーのみ | できる | できる |
| インストールせずにフォントファイルを読み込めるか | できない | できる、fontsdirを使う | できない |
| 文字体系に合わせて言語ごとにフォントが切り替わるか | 切り替わる、自動で | 手動、言語ごとに1ファイル | 手動、キャプショントラックごと |
ブランドのフォントを絶対に使わなければならない場合は、Sablateで字幕を作成してタイミングを合わせ、.assファイルを書き出し(これもProの機能です)、fontsdirをそのフォントの置き場所に向けたFFmpegで焼き込んでください。この方法なら、文字起こしの作業は活かしたまま、手放すのはフォントの選択肢だけです。
まとめ
セリフの字幕には、VerdanaやArialのようなシンプルで横幅の広いサンセリフを使い、サイズは行の高さがフレームの8%(縦型動画では4.5%)になるようにして、白い文字には黒の輪郭線かボックスを付けてください。極太の表示用フォントは短いキャプションにとどめ、ラテン文字以外の言語にはそれぞれ描画できるフォントを割り当て、プラットフォームに載せたSRTではあなたのフォントがまったく表示されないことを忘れないでください。言語ごとのフォント切り替えを任せたい場合は、Sablateをダウンロードしてください。