Allineamento testo cella di una tabella

  • Creatore
    Topic
  • #119225
    Up
    0
    Down
    ::


    Buongiorno a tutti, ho un problema riguardo l’allineamento del testo in una tabella.
    La tabella è composta da 2 colonne. Nella prima colonna ci sono le intestazioni, e sono brevi. Nella seconda un testo descrittivo che si articola su più righe, data la sua lunghezza. Il codice semplificato usato è il seguente:
    `
    \begin{center}
    \centering
    \begin{tabular}[t]{ll}
    \toprule
    Descrizione & \parbox{10cm}{Questo è un testo lungo che finisce su più righe perchè troppo lungo. Questo è un testo lungo che finisce su più righe perchè troppo lungo. Questo è un testo lungo che finisce su più righe perchè troppo lungo.}\\
    \bottomrule
    \end{tabular}
    \end{center}
    `

    Utilizzo parbox perchè è ciò che ho trovato per far andare il testo della seconda colonna a capo automaticamente. Altrimenti se ne andava fuori dalla pagina tutto su una riga.
    Con questo codice ottengo che la parola descrizione è centrata verticalmente rispetto al testo della cella affianco del tipo:

    ………………….Riga 1
    Descrizione…Riga 2
    ………………….Riga 3

    Vorrei che invece fosse allineata al top della cella, del tipo:

    Descrizione…Riga 1
    ………………….Riga 2
    ………………….Riga 3

    Ho trovato una conversazione simile al link:
    thread esistente

    Ma siccome ritengo il mio caso più semplice, e sono passati un po’ di anni, speravo ci fossero anche soluzioni più semplici.
    Grazie in anticipo,

    Marco

