> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/ja/xiang-xi-ji-shi/35-overleaf-projects-showing-how-to-use-variable-fonts-with-latex.md).

# LaTeXで可変フォントを使う方法を示すOverleafプロジェクト

[はじめに](https://www.overleaf.com/learn/latex/Articles/How_to_use_OpenType_variable_fonts_with_LaTeX?preview=true) [ステップ 1](https://www.overleaf.com/learn/latex/Articles/Step_1:_Setting_up_an_Overleaf_project_to_use_variable_fonts?preview=true) [ステップ 2](https://www.overleaf.com/learn/latex/Articles/Step_2:_An_introduction_to_LaTeX_fonts?preview=true) [ステップ 3](https://www.overleaf.com/learn/latex/Articles/Step_3:_Replacing_LaTeX’s_default_fonts_with_variable_fonts?preview=true) [ステップ 4](https://www.overleaf.com/learn/latex/Articles/Step_4:_How_to_configure_an_italic_variable_font_using_fontspec?preview=true) [ステップ 5](https://www.overleaf.com/learn/latex/Articles/Step_5:_LaTeX_font_weights_and_named_instances_of_variable_fonts?preview=true) [ステップ 6](https://www.overleaf.com/learn/latex/Articles/Step_6:_Using_variable_fonts_to_add_bold_fonts_to_an_Overleaf_project?preview=true) [ステップ 7](https://www.overleaf.com/learn/latex/Articles/Step_7:_Using_Noto_Sans_and_Roboto_Mono_variable_fonts_with_LaTeX?preview=true) [ステップ 8](https://www.overleaf.com/learn/latex/Articles/Step_8:_How_to_create_a_simple_LaTeX_package_to_configure_your_variable_fonts?preview=true) [例とプロジェクト](https://www.overleaf.com/learn/latex/Articles/Overleaf_projects_showing_how_to_use_variable_fonts_with_LaTeX?preview=true)

このチュートリアル最終回では、OpenType 可変フォントの使用を紹介するために Overleaf が作成した 5 つのプロジェクトを紹介します。すべてのプロジェクトには、必要な可変フォントファイルと、それらのフォントファイルを LaTeX で利用可能にするための `latexmkrc` それらのフォントファイルを LaTeX で利用可能にするためのファイル。

無料プランのユーザーは、これらのプロジェクトの一部では LuaLaTeX と OpenType 可変フォントを使用しているため、初回コンパイルに時間がかかる場合があることに注意してください。

## プロジェクト 1: OpenType 可変フォント用に設定済みの、そのまま使えるプロジェクト

* Overleaf プロジェクトを開く <https://www.overleaf.com/1311295292wvdkgcbnfxsw#94292d>

このプロジェクトは、Noto Serif、Noto Sans、Roboto Mono を使うように設定されています。節見出し、図表キャプション、さらには脚注まで、特定の可変フォント設定を使うように構成されています。詳細はプロジェクトファイル `myvariablefonts.sty` で確認してください。

## プロジェクト 2: LaTeX のフォント選択コマンドを示すために可変フォントを使う

* Overleaf プロジェクトを開く: <https://www.overleaf.com/1941895198cqjzyhzvxhwz#794ae2>

このプロジェクトでは、Noto Serif、Noto Sans、Roboto Mono に対して、LaTeX のフォント幅、ウェイト、形状のさまざまな組み合わせを設定しています。これらのフォントを LaTeX のフォント選択コマンドと一緒に使う方法を示します `\fontseries`, `\fontshape` と `\fontfamily`.

![LaTeX の \fontseries コマンドを使って可変フォントを組版している様子を示す画像](/files/d219bfbfb9025987f44e587524920e25e9968485)

## プロジェクト 3: babel パッケージを使ってアラビア語と英語を組版するために可変フォントを使う

* Overleaf プロジェクトを開く <https://www.overleaf.com/3933144323kswvxhnqkbcw#097c77>

このプロジェクトでは、OpenType 可変フォントを次のものと一緒に使えるように設定する方法を示します [babelパッケージ](https://ctan.org/pkg/babel?lang=en)。また、いくつかのアラビア文字系 OpenType 可変フォントを使って、英語とアラビア語を混在させて組版する例も含まれています:

* [Noto Naskh Arabic](https://fonts.google.com/noto/specimen/Noto+Naskh+Arabic/tester)
* [Noto Nastaliq](https://fonts.google.com/noto/specimen/Noto+Nastaliq+Urdu/tester)
* [Noto Sans Arabic](https://fonts.google.com/noto/specimen/Noto+Sans+Arabic/tester)

このプロジェクトでは、fontspec の `\addfontfeatures` コマンドを使って、このプロジェクトで使用しているアラビア語の可変フォントを含む OpenType 可変フォントに一時的な変更を加える方法を示します。

![OpenType 可変フォントを使って LaTeX で組版されたアラビア語と英語の段落を示す画像](/files/11f8e61b72492442553d014d4e190f7263a7cd3e)

**免責事項**: 英語以外のテキストとそれに対応する翻訳は、すべて ChatGPT を使って生成されました。

## プロジェクト 4: 可変フォントを紹介するさまざまな例

* Overleaf プロジェクトを開く <https://www.overleaf.com/2858462957mvthxfmtgxsc#11aac1>

このプロジェクトには、fontspec の `\addfontfeatures` コマンドを使って可変フォントに一時的な調整を加える方法を示すいくつかの例が含まれています。たとえば、フォントの幅や太さを一時的に変更して、あるテキストを組版するのに必要なスペースを調整できます。以下の各節では例を概説し、それぞれを最大限に活用するための背景情報を提供します。

### 例: フォントの幅を変えて、限られたスペースにより多くのテキストを収める

この例では、fontspec の `\addfontfeatures` コマンドを使って、可変フォントの幅をわずかに、ほとんど目立たない程度に狭めるだけで、同じスペースにより多くのテキストを収められることを示します。同じテキストを含む 2 つの minipage を横に並べ、標準の Noto Serif と、幅軸の値を 4% 減らしたものを比較しています。

![可変フォントの幅を減らすと、限られたスペースにより多くのテキストを収められることを示す画像](/files/6fbc9913fb573ac80d6d082ffe378b3c3be9adda)

### 例: fancyvrb パッケージで可変フォントを使う

fontspec の `\newfontfamily` コマンドを使って、この例では、任意の可変フォントを使ってプログラムコードを `Verbatim` 環境で組版する方法を示します。これは [`fancyvrb` パッケージ](https://ctan.org/pkg/fancyvrb?lang=en)パッケージが提供する環境です。また、LaTeX の `\fontseries` コマンドで囲めるようになります。

![可変フォントを使って Verbatim テキストを組版している様子を示す画像](/files/30e7747adad853d36073daae9125c7e01d957c02)

#### Verbatim 環境に関する補足

その `Verbatim` 環境は次の形式をとります

```latex
\begin{Verbatim}[⟨settings⟩]
⟨input⟩
\end{Verbatim}
```

ここで

* その `[⟨settings⟩]` の部分は省略可能です。 `⟨settings⟩` には、この特定の `Verbatim` 環境
* `⟨input⟩` は、組版したいテキストです

1つの `Verbatim` この環境は LaTeX のデフォルトのテキスト処理を無効にするため、 `⟨input⟩` テキストは、スペース、LaTeX コマンド、特殊文字、改行を含めて、そのまま正確に組版できます。

〜を整形するには、 `⟨input⟩` テキストに太字や斜体を適用する場合は、 `commandchars` キーを `⟨settings⟩` セクション。 `commandchars` では、組版される代わりに `⟨input⟩` LaTeX マクロを呼び出すために使える 3 つの「特殊」文字を指定します。エラーや競合を避けるには、通常の `⟨input⟩` テキスト内の他の場所には現れない 3 文字を選んでください。

例として、

```latex
\begin{Verbatim}[commandchars=|()]
⟨input⟩
\end{Verbatim}
```

とすると、 `Verbatim` 環境は文字 `|`, `(`、および `)` をコマンド文字として扱うようになります。これらが `⟨input⟩` 中に現れると、LaTeX は次のように処理します:

* `|` は LaTeX コマンドの導入に使われ、通常の `\` 文字に置き換わります。
* `(` と `)` は LaTeX コマンドの引数を区切るために使われ、通常の `{` と `}`

例えば、 `⟨input⟩` テキストの一部を太字で組版するには `|textbf(some text)` と書きます。 `\textbf{some text}`.

### 例: さまざまなスタイルで数字を組版する

この例では、fontspec の `\addfontfeatures` コマンドを使って、0、1、2、…、9 の文字を組版する際に使うスタイルを一時的に変更します。これらは一般に「digits」または「numbers」と呼ばれます。組版者やデザイナーはこれらの文字を「figures」と呼び、この例でもその用語を使います。

#### タイポグラフィと figure スタイルに関する補足

時代とともに、表組み、本文、見出しなど、文書のさまざまな要素で figure を組版するための異なるスタイルが発達してきました。これらのスタイルは、figure の 3 つの特性、つまり幅、高さ、ベースラインに対する配置に基づいて定義されます。

2 つのスタイルは figure の幅に基づきます:

* **proportional**: 各 figure の幅は、そのデザインに応じて変わります。
* **tabular**: 各 figure は同じ幅です。

2 つのスタイルは figure の高さと配置に基づきます:

* **lining**: figure はベースライン上に置かれ、そのデザイン要素はそこより下に下がりません。すべての figure は同じ高さです。
* **oldstyle**: figure の高さは変化し、一部のデザイン要素がベースラインの下に現れることがあります。

これらを組み合わせると、次の図に示す 4 種類の組版スタイルになります:

![](/files/420bdd0551d3b28b926a109ebf12f2f8f1cb1b31)

1つの [Monotype が公開した記事](https://www.monotype.com/resources/expertise/how-use-figure-styles-illustrator) では、これらの figure スタイルの使い方が解説されています。

#### これらの figure スタイルを使う方法

これらの figure スタイルが利用できるかどうかは、文書の組版に使う OpenType フォントが可変か非可変かによって異なります。幸い、Noto Serif は 4 つすべての figure スタイルをサポートしているので、 `\addfontfeatures` を使って fontspec の `Numbers` キーを使い分けることで、さまざまな figure スタイルを適用できます。 `OldStyle`の表記は大文字小文字に注意してください。以下の表は、示されている例の 1 つです:

![数字の組版に使う 4 つのスタイル、tabular oldstyle、proportional oldstyle、tabular lining、proportional lining を示す表。](/files/d905b8a1a533dbc54c11526cb6669dc4be8fc065)

* Overleaf プロジェクトを開く <https://www.overleaf.com/2858462957mvthxfmtgxsc#11aac1>

## プロジェクト 5: LaTeX の「仮想」フォント形状を示すために可変フォントを使う

* Overleaf プロジェクトを開く <https://www.overleaf.com/4719455662kydjkfvdwjpn#2ea0f1>

LaTeX の「仮想」フォント形状は実際のフォントを表すものではありません。代わりに、 `\fontshape` 現在の形状を変更するために使うことを意図しています。プロジェクトの例では、次のコマンドの使い方を示しています `\fontshape`, `\textup`, `\textulc`, `\upshape`、および `\ulcshape`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/ja/xiang-xi-ji-shi/35-overleaf-projects-showing-how-to-use-variable-fonts-with-latex.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
