> 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/04-a-visual-guide-to-latex-s-page-layout-parameters.md).

# Hướng dẫn trực quan về các tham số bố cục trang của LaTeX

## Cập nhật: Tháng 9 năm 2021

Sau khoảng 4 năm kể từ khi được xuất bản lần đầu, bài viết này đã được chỉnh sửa, đổi tên và xuất bản lại để giảm dung lượng và tái tập trung phạm vi các chủ đề được đề cập. Bài viết ban đầu có bao gồm một mẫu LaTeX dựa trên LuaTeX, phụ thuộc vào các tính năng cũ của Overleaf V1. Mẫu đó hiện đã lỗi thời và không còn khả dụng nữa.

**Lưu ý**: Nếu bạn không cần, hoặc không muốn, hiểu các chi tiết tinh vi hơn của bố cục trang LaTeX, bài viết Overleaf [Kích cỡ trang và lề](/latex/vi/dinh-dang/07-page-size-and-margins.md) giải thích về [`geometry` gói](https://ctan.org/pkg/geometry?lang=en) và có lẽ sẽ thú vị hơn.

## Giới thiệu

Bạn đã bao giờ gặp khó khăn khi cấu hình bố cục sách với LaTeX — đặt kích thước giấy, kích thước trang sách (kích thước cắt) và lề? Việc này có thể khá phức tạp, mặc dù có rất nhiều gói hỗ trợ cho nhiệm vụ này — bao gồm cả gói tuyệt vời `geometry` gói. (La)TeX sử dụng gần một chục giá trị để đặc tả đầy đủ bố cục trang cho các ấn phẩm có lề khác nhau cho trang bên trái và trang bên phải:

* `\hoffset`, `\voffset`, `\oddsidemargin`, `\topmargin`, `\headheight`, `\headsep`, `\textheight`, `\textwidth`, `\marginparsep`, `\marginparwidth`, `\footskip`

Thông thường, các tham số này được thiết lập thông qua các lệnh do các gói hoặc mẫu cung cấp — chẳng hạn như những mẫu được các nhà xuất bản sách phát hành. Tuy nhiên, đôi khi bạn có thể muốn hiểu điều gì đang diễn ra “ở hậu trường” — có lẽ bạn cần mức độ kiểm soát cao hơn đối với một kiểu tài liệu cụ thể mà bạn muốn tạo.

Trong bài viết này, chúng ta khám phá mối quan hệ giữa mô hình trang của LaTeX và mô hình truyền thống được dùng trong thế giới in ấn và thiết kế. Sử dụng một bộ [Google Slides](#google-slides-with-animations)chứa các minh họa bố cục trang chi tiết, chúng tôi sẽ trình bày từng bước cách lập ra một số phương trình rất đơn giản, cung cấp mối liên kết giữa mô hình bố cục của LaTeX và một đặc tả điển hình có thể được tạo ra bởi một nhà thiết kế sách hoặc công ty in theo yêu cầu. Dùng các phương trình đó, nếu muốn, bạn có thể trực tiếp tính các giá trị cho các tham số của LaTeX để triển khai bố cục sách mà bạn ưa thích.

### Một số ghi chú ngắn về pdfTeX và LuaTeX/LuaHBTeX

Lưu ý rằng ngoài các `\hoffset` và `\voffset` tham số được liệt kê ở trên, pdfTeX cũng sử dụng các tham số `\pdfhorigin` và `\pdfvorigin`. Theo truyền thống, các bộ máy TeX xuất ra `.dvi` các tệp được chuyển đổi sang PostScript hoặc PDF bởi phần mềm giả định gốc trang nằm tại vị trí cách lề trái của trang 1 inch (25,4mm) và cách lề trên của trang 1 inch (25,4mm). Các giá trị của các `\hoffset` và `\voffset` tham số là *tương đối* so với vị trí (1 inch, 1 inch) đó. Các tham số của pdfTeX hơi khác ở chỗ chúng tương đối so với góc trên bên trái, tức là tại (0mm, 0mm). Vì vậy, ví dụ, nếu bạn đặt `\pdfhorigin=30mm` nó tương đương với việc đặt `\hoffset` sang `30–25,4`=`4,6mm` bởi vì `\hoffset` là tương đối so với một vị trí vốn đã `25,4mm` từ lề trái của trang. Tương tự, một `\hoffset` giá trị của `0mm` tương đương với `\pdfhorigin=25.4mm`. Trong các thảo luận/biểu đồ sau đây, chúng ta sẽ sử dụng các tham số `\hoffset` và `\voffset`.

#### LuaTeX/LuaHBTeX

LuaTeX/LuaHBTeX cũng *gián tiếp* hỗ trợ `\pdfhorigin` và `\pdfvorigin` nhưng, để tương thích với pdfTeX, các lệnh đó phải được định nghĩa như sau (xem Mục 3 của [Sổ tay tham khảo LuaTeX](https://www.pragma-ade.com/general/manuals/luatex.pdf)):

```latex
\edef\pdfhorigin{\pdfvariable horigin}
\edef\pdfvorigin{\pdfvariable vorigin}
```

## Mục tiêu của chúng ta là gì?

Chủ đề của bài viết này, và mục đích của các tài nguyên chúng tôi cung cấp, dựa trên các mục tiêu sau:

1. Chúng ta muốn triển khai một đặc tả bố cục do, ví dụ, một nhà thiết kế sách hoặc nhà xuất bản cung cấp mà không sử dụng hoặc hỗ trợ LaTeX — hoặc có lẽ chúng ta cần tuân theo một đặc tả do một công ty in theo yêu cầu cung cấp.
2. Chúng ta muốn sử dụng các kích thước sách truyền thống (kích thước giấy, kích thước cắt và lề trang) có trong đặc tả của nhà thiết kế và chuyển chúng thành các tham số và giá trị mà LaTeX hiểu được và có thể dùng để tái tạo bố cục của nhà thiết kế.
3. Chúng ta muốn trang sách của mình được căn giữa theo chiều ngang và chiều dọc trên kích thước giấy đã chọn — tức là, được căn giữa trong vùng của các trang PDF do LaTeX tạo ra. Chúng ta cũng muốn chọn một kích thước giấy tùy ý và không bị giới hạn bởi vài tùy chọn chuẩn (A4, US Letter, v.v.).

### Nhắc nhanh: Làm thế nào để đặt kích thước giấy?

LuaTeX, XeTeX và pdfTeX cung cấp hai lệnh cho phép bạn kiểm soát “kích thước giấy” của tài liệu PDF mà chúng tạo ra:

* `\pdfpagewidth`
* `\pdfpageheight`

Biết rằng các lệnh này biểu thị kích thước giấy của chúng ta, giờ đây ta có thể vẽ một sơ đồ để cho thấy điều mình muốn đạt được:

![{{{alt}}}](/files/e4e83f40e13a2686e83cc4d31c68d921caf1923d)

Lưu ý rằng ΔX và ΔY là các giá trị cần thiết để căn giữa trang sách trên vùng giấy — chúng được thảo luận trong [Google Slides](#google-slides-with-animations). Từ sơ đồ ở trên, bạn có thể thấy:

* ΔX=½(\pdfpagewidth − book-page-width)
* ΔY=½(\pdfpageheight − book-page-height)

Sơ đồ ở trên cũng được đưa vào [Google Slides](#google-slides-with-animations) và được dùng làm điểm khởi đầu để đi đến các phương trình bố cục trang.

#### Một lưu ý ngoài lề: LuaTeX

LuaTeX không còn *trực tiếp* hỗ trợ `\pdfpagewidth` hoặc `\pdfpageheight` mà giờ đây sử dụng hai nguyên thủy mới gọi là `\pagewidth` và `\pageheight`. Khả năng tương thích ngược có thể đạt được thông qua `\let\pdfpagewidth\pagewidth` và `\let\pdfpageheight\pageheight`. Bạn đọc quan tâm có thể tìm thêm chi tiết trong [LaTeX News (Số 24, tháng 2 năm 2016)](https://www.latex-project.org/news/latex2e-news/ltnews24.pdf) và, dĩ nhiên, trong [tài liệu chính thức của LuaTeX](http://www.luatex.org/documentation.html).

## Tài nguyên trong bài viết này

Tại Overleaf, chúng tôi thích thử nghiệm các ý tưởng mới nên trong bài viết này, chúng tôi đã đưa vào một loạt tài nguyên mà hy vọng sẽ hữu ích:

* **Hai bộ** [**Google Slides**](#google-slides-with-animations): Hai bộ slide này có nội dung giống hệt nhau nhưng một bộ có hoạt ảnh và bộ kia thì không (một số người thích xem các slide không có hoạt ảnh). Bạn cũng có thể tải chúng xuống ở [định dạng PDF](https://www.filepicker.io/api/file/7Okr2kx6QAWPo3w7mt6K). Các slide cung cấp một phần giới thiệu rất ngắn gọn về những điều cơ bản của bố cục trang sách và khám phá mối quan hệ giữa mô hình trang của LaTeX và mô hình được dùng trong in ấn và thiết kế truyền thống. Vài slide cuối cho thấy cách đi đến các phương trình đơn giản có thể dùng để chuyển một bộ đo lường truyền thống (chiều rộng/chiều cao trang và lề) thành các giá trị tham số LaTeX tương đương nhằm tái tạo bố cục sách của bạn trong LaTeX.
* **Sơ đồ bố cục trang**: Gói [Google Slides](#google-slides-with-animations) chứa các sơ đồ bố cục trang chi tiết, được dùng để lập ra một số phương trình đơn giản nhằm tính các tham số LaTeX khác nhau. Nếu bạn muốn nghiên cứu các minh họa đó chi tiết hơn, chúng tôi đã cung cấp [các phiên bản PDF](#download-page-layout-diagrams) để bạn tải xuống.

### Cách sử dụng các tài nguyên của bài viết này

Độc giả của bài viết này có thể có mức độ kinh nghiệm sử dụng LaTeX rất khác nhau, nên chúng tôi thấy tốt hơn là cung cấp một loạt tài nguyên để người đọc tự chọn — dựa trên kinh nghiệm, sở thích hoặc ưu tiên cá nhân của bạn. Chúng tôi hy vọng những tài nguyên này hữu ích và đáp ứng nhu cầu cũng như mối quan tâm của cộng đồng LaTeX của Overleaf.

Không có thứ tự cố định nào để sử dụng các tài nguyên này, nhưng chúng tôi gợi ý như sau:

1. xem [Google Slides](#google-slides-with-animations);
2. (tùy chọn): tải xuống và nghiên cứu [sơ đồ bố cục trang](#download-page-layout-diagrams);

#### Bước 1: Xem hoặc tải xuống (dưới dạng PDF) Google Slides

Slide cuối cùng (được hiển thị bên dưới) tóm tắt các phương trình được xây dựng trong phần trình bày.

![{{{alt}}}](/files/ac7d020f39b850dfb148f68b2c581625fe12487d)

Để thuận tiện cho bạn đọc, chúng tôi cung cấp ba lựa chọn để xem các slide:

1. các slide [có hoạt ảnh](#google-slides-with-animations);
2. các slide [không có hoạt ảnh](#google-slides-without-animations);
3. các slide ở [định dạng PDF](https://www.filepicker.io/api/file/7Okr2kx6QAWPo3w7mt6K) để xem ngoại tuyến hoặc in ra.

#### Bước 2 (tùy chọn): Tải xuống và nghiên cứu các sơ đồ bố cục trang

Nếu bạn muốn tìm hiểu chi tiết hơn về các sơ đồ bố cục trang, có một liên kết ở [cuối bài viết này](#download-page-layout-diagrams) để tải xuống một tệp PDF chứa phiên bản trải trang đôi (các trang đối diện) của các sơ đồ có trong [Google Slides](#google-slides-with-animations).

### Ghi chú về các tham số và phương trình bố cục trang

Nếu bạn xem các phương trình được trình bày trong [Google Slides](#google-slides-with-animations) bạn có thể nhận thấy chúng chứa nhiều biến; do đó, có nhiều cách để sử dụng các phương trình tùy thuộc vào những giá trị tham số LaTeX nào bạn muốn tính và những giá trị nào bạn muốn tự đặt. Hãy xem một trong các đồ họa (và các phương trình liên quan) có trong [Google Slides](#google-slides-with-animations):

![{{{alt}}}](/files/2417cace2afa502074fb8e96bed0ede1e67e49a9)

Rõ ràng, bạn cần quyết định những giá trị tham số LaTeX nào bạn muốn tính và những giá trị nào bạn sẽ cung cấp làm điểm xuất phát. Một cách để thực hiện là như sau:

1. Đặt `\hoffset` và `\voffset` sang `0mm` (với `\pdfhorigin=1in` và `\pdfvorigin=1in`, nếu cần)
2. Sử dụng các giá trị cho các tham số LaTeX sau đây ảnh hưởng đến trang sách *chiều rộng*:

* `\marginparsep`
* `\marginparwidth`

4. Đặt các giá trị mong muốn cho các tham số LaTeX sau đây ảnh hưởng đến trang sách *chiều cao*:

* `\headheight`
* `\headsep`
* `\footskip`

6. Đặt các giá trị cho kích thước giấy bạn muốn cùng với chiều rộng và chiều cao mong muốn của trang sách, cộng thêm bốn giá trị lề sách mà bạn muốn dùng.
7. Tính các giá trị LaTeX sau đây để triển khai bố cục sách của bạn (căn giữa trên kích thước giấy bạn đã chọn):

* `\evensidemargin`, `\oddsidemargin`, `\textwidth`, `\textheight`và `\topmargin`

## Tài nguyên của bài viết

Ở đây chúng tôi liệt kê một số tài nguyên đã chuẩn bị để giúp bạn hiểu rõ hơn các tham số bố cục trang LaTeX. Phần [Google Slides](#google-slides-with-animations) cung cấp chi tiết về các phương trình đơn giản mà nếu muốn bạn có thể dùng trực tiếp để tính các giá trị tham số phù hợp với nhu cầu của bất kỳ tài liệu nào.

### Google Slides: Có hoạt ảnh

{% embed url="<https://docs.google.com/presentation/d/e/2PACX-1vSTZiCWqckmPGdqisRh9wTflZrmWdofwpReQAkSbuW2tTBothzSy86TzwMUtfomKtqSbVwNypifdUgY/embed?start=false&loop=false&delayms=3000>" %}

### Google Slides: Không có hoạt ảnh

{% embed url="<https://docs.google.com/presentation/d/e/2PACX-1vQ_gH_Wg0Q0HdhcuyGXPplPsAUkaYbi_at_tnFLKk8q_woe22eFNPjehAF_PLvEgEV_33-qNskIYvlL/embed?start=false&loop=false&delayms=3000>" %}

### Google Slides: Đã chuyển đổi sang PDF

Nếu bạn muốn xem các slide dưới dạng tài liệu PDF, hoặc muốn in chúng ra, bạn có thể tải xuống các slide ở [định dạng PDF](https://www.filepicker.io/api/file/7Okr2kx6QAWPo3w7mt6K).

### Tải xuống sơ đồ bố cục trang

Nếu bạn muốn nghiên cứu các sơ đồ bố cục trang chi tiết hơn, đây là bản trải trang đôi (tức là các trang đối diện) trong [định dạng PDF](https://www.filepicker.io/api/file/X2O1aJM1Rca68mmYm4PT).

## Kết luận

Chúng tôi hy vọng bài viết này hữu ích và đã cung cấp một số thông tin nền hữu ích để khám phá bố cục trang bằng LaTeX. Như միշտ, chúng tôi rất vui khi nhận được phản hồi từ độc giả, vì vậy xin hãy [liên hệ với chúng tôi](https://www.overleaf.com/contact) gửi cho chúng tôi ý kiến và phản hồi của bạn.

Chúc bạn (La)TeX vui vẻ!


---

# 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/04-a-visual-guide-to-latex-s-page-layout-parameters.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.
