> 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/id/artikel-mendalam/11-boxes-and-glue-a-brief-but-visual-introduction-using-luatex.md).

# Boxes dan Glue: Pengantar singkat namun visual menggunakan LuaTeX

## Pengantar untuk artikel-artikel mendatang

Tulisan ini adalah pengantar singkat ke beberapa konsep/model kunci yang terlibat dalam penataan huruf dengan $$\mathrm \TeX$$: box dan glue—“menyiapkan panggung” untuk artikel-artikel mendatang yang akan membahas jauh lebih rinci. Sebuah tulisan yang akan datang akan mengeksplorasi perilaku tingkat rendah dari $$\mathrm \TeX$$ box menggunakan $$\mathrm{Lua}\mathrm\TeX$$ untuk menghasilkan diagram (graf node) seperti contoh berikut:

![Graf node sebuah box](/files/f71cf176ccfcc34e3459052d3af92f694e441a78)

Graf node ini dihasilkan dari sebuah `\hbox{...}` yang dibuat dengan $$\mathrm \TeX$$ kode:

```latex

\hbox to100pt{A\hskip4pt plus3pt minus 2pt B%
\hskip 0pt plus 2fil C\hskip 0pt plus 2fill D\hskip 0pt plus 3fill}
```

yang terlihat seperti ini (digambar dengan persegi panjang pembatas):

![Contoh \hbox](/files/54352eb512c4bafc153082720658264b30fa2aa0)

Graf node ini menunjukkan struktur dalam yang mendalam dari $$\mathrm \TeX$$ box—mencerminkan bagaimana mereka disimpan di dalam $$\mathrm \TeX$$ dan menawarkan deskripsi grafis yang sangat berharga yang membantu memahami lebih baik perilaku perintah pembentukan box seperti `\hbox{...}` atau `\vbox{...}`.

## Kembali ke dasar...

Bahkan sebagai pengguna baru, atau kasual, $$\mathrm \LaTeX$$ Anda tidak akan butuh waktu lama sebelum menemui konsep $$\mathrm \TeX$$ “box” atau bahwa $$\mathrm \TeX$$ menggunakan model “box dan glue” untuk aktivitas penataan huruf intinya. Algoritme penataan huruf dari $$\mathrm \TeX$$ menghabiskan banyak waktunya untuk membuat lalu menumpuk daftar box horizontal dan vertikal. Misalnya, ketika $$\mathrm \TeX$$ menata sebuah paragraf teks dan memecahnya menjadi serangkaian baris, ia menganggap teks paragraf sebagai aliran atau urutan box dan menggunakan lebar, tinggi, dan kedalaman box karakter tersebut (sebenarnya, glyph) untuk menemukan pemenggalan baris terbaik lalu menambahkan ruang vertikal di antara baris-baris teks yang ditata (glue itu disebut `\baselineskip`). Setiap baris paragraf yang ditata itu sendiri merupakan sebuah box (yang berisi box lain—misalnya, karakter) dan baris-baris paragraf yang ditata (box) disusun secara vertikal untuk menghasilkan paragraf. Pada akhirnya, box terbesar dari semuanya dihasilkan: halaman yang ditata. Jelas, ini adalah gambaran yang sangat disederhanakan karena Anda juga perlu kemampuan untuk memindahkan dan memposisikan box-box tersebut dan $$\mathrm \TeX$$ melakukan ini dengan menggunakan yang disebut *glue*: suatu bentuk “spasi fleksibel”. Knuth pernah berkomentar (halaman 70 dari The $$\mathrm \TeX \mathrm{book}$$)

## Memvisualisasikan paragraf yang ditata menggunakan $$\mathrm{Lua}\mathrm\TeX$$

