Tabelle centrate

  • Creatore
    Topic
  • #100462
    Up
    0
    Down
    ::


    Buongiorno a tutti, è da un paio di giorni che uso Latex e sto risolvendo piano piano tutti i miei problemi con le vostre discussioni sul forum. A questo particolare problema però non ho trovato soluzione.
    ho una tabella a due colonne abbastanza lunga ma non così lunga da uscire dal foglio, il problema è che lo è abbastanza per uscire dai margini. mi chiedevo se c’è qualche comando che me la centri impedendo che “sbordi”.

    questo è il codice della tabella. la documentclass è article
    `
    \begin{tabular}{lp{0.5\textwidth}}
    \toprule
    Figura & Ruoli e Responsabilità\\
    \midrule
    C.S.P. / C.S.E. & Redige P.S.C.\\
    & Predispone il fascicolo\\
    & Verifica applicazione P.S.C.\\
    & Verifica idoneità P.O.S.\\
    & Organizza coordinamento e cooperazione del cantiere\\
    & Verifica attuazione di quanto previsto negli accordi tra parti sociali\\
    & Segnala e propone sospensioni lavori\\
    & Sospende lavori in caso di grave e imminente pericolo\\\

    R.U.P. / Responsabile dei Lavori & Vigila, controlla e verifica l’applicazione del P.S.C.\\
    & Sovrintende la sicurezza del cantiere\\
    Datore di Lavoro dell'impresa esecutrice & Redige il P.O.S.\\
    \bottomrule
    \end{tabular}`

    Grazie mille
    F.

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


        Puoi semplicemente usare un corpo più piccolo,
        oppure usare \resizebox{\columnwidth}
        (che richiede il pacchetto graphics)

        m

      • #100464
        Up
        0
        Down
        ::


        Non c’è niente da fare: più passa il tempo, più mi rendo conto di essere vecchio… Ai miei tempi, un problema del genere l’avremmo risolto per le vie brevi:
        `
        Testo che precede la tabella: lo faccio bello lungo, cos\`{\i} si riesce a
        capire qual \`{e} la larghezza delle righe.

        % E` importante usare \centerline{…} _tra_ i capoversi

        \medskip % o \bigskip, o \medbreak…
        \centerline{%
        \begin{tabular}{|c|c|}
        \hline % (;-)
        Contro tutte le raccomandazioni, usiamo filetti verticali!
        &
        (Cos\`{\i} si visualizzano bene le celle.) \\
        \hline
        \end{tabular}%
        }
        \medbreak % o \medskip, ecc.; qui forse \medbreak e` meglio

        Testo che segue la tabella.
        `
        La vecchia “\centerline” del plain TeX, con “\hss” a entrambe le estremità! Ma oggi, per qualsiasi cosa si cita un pacchetto… 🙂 Però, in fondo, è giusto così: i mezzi artigianali ormai appartengono al passato, ci sono un sacco di interazioni e di problemi di compatibilità che artigianalmente non si riescono più a controllare. Per esempio, è sempre la stessa cosa dire “\hsize” o “\columnwidth”? E poi, anche la velocità di compilazione, rispetto ai miei tempi, è centuplicata, per non parlare della capacità di memoria. Provo ancora un vago senso di vertigine quando vedo documenti che, come se niente fosse, iniziano caricando venti pacchetti, ciascuno dei quali Richiede Altri Pacchetti, e così via. Mi torna in mente il mio Macintosh Classic II del ‘92, con processore 68030, 4 MiB di RAM (espansi a otto), OzTeX 1.qualcosa, che ci metteva una mezz’oretta a compilare la mia tesi di dottorato, caricando 5 o 6 pacchetti compreso il mio gustutilities.sty…

        Perdonate lo sdilinquimento nostalgico. 😥 Sono andato fuori tema, non ne parlerò più. 🙂

        Ciao.


        Gustavo

      • #100465
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Gustavo, spesso divento nostalgico anch’io, ma poi ho imparato che ci sono delle cose che con Plain TeX vanno bene e con LaTeX sono sconsigliate. Una è \centerline perche è un comando verticale e si può usare solo in modo verticale. se non si è in modo verticale lo forza e la riga dopo comincia un nuovo capoverso. (non è esatto ma rende l’idea). Se uno sta attento si possono fare le cose bene, ma come vedi oltre a \centerline hai dovuto mettere anche degli skip veritcali.

          Una tabella non numerata centrata in display simette usando l’ambiente center che provvede al centraggio e agli spazi in modo coerente conil resto del testo.

          Tutto sta a vedere se la tabella non è troppo larga da sforare la giustezza; nel qual caso bisogna mettere le amni sulla tabella. Io non ho provato a comporre quella che ha allegato @Fascio, ma direi che sia su quella che bisogna intervenire; se poi non bastasse basterebbe mettere quella tabella dentro l’argomento di \makebox[\textwidth]{…} che fa più o meno le stesse cose di \centerline, ma meglio.

        • #100466
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            `% !TEX encoding = UTF-8 Unicode
            % !TEX TS-program = pdflatex
            \documentclass[11pt]{article}
            \usepackage[T1]{fontenc}
            \usepackage{lmodern}
            \usepackage[italian]{babel}
            \usepackage[utf8]{inputenc}
            \usepackage{booktabs}

            \begin{document}
            \hrule
            \bigskip

            \begin{center}
            \begin{tabular}{lp{0.5\textwidth}}
            \toprule
            Figura & Ruoli e Responsabilità\\
            \midrule
            C.S.P. / C.S.E. & Redige P.S.C.\\
            & Predispone il fascicolo\\
            & Verifica applicazione P.S.C.\\
            & Verifica idoneità P.O.S.\\
            & Organizza coordinamento e cooperazione del cantiere\\
            & Verifica attuazione di quanto previsto negli accordi tra parti sociali\\
            & Segnala e propone sospensioni lavori\\
            & Sospende lavori in caso di grave e imminente pericolo\\
            \multicolumn1{p{0.4\textwidth}}{R.U.P. / Responsabile dei Lavori} & Vigila, controlla e verifica l’applicazione del P.S.C.\\
            & Sovrintende la sicurezza del cantiere\\
            \multicolumn1{p{0.4\textwidth}}{Datore di Lavoro dell'impresa esecutrice} & Redige il P.O.S.\\
            \bottomrule
            \end{tabular}
            \end{center}
            \end{document}`

          • #100467
            Up
            0
            Down
            ::

            OldClaudio” post=100178Gustavo, spesso divento nostalgico anch’io, ma poi ho imparato che ci sono delle cose che con Plain TeX vanno bene e con LaTeX sono sconsigliate.

            D’accordissimo: in generale è del tutto sconsigliabile mischiare LaTeX e plain TeX.

            OldClaudio” post=100178Una è \centerline perche è un comando verticale e si può usare solo in modo verticale. se non si è in modo verticale lo forza e la riga dopo comincia un nuovo capoverso. (non è esatto ma rende l’idea).

            Eh, è ancora peggio di così: completamente espanso, “\centerline” si riduce a`\hbox to\hsize {\hss #1\hss}`(nota: nessun “\par” prima di “\hbox”), quindi esso non provoca l’abbandono del modo verticale, ma inserisce una «scatola» di larghezza “\textwidth” nel bel mezzo de (la lista orizzontale in cui si va accumulando il contentenuto de) il capoverso; molto raramente questa scatola avrà punti di cesura praticabili sia immediatamente prima che immediatamente dopo, e quasi sempre il risultato sarà una «overfull \hbox».

            OldClaudio” post=100178Se uno sta attento si possono fare le cose bene, ma come vedi oltre a \centerline hai dovuto mettere anche degli skip veritcali.

            Certo, e stare bene attento ai “%” in fin di riga… 🙂

            OldClaudio” post=100178Una tabella non numerata centrata in display simette usando l’ambiente center che provvede al centraggio e agli spazi in modo coerente conil resto del testo.

            Qui è @Fascio («Fascio»?! Sarà nel senso della coomologia dei…) che non è chiarissimo su cosa vuole ottenere. Poiché dici — mi rivolgo ora direttamente @Fascio — che la tabella esce dai margini del testo, ma non della pagina, io ho interpretato la cosa nel senso che vuoi far debordare la tabella dai margini del testo, in modo che debordi della stessa distanza da ambo i lati. Con l’ambiente “center” si ottiene invece una «overfull \hbox» e la tabella deborda solo a destra (se lo desideri, le ragioni TeXniche dettagliate di ciò possono facilmente essere spiegate: in sintesi, dipendono dal fatto che “center” usa comunque il costruttore di capoversi, il che preclude l’impiego di colla infinitamente accorciabile). L’interpretazione di @Samiel è invece che tu voglia “schiacciare” la tabella per farla rientrare nei margini. Potresti spiegare meglio cosa vorresti ottenere, esattamente?

            OldClaudio” post=100178Tutto sta a vedere se la tabella non è troppo larga da sforare la giustezza; nel qual caso […] basterebbe mettere quella tabella dentro l’argomento di \makebox[\textwidth]{…} che fa più o meno le stesse cose di \centerline, ma meglio.

            …però sempre ricordandosi di terminare il capoverso e, verosimilmente, di inserire un po’ di spaziatura verticale.

            Un’ultima cosa per quanto riguarda il confronto tra «antichi» e «moderni»: bisogna ricordare che, dopo tutto, “\resizebox” era già descritta nel libro di Lamport del ‘94… 🙂

            Ciao.


            Gustavo

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

        Go to top