Ripartire le voci di un elenco con graffe laterali

  • Creatore
    Topic
  • #22308
    lorenzo.pantieri
    Partecipante
      Up
      0
      Down
      ::


      Il titolo e’ brutto, ma spiegarsi qui non e’ facilissimo.

      Ho un elenco ottenuto con l’ambiente itemize. Vorrei ripartire le voci dell’elenco, abbracciandole con tre graffe laterali, a destra delle voci. Le graffe devono essere incolonnate una sotto l’altra. A destra di ogni graffa, ci deve essere un breve testo.

      Non ci avete capito niente? Beh, colpa mia! Tuttavia l’effetto che voglio riprodurre e’ esattamente quello che si trova sull’articolo di Mori sulla redazione di una tesi di laurea (sara’ la centesima volta che lo cito, spero che a Lapo non fischino le orecchie!): l’elenco e’ quello delle sezioni della tesi, ripartite in frontmatter, mainmatter e backmatter.

      Non lo chiedo direttamente a lui perche’ penso che la cosa possa essere interessante e utile anche per altri!

      Grazie,
      L.

    Visualizzazione 8 filoni di risposte
    • Autore
      Risposte
      • #22309
        DMW
          Up
          0
          Down
          ::


          Soluzione già data in un altro topic
          http://www.guit.sssup.it/phpbb/viewtopic.php?t=3058
          Se non ricordo male l’ho presa da un newsgroup.
          `\documentclass[12pt]{article}
          \newsavebox{\tbox}
          \begin{document}
          \begin{lrbox}{\tbox}
          \begin{minipage}[c]{.65\textwidth}\raggedright
          \begin{itemize}
          \item uno
          \item due
          \item tre
          \item quattro
          \item cinque
          \item sei
          \item sette
          \item otto
          \item nove
          \end{itemize}
          \end{minipage}
          \end{lrbox}
          \parbox{.65\textwidth}{
          \usebox{\tbox}
          }%
          \parbox{.3\textwidth}{%
          $\left.\rule{0pt}{.44\ht\tbox}\right\}$ Parametri\\[1ex]
          $\left.\rule{0pt}{.56\ht\tbox}\right\}$ Variabili%
          }
          \end{document}`
          Le altezze delle parentesi vanno modificate cambiando i coefficienti di fronte a \ht\tbox.

          Vediamo se Lapo ha usato una soluzione diversa.

          Ciao

          Andrea

        • #22310
          lorenzo.pantieri
          Partecipante
            Up
            0
            Down
            ::


            Grazie mille, Andrea!

            A presto,
            L.

          • #22311
            Up
            0
            Down
            ::


            Non ho il mio codice sottomano ma avevo usato lo stesso sistema.

          • #22312
            lorenzo.pantieri
            Partecipante
              Up
              0
              Down
              ::


              Dunque ragazzi, mi sono spremuto un po’, ma il meglio che ho trovato e’ questo codice:
              `\newsavebox{\tbox}
              \begin{lrbox}{\tbox}
              \begin{minipage}[c]{.45\textwidth}\raggedright
              \begin{itemize}
              \item Il frontespizio¡
              \item La dedica*¡
              \item Il sommario*¡
              \item I ringraziamenti*¡
              \item Gli indici¡
              \item Gli acronimi e le notazioni*
              \item La prefazione*
              \item I capitoli interni
              \item Le appendici*
              \item La bibliografia
              \item L'indice analitico*
              \end{itemize}
              \end{minipage}
              \end{lrbox}
              \parbox{.45\textwidth}{
              \usebox{\tbox}
              }%
              \parbox{.55\textwidth}{%
              $\left.\rule{0pt}{.64\ht\tbox}\right\}$ Materiale iniziale\\[2ex]
              $\left.\rule{0pt}{.18\ht\tbox}\right\}$ Materiale principale\\[1ex]
              $\left.\rule{0pt}{.18\ht\tbox}\right\}$ Materiale finale%
              } `
              Il risultato e’ forse accettabile, ma non e’ perfetto: le parentesi graffe non sono perfettamente centrate rispetto alle voci che devono abbracciare.

              Il risultato di Lapo era invece perfetto.

              Se fosse possibile, avrei ancora bisogno di qualche vostro suggerimento…

              Grazie mille,
              L.

            • #22313
              Up
              0
              Down
              ::


              Per un dimensionamento (esiste in italiano?) più preciso della graffa prova a dare un’occhiata a quello che mi ha suggerito Enrico in questo topic, fra l’altro ispirato proprio dal tuo. In questo caso si tratta di tabelle ma non vedo perché non si possa adattare ad altri casi.

              Ciao
              Matteo

            • #22314
              lorenzo.pantieri
              Partecipante
                Up
                0
                Down
                ::


                Purtroppo adattare al mio caso quel codice (certo perfetto) va ben al di la’ delle mia capacita’ TeXniche…

                Grazie comunque,
                L.

              • #22315
                Up
                0
                Down
                ::

                Dunque ragazzi, mi sono spremuto un po’, ma il meglio che ho trovato e’ questo codice:
                `\newsavebox{\tbox}
                \begin{lrbox}{\tbox}
                \begin{minipage}[c]{.45\textwidth}\raggedright
                \begin{itemize}
                \item Il frontespizio¡
                \item La dedica*¡
                \item Il sommario*¡
                \item I ringraziamenti*¡
                \item Gli indici¡
                \item Gli acronimi e le notazioni*
                \item La prefazione*
                \item I capitoli interni
                \item Le appendici*
                \item La bibliografia
                \item L'indice analitico*
                \end{itemize}
                \end{minipage}
                \end{lrbox}
                \parbox{.45\textwidth}{
                \usebox{\tbox}
                }%
                \parbox{.55\textwidth}{%
                $\left.\rule{0pt}{.64\ht\tbox}\right\}$ Materiale iniziale\\[2ex]
                $\left.\rule{0pt}{.18\ht\tbox}\right\}$ Materiale principale\\[1ex]
                $\left.\rule{0pt}{.18\ht\tbox}\right\}$ Materiale finale%
                } `
                Il risultato e’ forse accettabile, ma non e’ perfetto: le parentesi graffe non sono perfettamente centrate rispetto alle voci che devono abbracciare.

                Il risultato di Lapo era invece perfetto.

                Se fosse possibile, avrei ancora bisogno di qualche vostro suggerimento…

                No, il risultato di Lapo non era perfetto. Se guardi bene, le spaziature fra le righe non sono uniformi.
                `\newbox\bracedbox
                \newdimen\bracedboxht
                \newenvironment{braced}[1][l]
                {\setbox\bracedbox=\hbox\bgroup\begin{tabular}
                {@{}#1@{}}}
                {\end{tabular}\egroup
                \global\bracedboxht=\ht\bracedbox
                \global\advance\bracedboxht\dp\bracedbox
                \global\advance\bracedboxht-6pt
                \box\bracedbox}

                \newcommand\embrace[1]{%
                $\left\rbrace\vcenter{\hbox{\vrule width 0pt height\bracedboxht}}\right.$\ #1}
                \newcommand{\bitem}{\makebox[\leftmargini][r]{\textbullet\ }}`
                Queste sono le macro principali. Puoi inserire il tuo diagramma così:
                `\begin{flushleft}\linespread{1.5}\normalsize
                \begin{tabular}{@{}ll@{}}
                \begin{braced}
                \bitem Il frontespizio\\
                \bitem La dedica*\\
                \bitem Il sommario*\\
                \bitem I ringraziamenti*\\
                \bitem Gli indici\\
                \bitem Gli acronimi e le notazioni*\\
                \bitem La prefazione*
                \end{braced} & \embrace{Materiale iniziale}\\
                \begin{braced}
                \bitem I capitoli interni\\
                \bitem Le appendici*
                \end{braced} & \embrace{Materiale principale}\\
                \begin{braced}
                \bitem La bibliografia\\
                \bitem L'indice analitico*
                \end{braced} & \embrace{Materiale finale}
                \end{tabular}
                \end{flushleft}`
                Il codice non è elegante, lo so, ma ogni tanto occorre qualcosa di basso livello.

                Ciao
                Enrico

              • #22316
                DMW
                  Up
                  0
                  Down
                  ::


                  Ho fatto un po’ di esperimenti e metto anche questa soluzione. Comunque quella data dal Prof. è un po’ meglio, ma la metto per completezza. Caricare i pacchetti
                  `\usepackage{multirow,bigdelim}`
                  e poi scrivere
                  `\begin{flushleft}\linespread{1.5}\normalsize
                  \begin{tabular}{@{}ll@{}}
                  \bitem Il frontespizio&\rdelim\rbrace{7}{3cm}[Materiale iniziale]\\
                  \bitem La dedica*\\
                  \bitem Il sommario*\\
                  \bitem I ringraziamenti*\\
                  \bitem Gli indici\\
                  \bitem Gli acronimi e le notazioni*\\
                  \bitem La prefazione*\\
                  \bitem I capitoli interni&\rdelim\rbrace{2}{3cm}[Materiale principale]\\
                  \bitem Le appendici*\\
                  \bitem La bibliografia&\rdelim\rbrace{2}{3cm}[Materiale finale]\\
                  \bitem L'indice analitico*\\
                  \end{tabular}
                  \end{flushleft}`

                  Le graffe sono attaccate e il risultato è gradevole.

                  Ciao

                  Andrea

                • #22317
                  lorenzo.pantieri
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    Carissimi Andrea ed Enrico, non so davvero come ringraziarvi per il vostro impagabile aiuto…

                    Il codice di Enrico e’, semplicemente, perfetto.

                    A presto e grazie ancora,
                    Lorenzo

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

                Go to top