2009-10-10 9 views
8

Attualmente sto facendo qualcosa di simile:lattice: hfill ad una certa larghezza

a\hfill{}b 

che mette 'a' all'estrema sinistra, e 'b' all'estrema destra della pagina. Tuttavia, mi piacerebbe che "b" fosse esattamente a metà strada. C'è un \ hfill equivalente dove posso dire \hfill{0.5\textwidth}? Non conosco la larghezza di 'a'.

Ovviamente, potrei usare tabulare, o forse minipage, ma il resto del codice qui è piuttosto complicato, quindi preferirei non scherzare.

Edit:

a e b sono entrambi subfloats (subfigure) con lstinputlistings in loro.

+1

Che dire di due hfill, come un \ hfill {} b \ hfill {}? –

+0

@ Guðmundur H: Grazie. Questo tipo di opere, ma non è del tutto al 50%. Ho due usi sulla stessa pagina, ed entrambi hanno dimensioni diverse (una forse il 40%, una forse il 55%). –

+1

cambia '' \ hfill'' in '' \ hskip 0pt plus 1fill'' e usa '' \ hskip 0pt plus .40 fill'' e '' \ hskip 0pt plus .60 fill'' –

risposta

6
\documentclass{article} 

\begin{document} 
\noindent\hbox to 0.5\textwidth{a}b 

Curabitur viverra ligula a dui condimentum tempus. Aenean convallis, massa ut fermentum 
convallis, leo justo iaculis lectus, quis molestie orci ligula ut leo. Quisque vitae neque 
sit amet tortor convallis rhoncus ac at nibh. Cras sit amet mauris sit amet neque 
tincidunt iaculis non non ante. Proin quis nisi porttitor enim adipiscing bibendum et 
fermentum magna. Morbi sapien nibh, venenatis in fringilla id, laoreet ut libero. 
\end{document} 

NB: questo funziona se la larghezza di una è inferiore a 0,5 \ textwidth quindi la risposta Multicol è probabilmente più ragionevole

+0

Trovo il testo che distrae. Perché non mostrare la singola linea con la soluzione? – Svante

+1

Uso un testo segnaposto per mostrare il layout della pagina (quindi vedi dove finisce \ textwidth) –

+0

Nel piccolo esempio, sembra buono. Come funziona? Dove va a finire? –

2

si potrebbe provare un ambiente multicol con columnsep set a 0.

V'è, tra l'altro, anche un modo per misurare le dimensioni di una parte reso, attraverso \settowidth e \settoheight.

3
a\hfill{}b\hspace{0.5\textwidth} 
+0

Questo pone il bordo _right_ di b alla linea centrale. – Svante

+0

Se b è troppo largo, terminerai con un rapporto del 30%/70% con quello –

1

Provare a sostituire \ hfill a \ hskip 0pt più 1fill e si può fare cose stupefacenti. Ad esempio,


a\hskip 0pt plus .35 fill b\hskip 0pt plus .65 fill 
Problemi correlati