Menggunakan $$\mathrm{Lua}\mathrm\TeX$$, paragraf yang ditata dapat diproses untuk menampilkan komponen yang digunakan untuk menatanya: box karakter dan glue fleksibel yang digunakan untuk memberi spasi antar kata. Kami telah membuat sebuah [$$\mathrm{Lua}\mathrm\TeX$$ (plain $$\mathrm \TeX$$) proyek](https://www.overleaf.com/latex/examples/using-a-luatex-callback-to-parse-typeset-paragraphs/mzbpwxtjshsj) untuk mendemonstrasikan ini:

[![Screenshot of Overleaf](/files/a1f05330e22ecd40a6a786c984ae62d2c9bd7945)](https://www.overleaf.com/latex/examples/using-a-luatex-callback-to-parse-typeset-paragraphs/mzbpwxtjshsj)

Kode proyek ini ditulis untuk mengilustrasikan tulisan ini dan bukan implementasi penuh dari “parser” paragraf—kode ini mengabaikan sejumlah $$\mathrm{Lua}\mathrm \TeX$$ jenis node dan dirancang semata-mata untuk mengilustrasikan ide-ide yang dibahas dalam tulisan ini.

![box dan glue](/files/08f88b6e310a5155ec69ac114e2cb555276cc959)

Pada bagian gambar yang diperbesar di bawah, Anda dapat melihat baris-baris paragraf individual diberi arsiran sebagai strip abu-abu—perhatikan ada ruang putih di antara baris-barisnya: glue vertikal yang $$\mathrm \TeX$$ disisipkan saat ia menumpuknya untuk membentuk paragraf. Jika Anda ingin mengetahui lebih lanjut tentang glue vertikal yang disisipkan di antara baris-baris dalam paragraf yang ditata, gunakan Google untuk menemukan artikel yang membahas `\baselineskip` dan `\lineskiplimit`.

![paragraf yang diurai menampilkan box dan glue](/files/8319617eb8f48bf49d8201243fd16c44a722a049)

Saat $$\mathrm \TeX$$ membaca dan menata sebuah paragraf, ia mengubah karakter spasi antar kata menjadi gumpalan glue yang nilai pastinya merupakan properti dari font yang digunakan. Selama penataan huruf, glue antar kata ini diregangkan atau dikecilkan sebesar yang dianggap perlu untuk mencapai pemenggalan baris yang enak dipandang. Pada gambar di atas Anda perlu memperhatikan hal-hal berikut:

* strip abu-abu adalah batas-batas baris individual dari paragraf yang ditata;
* setiap karakter ditampilkan di dalam sebuah box yang menentukan dimensinya (sebagaimana $$\mathrm \TeX$$ yang dilihatnya);
* box kuning menunjukkan glue yang $$\mathrm \TeX$$ telah disisipkan di antara kata-kata untuk mencapai pemenggalan baris yang enak dipandang. Perhatikan hal-hal berikut:
* lebar glue antar kata bervariasi dari satu baris ke baris lain saat $$\mathrm \TeX$$ meregangkan atau mengecilkannya untuk mencapai tiap pemenggalan baris;
* pada baris ketiga, glue setelah karakter titik lebih lebar daripada glue lain pada baris yang sama.
* box merah menunjukkan di mana sebuah `\hbox{...}` digunakan. Definisi dari `\TeX` perintah menempatkan huruf E ke dalam sebuah `\hbox{...}` agar dapat diturunkan untuk membuat $$\mathrm \TeX$$ logo.

Pada akhir paragraf contoh kami terdapat strip glue panjang yang disebut `\parfillskip`: ini disisipkan oleh $$\mathrm \TeX$$ mesin untuk mengisi ruang pada baris terakhir. ![parfillskip glue](/files/3d30217f6ae983c753ab430fb7fe808a4d8b9457)

### Sampai tulisan berikutnya

Kami berharap tulisan ini telah memberikan pengantar yang berguna tentang prinsip box dan glue yang digunakan dalam $$\mathrm \TeX$$. Dalam tulisan mendatang kita akan menggunakan $$\mathrm{Lua}\mathrm\TeX$$ untuk menyelami jauh lebih dalam isi dari $$\mathrm \TeX$$ box—menggunakan graf node seperti contoh yang ditampilkan di awal artikel ini.


---

# 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/id/artikel-mendalam/11-boxes-and-glue-a-brief-but-visual-introduction-using-luatex.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.
