Kommentit
- Äänestin tämän kysymyksen sulkemiseksi, koska @egreg on antoi kanonisen vastauksen " -kysymykseen, joka alun perin esitettiin osoitteessa tex.sx ".
- Okei, mutta tämä kysymys ensin kysyttiin.
Vastaa
TeX on missä tahansa käsittelyn vaiheessa jossakin tilassa. On kuusi tilaa, jotka on jaettu kolmeen luokkaan:
- vaakatila ja rajoitettu vaakatila,
- pystytila ja sisäinen pystytila ja
- matematiikka -tilassa ja näytä matematiikkatila.
Kun matemaattia ei kirjoiteta, TeX on vaaka- tai pystytilassa. Vaakatilaa käytetään tyypillisesti tekstirivien tekemiseen; pystysuuntaista tilaa käytetään tyypillisesti kappaleen viivojen pinoamiseen päällekkäin.
\vskip
lisää liima rivien pystysuoraan luetteloon. Siksi \vskip
rikkoo vaakasuoran tilan ja siirtyy pystytilaan.
\vspace
voi toimia vaaka- ja pystysuunnassa -tilassa. Vaakasuorassa tilassa \vspace 1mm
vastaa \vadjust{\vskip 1mm \vskip 0pt}
ja lisää välilyönnin nykyisen rivin perään. Pystytilassa \vspace 1mm
vastaa \vskip 1mm \vskip 0pt
\vskip 0pt
on tarvitaan, joten \removelastskip
ei voi poistaa pystytilaa.
Täysi tarkkuus:
\vspace : -> \@ifstar \@vspacer \@vspace
Ilman *
-tapausta (\vspace 1mm
):
\@vspace: #1->\ifvmode \vskip #1 \vskip \z@skip \else \@bsphack \vadjust {\@restore par \vskip #1 \vskip \z@skip }\@esphack \fi
Huomaa \z@skip
yhtä suuri kuin 0pt
, \@bsphack
tarvitaan suuren vaakasuoran tilan säästämiseksi jakson jälkeen. \@esphack
tarvitaan suurten avaruusasetusten palauttamiseksi.
Tapauksessa *
tapaus (\vspace* 1mm
):
\@vspacer:#1->\ifvmode \dimen@ \prevdepth \hrule \@height \z@ \nobreak \vskip #1 \v skip \z@skip \prevdepth \dimen@ \else \@bsphack \vadjust {\@restorepar \hrule @height \z@ \nobreak \vskip #1 \vskip \z@skip }\@esphack \fi
kommentit
- Joten jos niitä käytetään kappaleen ulkopuolella (ts. pystytilassa), niin tulos olisi täsmälleen sama?
Vastaa
\vspace
on LaTeX-komento ja \vskip
on TeX-komento. Molempia voidaan käyttää LaTeX: ssä. Kun \vspace
käytetään kappaleessa, se lisää välilyönnin nykyisen rivin perään. Mutta jos \vskip
käytetään kappaleessa, se päättää kappaleen ja lisää välilyönnin välittömästi.
Kommentit
- Miksi
\vskip
aloittaa uuden rivin? Onko tämä sivuvaikutus siihen, mitä Charles viittaa " pystytilaan? " - @Geoff:
\vskip
aloita uusi rivi suunnittelun mukaan.vskip
on pystysuuntainen ohitus. Donald Knuth päätti niin.
Vastaa
Ero esimerkillä:
\documentclass[preview, border=7mm]{standalone} \usepackage{xcolor} \usepackage{blindtext} \begin{document} \textcolor{red}{Line with \texttt{vspace} :} \vspace{1cm} \blindtext \hrulefill \textcolor{red}{Line with \texttt{vskip} :} \vskip 1cm \blindtext \end{document}
Vastaa
Aivan kuten Rob sanoo; muotoilemaan uudelleen, \vskip
tulisi käyttää, kun olet tai haluat aloittaa asetuksen pystytilassa, ja \vspace
on järkevää kappale.
\vspace
-sovelluksen (ja?) toteutusta käsitellään julkaisussa Eijkhout 1990, TUGboat 11 (4). ), s. 618 .