Visualizzazione 4 filoni di risposte
  • Autore
    Risposte
    • #119226
      samiel
      Partecipante
        Up
        0
        Down
        ::


        Potresti ad es fare
        `\documentclass{article}

        \usepackage{tabularx}
        \newcolumntype{L}{>{\raggedright\arraybackslash}X}
        \usepackage{booktabs}

        \begin{document}
        \begin{table}
        \centering
        \begin{tabularx}{\linewidth}{LL}
        \toprule
        \textbf{Col1} & \textbf{Col2} \\
        \midrule
        Descrizione & Questo è un testo lungo che finisce su più righe perché troppo lungo. Questo è un testo lungo che finisce su più righe perché troppo lungo. Questo è un testo lungo che finisce su più righe perché troppo lungo. \\
        \bottomrule
        \end{tabularx}
        \end{table}
        \end{document}`
        o forse, meglio, conoscendo per tentativi ed errori la larghezza della prima colonna
        `\documentclass{article}
        \usepackage{tabularx}
        \usepackage{booktabs}

        \newcolumntype{b}{X}
        \newcolumntype{s}{>{\hsize=.2\hsize}X}

        \begin{document}

        \begin{table}[htbp]
        \centering
        \begin{tabularx}{\textwidth}{sb}
        \toprule
        Col1 & Col2 \\
        \midrule
        Definizione & Questo è un testo lungo che finisce su più righe perché troppo lungo. Questo è un testo lungo che finisce su più righe perché troppo lungo. Questo è un testo lungo che finisce su più righe perché troppo lungo. \\
        \bottomrule
        \end{tabularx}
        \end{table}
        \end{document}`

        Ovviamente b e s sono lettere a piacere, nel caso specifico b sta per big e s per small

        m

        PS
        la prossima volta cerca di fornire un EMS

      • #119227
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::



          @marcoozmg
          , dovresti studiare un po’ di teoria prima di mostrare che non l’hai studiata con problemi che sono speigati in qualunque manuale per principianti.
          Dunque ti lamenti che con \parbox ti viene fuori qualcoasa come

          Riga 1: Prima linea di testo
          Riga 2: Descrizione Seconda riga di testo
          Riga3: Terza riga di testo

          Mentre vorresti pa parola Descrizione allineata con la Prima riga di testo.

          Ma \parbox, senza opzione per l’allineamento verticale fa esattamante quello che hai ottenuto: se metti \parbox[t] viene fuori quello che desideri.

          Le due soluzioni di @samiel sono ottime, ma non sono alla portata di un neofita. Se però, scusa se te lo dico, il neofita studiasse, non chiederebbe nemmeno questa piccolezze. Nota che anche noi che frequentiamo questo forum siamo stati neofiti, quindi per imparare LaTeX ci abbiamo messo un nel po’ visto che ai nostri tempi si potevano leggere solo i testi di Knuth (creatore di TeX) e di Lamport (il creatore di LaTeX), ordinando il libri da far arrivare dagli Stati Uniti, che arrivavano dopo un tempo variabile fra 2 e 4 mesi, e costavano almeno il doppio del loro prezzo di copertina. Ora di documentazione ce n’è moltissima sia distribuita con l’installazione di TeX Live o di MiKTeX, sia prodotta dai vari gruppi di utenti fra i quali anche GuIT

          Per studiare hai alcune possibilità:

          1) apri un terminale, ci sirivi dentro il comando texdoc it-lshort, premi il tasto Invio, e leggi andando a cercare i capitolo dove si parla di tabelle.
          2) vai nella sezione Documentazione di questo forum, ti scarichi la guida tematica Il LaTeX Reference Manual commentato clicchi sull’icona del file appena scaricato e te la leggi al paragrafo dove si parla di tabelle.
          3) vai nella sezione Documentazione, di questo forum, ti scarichi la guida tematica sulle tabelle, clicchi sulla sua icona e te la leggi.

          Come vedi per studiare hai solo l’imbarazzo della scelta le guide che ti ho indicato sono tutte in italiano; ti consiglio la soluzione 2, perché oltra che di tabelle tratta tutto l’ABC di LaTeX, quindi anche di \parbox

          Se invece vuoi capire come funzionano le soluzioni di @samiel, devi leggerti con texdoc le documentazioni dei pacchetti tabularx e quella di array, entrambe in inglese; le hai gia sul tuo hardisk, quindi non hai nemmeno bisogno di cercare in rete.

        • #119228
          Up
          0
          Down
          ::


          Vi ringrazio per le risposte e la soluzione di @OldClaudio funziona e risolve il mio problema.


          @OldClaudio
          ti ringrazio per la soluzione e ammetto una mezza colpa sulla tua ramanzina. Per inizarmi a latex mi sono letto l’Arte e l’ho messa in pratica. Dopodichè di volta in volta quando trovo dei problemi cerco in rete, dò una sfogliata all’arte o altri 1-2 manuali che ho, e se non trovo niente chiedo.
          Ti ringrazio perciò per i consigli sui manuali e su un tipo di metodologia per risolvere ad esempio i problemi sulle tabelle.

          Saluti,

          Marco

        • #119229
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Marco,
            prima di andare in rete, te lo raccomando, consulta la documentazione; L’Arte è bello, ma non scnde nei dettagli. Per imparare a fare cose poco standard, o comunque diverse da quelle che compaiono nell’arte, ci sono le guide generali e quelle tematiche.
            Ho l’onore e ho avuto l’onere di mettere insieme i contributi di tanti soci del GuIT nella guida generale Introduzione all’arte della composizione tipografica con LaTeX; si trova nella sezione Documentazione. Sono più di 800 pagine con il file PDF guidaguit.pdf. Ma esistono anche tre altri file pdf che possono essere essere usati separatamente, e, volendo, possono essere stampati su carta, magari in segnature cucite col filo refe e rilegate. Personalmente non me le sono ancora rilegate, perché sia i testo unico, sia i tre testi parziali, subiscono almeno un aggiornamento annuale; LaTeX cresce, evolve, certe cose di 10 anni fa non si fanno più. Nello stesso tempo, nonostante gli aggiornamenti, la GuidaGuIT rimane sempre indietro rispetto allo stato dell’arte. La stessa limitazione si applica alle guide tematiche.
            Allora perché bisogna continuare a studiare LaTeX e aggiornarsi continuamene? Con il software libero o commerciale deve essere così; persino un programma di calcolo nato, se ben ricordo nel 1955, continua ad essere usato ancora oggi e quello che si può scrivere oggi in quel programma era inconcepibile 65 anni fa; eppure veniva usato per mettere in orbita satelliti artificiali. Io lo uso ancora oggi, ma per le mie necessità personali; per cose diverse sarebbe bene conoscere il C++, come nel nostro campo, oggi bisognerebbe probabilmente usare solo ConTeXt o LuaLaTeX.

          • #119230
            Up
            0
            Down
            ::


            Grazie mille di nuovo per le guide consigliate e con i prossimi dubbi le guarderò prima di domandare. Anche perché penso che una guida di 800 pagina sia bella soddisfacente. Sono perfettamente d’accordo che bisogna restare aggiornati dato che questi linguaggi continuano ad evolversi. Lavoro proprio in campo satelliti e quindi non è nuova per me questo tipo di filosofia di rimanere aggiornati. Stai parlando immagino di Fortran come linguaggio per mettere in orbita satelliti e usato tutt’ora? L’ho usato per la mia tesi sulla fluidodinamica. Parli anche con uno che di linguaggi di programmazione ne mastica doversi… Ma stare dietro a tutti gli aggiornamenti di ciascuno mi risulta difficile! Quindi per latex seguo solo ciò che mi riguarda per scrivere la documentazione di lavoro.

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

        Go to top