Allineare a sinistra ed a destra sulla stessa riga?

  • Questo topic ha 6 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 18 anni, 7 mesi fa da DMW.
  • Creatore
    Topic
  • #21593
    Up
    0
    Down
    ::


    Nel mio documento (\documentclass{article}), avevo bisogno di collocare sulla stessa riga all’estrema sinistra il nome ed il cognome ed all’estrema destra la data. Ho ovviato empiricamente, con il comando \phantom{} tra i dati da scrivere.
    Esiste un altro metodo (non empirico e che non richieda vari tentativi) per ottenere il risultato voluto?
    Grazie a tutti.

Visualizzazione 5 filoni di risposte
  • Autore
    Risposte
    • #21594
      lorenzo.pantieri
      Partecipante
      • #21595
        Up
        0
        Down
        ::

        Nel mio documento (\documentclass{article}), avevo bisogno di collocare sulla stessa riga all’estrema sinistra il nome ed il cognome ed all’estrema destra la data. Ho ovviato empiricamente, con il comando \phantom{} tra i dati da scrivere.
        Esiste un altro metodo (non empirico e che non richieda vari tentativi) per ottenere il risultato voluto?
        Grazie a tutti.

        Questo è il modo più semplice:
        `\begin{center}
        Pinco Pallino\hfill \today
        \end{center}`
        Non funziona più se, come nel topic che ti ha indicato Lorenzo, la parte di sinistra o quella di destra sono fatte di più righe. In tal caso si adopera un tabular:
        `\begin{center}
        \begin{tabular}[t]{@{}l}
        Pinco Pallino\\
        Tizio Sempronio
        \end{tabular}\hfill
        \today
        \end{center}`
        L’argomento opzionale a tabular serve per allineare la tabella rispetto alla sua prima riga. Altrimenti verrebbe centrata verticalmente rispetto alla linea mediana.

        Soluzione Plain TeX:
        `\par\nobreak\medskip
        \hbox to \hsize{Pinco Pallino\hfil \today}
        \medskip`
        Esercizio: perché non metto \noindent?

        Ciao
        Enrico

      • #21596
        Up
        0
        Down
        ::


        Grazie mille! MI avete aiutato a risolvere un problema che mi “tormentava” da mesi.
        Fabrizio

      • #21597
        DMW
          Up
          0
          Down
          ::


          \noindent non serve perché metti hbox, che annulla gli spazi dei fine riga e il rientro emesso da \par.

          Giusto?

          `\par\nobreak\medskip
          \hbox to \hsize{Pinco Pallino\hfil \today}
          \medskip
          \par\nobreak\medskip
          Pinco Pallino\hfill \today
          \par\nobreak\medskip
          \hbox{Pinco Pallino}
          \medskip`

          Ps: Comunque, visto che non sono portato per l’inglese, se non faccio tradurre il TeXBook è un guaio. 😀 😀 😀

        • #21598
          Up
          0
          Down
          ::

          \noindent non serve perché metti hbox, che annulla gli spazi dei fine riga e il rientro emesso da \par.

          Sbagliato in tronco. 😀

          Il rientro non viene emesso da \par, ma viene inserito automaticamente (è una \hbox vuota di ampiezza uguale a \parindent) quando si entra in modo orizzontale.

          Nel codice di cui si parla, \par fa entrare TeX in modo verticale, \nobreak e \medskip non ne fanno uscire, ma nemmeno \hbox, che è una cosa sorprendente, all’inizio; ma ci sono ottimi motivi per cui questa scelta è buona. In modo verticale TeX mette semplicemente box e roba varia una dopo l’altra; gli spazi sono ignorati.

          Che cosa fa entrare in modo orizzontale? Un carattere, un’istruzione \unhbox o \unhcopy, un \hskip, i comandi \noindent e \indent e \valign.

          Per esempio, \leavevmode equivale a \unhbox\voidb@x, che fa appunto entrare in modo orizzontale (e non fa nulla se ci siamo già, perché \voidb@x è una box vuota). I comandi \mbox e \makebox di LaTeX emettono un \leavevmode.

          Ciao
          Enrico

        • #21599
          DMW
            Up
            0
            Down
            ::


            Prof.,

            Grazie per la spiegazione, ora mi è tutto chiaro.

            Andrea

        Visualizzazione 5 filoni di risposte
        • Devi essere connesso per rispondere a questo topic.

        Go to top