> For the complete documentation index, see [llms.txt](https://ayakaleaf-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://ayakaleaf-pro.ayaka.space/latex/tr/tex-latex-temel-yapilari/02-badness.md).

# \badness

#### Özet

TEX her bir kutu oluşturduğunda (örneğin, açıkça bir `\hbox` ya da `\vbox`) o kutunun “badness”ını ayarlar ya da hesaplar: bir sayısal değer; bu değer, bir kutunun içeriğinin o kutu içine ne kadar “iyi” sığdığını ölçmenin ya da sınıflandırmanın bir yolu olarak düşünülebilir. En son oluşturulan kutunun badness değeri, şu komutla erişilebilen salt okunur bir yazmaçta (bir bellek konumunda) saklanır `\\badness`: örneğin şu komutla `\the\badness`. Not edin ki TEX, başka dizgi işlemleri sırasında da (örn. satır kırma) kutular oluşturur; ancak burada açık kutu-oluşturma komutlarına odaklanacağız.

#### Açıklama ve örnekler

TEX’ten aşağıdaki kutu-oluşturma komutları kullanılarak bir kutu oluşturması istendiğinde:

* `\hbox`
* `\vbox`
* `\vtop`

kutunun boyutunu belirlemeyi seçebilir ve TEX’ten içeriğinizi bunun içine sığdırmaya çalışmasını isteyebilirsiniz; örneğin `\hbox to 20pt{<stuff>}` TEX’ten şunu sığdırmaya çalışmasını isteyecektir: `<stuff>` 20pt genişliğindeki bir kutunun içine. TEX, şunu yapmak için elinden geleni yapacaktır: `<stuff>` uygun boyuta, varsa glue’yu gererek ya da küçülterek sığdırmak.

Alternatif olarak, eğer siz *belirlemezseniz* bir kutunun boyutunu, şu şekilde yazarak sabitlemezseniz `\hbox{<stuff>}`, TEX basitçe bir `\hbox` şunun sığmasına yetecek kadar geniş olan bir `<stuff>` ve bu durumda TEX o kutuya 0 badness değeri atayacaktır.

TEX bir kutunun badness değerini hesaplamaya karar verdiğinde, içeriğinizin gerçek boyutunu sığması gereken kutunun uygun boyutuyla karşılaştırır: içeriğiniz belirtilen `\hbox` genişliğe sığmayacak kadar mı geniş, yoksa belirlenen `\vbox` ya da `\vtop`? Badness hesaplamasının bir parçası olarak TEX ayrıca *toplam* kutunun içindeki her tür glue miktarını—yani istenen boyutta bir kutu oluşturmak için ne kadar toplam uzama ya da daralma kullanılabilir olduğunu—da dikkate alır.

Uygulamada, TEX bir kutunun badness değerini hesaplaması gerektiğinde aşağıdaki formülü (yaklaşık olarak) kullanır:

$$\mathrm{badness}=100\left ({t \over s}\right )^3$$

burada $$t$$ yerleştirilmesi gereken istenen “fazla genişlik”tir ve $$s$$ gerilme ya da küçülme için kullanılabilir glue miktarıdır.

Badness değeri genellikle 0 ile 10000 arasında değişir; ancak glue’nun küçülmesine izin verildikten sonra bile içeriği tutacak kadar büyük olmayan kutular için özel bir değer ayrılmıştır: bu kutular “overfull” olarak sınıflandırılır ve TEX onlara 1000000’lik “özel” bir badness değeri atar.

Tamam, tartışma/kuram için bu kadar; şimdi bazı örneklere bakalım. 5 kutu oluşturacağız ve 5 `\\count` yazmaç kullanarak şunu tutacağız: `\\badness` TEX’in az önce oluşturduğu kutunun değeri. Daha sonra bu `\\count` yazmaçları şu değeri çıktılamak için kullanacağız: `\\badness` ilgili kutunun değeri.

```
\newcount\aval\newcount\bval\newcount\cval\newcount\dval\newcount\eval
\setbox100=\hbox{Hello \TeX}\aval=\the\badness %Kutunun boyutunu belirlemiyoruz
\setbox101=\hbox to25mm{Hello \TeX\hskip0pt plus5pt}\bval=\the\badness
\setbox102=\hbox to50mm{Hello \TeX}\cval=\the\badness
\setbox103=\hbox to50mm{Hello \TeX\hfill}\dval=\the\badness
\setbox104=\hbox to5mm{Overleaf}\eval=\the\badness
\setlength{\fboxsep}{0pt}% her kutunun etrafına sıkı bir çerçeve yerleştir
\noindent Sonuçlar şunlardır:\vskip5mm
\noindent 100. kutunun (\fbox{\copy100}) \verb|\badness| değeri \number\aval\par
\noindent 101. kutunun (\fbox{\copy101}) \verb|\badness| değeri \number\bval\par
\noindent 102. kutunun (\fbox{\copy102}) \verb|\badness| değeri \number\cval\par
\noindent 103. kutunun (\fbox{\copy103}) \verb|\badness| değeri \number\dval\par
\noindent 104. kutunun (\fbox{\copy104}) \verb|\badness| değeri \number\eval\par
```

Aşağıdaki grafik çıktıyı gösteriyor:

![](/files/58620696ca3a6498d284d31f5e481be52ba7f29b)

* 100\. kutu: `\hbox{Hello \TeX}`. Bunun `\\badness` 0’dır; çünkü TEX’ten içeriği belirli bir boyuta sığdırması istenmedi.
* 101\. kutu: `\hbox to25mm{Hello \TeX\hskip0pt plus5pt}`. Bu kutuda iki glue vardır: “Hello” sözcüğünden sonra bir kelime aralığı ve şuradan gelen 5pt: `\hskip` glue. Ancak istenen kutu 25mm genişliğindedir; bu da doldurulacak çok boşluk ve bunu yapacak fazla glue olmaması anlamına gelir. Fazla boşluk ile mevcut glue’nun bu birleşimi şu sonucu verir: `\\badness` 6396 değerini.
* 102\. kutu: `\hbox to50mm{Hello \TeX}`. Bu kutuda yalnızca bir glue öğesi vardır: “Hello” sözcüğünden sonra bir kelime aralığı ve doldurulacak çok fazla fazla boşluk vardır. Fazla boşluk ile az miktardaki glue’nun bu birleşimi çok büyük bir `\\badness` değerle sonuçlanır—öyle yüksektir ki TEX bunu 10000 olan azami değere “kırpar”. Ayrıca, kutuyu doldurmak için kelime aralığı oldukça gerilir; bunun sonucunda “Hello” ile “TEX” arasında büyük bir boşluk oluşur
* 103\. kutu: `\hbox to50mm{Hello \TeX\hfill}`. Bu kutu 102. kutuya benzer, ancak iki glue içerir: “Hello” sözcüğünden sonraki kelime aralığı ve tarafından sağlanan ikinci, çok esnek bir glue `\hfill`—sözde “sonsuz esnek” bir glue. Sonuç olarak,`\hfill` gerektiği kadar gerilebilir ve tüm fazla boşluğu soğuracak şekilde genişler. “Sonsuz esnek” glue sayesinde ortaya çıkan `\\badness` 0’dır.
* 104\. kutu: `\hbox to5mm{Overleaf}` Bu kutu, onu izleyen metnin üzerine taşar; bir `\\badness` değeri 1000000’dir. Çok büyük badness değeri (ve üst üste binen metin), “Overleaf” metninin bir `\hbox` yalnızca 5mm genişliğindeki bir kutuya sığamayacak kadar büyük olmasından kaynaklanır—ve ayrıca fazla genişliği soğurabilecek kullanılabilir glue yoktur. TEX 104. kutuyu “overfull” bir kutu olarak sınıflandırır ve `\\badness` değerini 1000000 olan özel değere ayarlar.

#### İlgili komutlar

TEX, kutuların badness’ını bildirmeye ve göstermeye ilişkin bir dizi komut sağlar:

* `[\overfullrule](./07-overfullrule.md)`
* `[\hfuzz](./06-hfuzz.md)`
* `[\vfuzz](./06-hfuzz.md)`
* `[\hbadness](./05-hbadness.md)`
* `[\vbadness](./05-hbadness.md)`


---

# 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://ayakaleaf-pro.ayaka.space/latex/tr/tex-latex-temel-yapilari/02-badness.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.
