> 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/vi/bai-viet-chuyen-sau/35-overleaf-projects-showing-how-to-use-variable-fonts-with-latex.md).

# Các dự án Overleaf minh họa cách dùng phông biến thể với LaTeX

[Giới thiệu](https://www.overleaf.com/learn/latex/Articles/How_to_use_OpenType_variable_fonts_with_LaTeX?preview=true) [Bước 1](https://www.overleaf.com/learn/latex/Articles/Step_1:_Setting_up_an_Overleaf_project_to_use_variable_fonts?preview=true) [Bước 2](https://www.overleaf.com/learn/latex/Articles/Step_2:_An_introduction_to_LaTeX_fonts?preview=true) [Bước 3](https://www.overleaf.com/learn/latex/Articles/Step_3:_Replacing_LaTeX’s_default_fonts_with_variable_fonts?preview=true) [Bước 4](https://www.overleaf.com/learn/latex/Articles/Step_4:_How_to_configure_an_italic_variable_font_using_fontspec?preview=true) [Bước 5](https://www.overleaf.com/learn/latex/Articles/Step_5:_LaTeX_font_weights_and_named_instances_of_variable_fonts?preview=true) [Bước 6](https://www.overleaf.com/learn/latex/Articles/Step_6:_Using_variable_fonts_to_add_bold_fonts_to_an_Overleaf_project?preview=true) [Bước 7](https://www.overleaf.com/learn/latex/Articles/Step_7:_Using_Noto_Sans_and_Roboto_Mono_variable_fonts_with_LaTeX?preview=true) [Bước 8](https://www.overleaf.com/learn/latex/Articles/Step_8:_How_to_create_a_simple_LaTeX_package_to_configure_your_variable_fonts?preview=true) [Ví dụ và dự án](https://www.overleaf.com/learn/latex/Articles/Overleaf_projects_showing_how_to_use_variable_fonts_with_LaTeX?preview=true)

Phần cuối của loạt hướng dẫn này liệt kê năm dự án do Overleaf tạo ra để giới thiệu việc sử dụng các phông chữ biến đổi OpenType. Tất cả các dự án đều chứa các tệp phông chữ biến đổi cần thiết và một `latexmkrc` tệp được dùng để làm cho các tệp phông chữ đó khả dụng cho LaTeX.

Người dùng gói miễn phí được khuyến nghị rằng một số dự án này có thời gian biên dịch ban đầu kéo dài hơn, phản ánh việc chúng sử dụng LuaLaTeX và các phông chữ biến đổi OpenType.

## Dự án 1: Một dự án sẵn dùng được cấu hình với các phông chữ biến đổi OpenType

* Mở dự án Overleaf <https://www.overleaf.com/1311295292wvdkgcbnfxsw#94292d>

Dự án này được cấu hình để sử dụng Noto Serif, Noto Sans và Roboto Mono. Tiêu đề mục, chú thích hình và bảng, và thậm chí cả chú thích cuối trang đều được cấu hình để sử dụng các thiết lập phông chữ biến đổi cụ thể—xem tệp dự án `myvariablefonts.sty` để biết thêm chi tiết.

## Dự án 2: Sử dụng phông chữ biến đổi để minh họa các lệnh chọn phông chữ của LaTeX

* Mở dự án Overleaf: <https://www.overleaf.com/1941895198cqjzyhzvxhwz#794ae2>

Dự án này cấu hình nhiều tổ hợp độ rộng, độ đậm và kiểu của phông chữ LaTeX cho Noto Serif, Noto Sans và Roboto Mono. Nó cho bạn thấy cách dùng những phông chữ này với các lệnh chọn phông chữ của LaTeX `\fontseries`, `\fontshape` và `\fontfamily`.

![Hình ảnh cho thấy lệnh \fontseries của LaTeX đang được dùng để dàn trang các phông chữ biến đổi](/files/1f532221b69267536c1ce28b9eaae226621558ec)

## Dự án 3: Sử dụng phông chữ biến đổi để dàn trang tiếng Ả Rập và tiếng Anh với gói babel

* Mở dự án Overleaf <https://www.overleaf.com/3933144323kswvxhnqkbcw#097c77>

Dự án này cho bạn thấy cách cấu hình các phông chữ biến đổi OpenType để sử dụng với [gói babel](https://ctan.org/pkg/babel?lang=en). Nó bao gồm các ví dụ về dàn trang hỗn hợp tiếng Anh và tiếng Ả Rập bằng một số phông chữ biến đổi OpenType cho chữ viết Ả Rập:

* [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)

Dự án này cho thấy lệnh fontspec’s `\addfontfeatures` của fontspec có thể được dùng để thực hiện các thay đổi tạm thời đối với các phông chữ biến đổi OpenType, bao gồm các phông chữ biến đổi tiếng Ả Rập được dùng trong dự án này.

![Hình ảnh cho thấy một đoạn văn bản tiếng Ả Rập và tiếng Anh được dàn trang bằng LaTeX với các phông chữ biến đổi OpenType](/files/ebc2c78a299b1642e4244b026ea93fc75db0edcd)

**Miễn trừ trách nhiệm**: Tất cả văn bản không phải tiếng Anh và các bản dịch đi kèm đều được tạo bằng ChatGPT.

## Dự án 4: Nhiều ví dụ đa dạng giới thiệu các phông chữ biến đổi

* Mở dự án Overleaf <https://www.overleaf.com/2858462957mvthxfmtgxsc#11aac1>

Dự án này chứa một số ví dụ cho thấy cách sử dụng lệnh fontspec’s `\addfontfeatures` để thực hiện các điều chỉnh tạm thời đối với phông chữ biến đổi; chẳng hạn, tạm thời thay đổi độ rộng hoặc độ đậm của phông chữ để điều chỉnh khoảng trống cần thiết để dàn trang một số văn bản. Các phần sau đây phác thảo các ví dụ và cung cấp thông tin nền để giúp bạn khai thác tối đa từng ví dụ.

### Ví dụ: Thay đổi độ rộng phông chữ để chứa được nhiều văn bản hơn trong một không gian cho trước

Ví dụ này sử dụng lệnh fontspec’s `\addfontfeatures` để minh họa rằng các mức giảm nhỏ, hầu như không thể nhận thấy, trong độ rộng của một phông chữ biến đổi có thể chứa nhiều văn bản hơn trong một không gian cho trước. Hai minipage chứa cùng một đoạn văn bản được dàn trang cạnh nhau, so sánh Noto Serif không bị nén với một bản có giá trị trục độ rộng giảm 4%.

![Hình ảnh cho thấy việc giảm độ rộng phông chữ biến đổi có thể chứa nhiều văn bản hơn trong một không gian cho trước](/files/03a447344c8510cc16284950652ec8647f13212f)

### Ví dụ: Sử dụng phông chữ biến đổi với gói fancyvrb

Sử dụng lệnh fontspec’s `\newfontfamily` này, ví dụ này minh họa cách dùng một phông chữ biến đổi do bạn chọn để dàn trang mã chương trình trong một `Verbatim` môi trường do [`fancyvrb` gói](https://ctan.org/pkg/fancyvrb?lang=en). Nó cũng cho thấy cách áp dụng định dạng cho mã đã dàn trang bằng lệnh của LaTeX `\fontseries` lệnh này.

![Hình ảnh cho thấy văn bản nguyên văn được dàn trang bằng phông chữ biến đổi](/files/bbcb9119900a3d47bab5702a181d62f69133909b)

#### Một số lưu ý về môi trường Verbatim

Tính năng `Verbatim` môi trường có dạng sau

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

trong đó

* trang `[⟨settings⟩]` là tùy chọn. `⟨settings⟩` có thể chứa các tham số (cặp khóa–giá trị) cho phép bạn cấu hình hành vi của môi trường `Verbatim` môi trường
* `⟨input⟩` là văn bản bạn muốn dàn trang

Một `Verbatim` môi trường này vô hiệu hóa quá trình xử lý văn bản mặc định của LaTeX để `⟨input⟩` văn bản có thể được dàn trang chính xác như nguyên bản—bao gồm khoảng trắng, lệnh LaTeX, ký tự đặc biệt và ngắt dòng.

Để định dạng `⟨input⟩` văn bản, chẳng hạn như áp dụng chữ đậm hoặc nghiêng, hãy dùng `commandchars` khóa trong `⟨settings⟩` phần. `commandchars` chỉ định ba ký tự “đặc biệt” có thể được dùng trong `⟨input⟩` để gọi các macro LaTeX thay vì được dàn trang. Để tránh lỗi và xung đột, hãy chọn ba ký tự sẽ không xuất hiện ở nơi khác trong văn bản thông thường `⟨input⟩` văn bản.

Ví dụ, viết

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

cho biết `Verbatim` môi trường xử lý các ký tự `|`, `(`, và `)` như các ký tự lệnh. Nếu chúng xuất hiện trong `⟨input⟩` LaTeX sẽ xử lý chúng như sau:

* `|` được dùng để mở đầu một lệnh LaTeX—thay cho `\` ký tự thông thường.
* `(` và `)` được dùng để phân cách các đối số của lệnh LaTeX—thay vì `{` và `}`

thông thường. `⟨input⟩` ví dụ, để dàn trang một phần của `văn bản in đậm bạn sẽ viết` thay vì viết `\textbf{một số văn bản}`.

### Ví dụ: Dàn trang các con số bằng các kiểu khác nhau

Ví dụ này sử dụng lệnh fontspec’s `\addfontfeatures` lệnh để tạm thời thay đổi kiểu dùng để dàn trang các ký tự 0, 1, 2, ... 9, thường được gọi là “chữ số” hoặc “con số.” Các nhà sắp chữ và nhà thiết kế gọi những ký tự này là “hình số,” một thuật ngữ được dùng trong ví dụ này.

#### Một số lưu ý về kiểu chữ và các kiểu hình số

Theo thời gian, nhiều kiểu khác nhau để dàn trang hình số đã được phát triển cho các thành phần tài liệu khác nhau, chẳng hạn như trong bảng, phần văn bản chính, hoặc tiêu đề tài liệu. Các kiểu đó được định nghĩa theo ba đặc tính của hình số: độ rộng, chiều cao và sự căn chỉnh tương đối so với đường cơ sở.

Hai kiểu dựa trên độ rộng của hình số:

* **tỷ lệ**: độ rộng của mỗi hình số thay đổi theo thiết kế của nó.
* **tabular**: mỗi hình số có cùng độ rộng.

Hai kiểu dựa trên chiều cao và sự căn chỉnh của hình số:

* **dạng đường thẳng**: các hình số nằm trên đường cơ sở, và các đặc điểm thiết kế của chúng không thấp hơn đường cơ sở. Tất cả hình số có cùng chiều cao.
* **kiểu cổ**: chiều cao của hình số thay đổi, và một phần thiết kế của hình số có thể xuất hiện bên dưới đường cơ sở.

Kết hợp những điều này sẽ tạo ra bốn kiểu dàn trang như minh họa trong hình sau:

![](/files/95e5ef4c34cee5eb0662629defc183700656a5d8)

Một [bài báo được Monotype xuất bản](https://www.monotype.com/resources/expertise/how-use-figure-styles-illustrator) thảo luận về cách sử dụng các kiểu hình số này.

#### Cách truy cập các kiểu hình số này

Việc các kiểu hình số này có sẵn hay không phụ thuộc vào các phông chữ OpenType biến đổi hoặc không biến đổi được dùng để dàn trang tài liệu của bạn. Rất may, Noto Serif hỗ trợ cả bốn kiểu hình số, nên chúng ta có thể minh họa chúng bằng `\addfontfeatures` để áp dụng các kiểu hình số khác nhau bằng lệnh của fontspec `Numbers` —hãy chú ý chữ hoa của `OldStyle`. Bảng sau là một trong các ví dụ được cung cấp:

![Một bảng cho thấy bốn kiểu được dùng để dàn trang các con số: oldstyle kiểu bảng, oldstyle tỷ lệ, lining kiểu bảng và lining tỷ lệ.](/files/39efca868edc5d80f02a23ccc63d749ef2ede466)

* Mở dự án Overleaf <https://www.overleaf.com/2858462957mvthxfmtgxsc#11aac1>

## Dự án 5: Sử dụng phông chữ biến đổi để minh họa các kiểu phông chữ “ảo” của LaTeX

* Mở dự án Overleaf <https://www.overleaf.com/4719455662kydjkfvdwjpn#2ea0f1>

Các kiểu phông chữ “ảo” của LaTeX không đại diện cho phông chữ vật lý; thay vào đó, chúng được dự định để dùng với `\fontshape` để thay đổi kiểu hiện tại. Các ví dụ trong dự án cho thấy cách dùng các lệnh `\fontshape`, `\textup`, `\textulc`, `\upshape`, và `\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/vi/bai-viet-chuyen-sau/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.
