Titolo su più righe con filetti

  • Creatore
    Topic
  • #71907
    robitex
    Amministratore del forum
      Up
      0
      Down
      ::


      Ciao.
      Non sono riuscito a trovare una soluzione elegante per realizzare un titolo di frontespizio per una relazione tecnica, costituito da più righe centrate con un filetto superiore ed uno inferiore della larghezza variabile delle righe del titolo stesse.

      Il primo tentativo si basa su \vbox ed \hbox ed è :
      `\def\titlinei{\Large
      Ristrutturazione dell'edificio residenziale}
      \def\titlineii{\Large
      sito nel Comune di \jobcomune{} in località \joblocalita,}
      \def\titlineiii{\Large
      \jobindirizzo}
      \def\titlineiv{\Large\bigskip
      Committente: \clienttitolo{} \clientnome}
      %
      \newbox\tb
      \setbox\tb=\vbox{\hbox{\titlinei}\hbox{\titlineii}\hbox{\titlineiii}\hbox{\titlineiv}}
      \newdimen\dtb
      \dtb=\wd\tb
      %
      \newcommand{\titlebox}[1][20pt]{%
      \begin{center}
      \advance \dtb by #1
      \rule{\dtb}{0.6pt}

      \titlinei

      \titlineii

      \titlineiii

      \titlineiv

      \rule[6pt]{\dtb}{0.6pt}
      \end{center}
      }`

      Il secondo tentativo è questo:
      `\newbox\ttt
      \setbox\ttt=\hbox{%
      \begin{tabular}{c}
      \Large Ristrutturazione dell'edificio residenziale\\
      \Large sito nel Comune di \jobcomune{} in località \joblocalita,\\
      \Large\jobindirizzo\\[3ex]
      \Large Committente: \clienttitolo{} \clientnome
      \end{tabular}}

      \def\titlebox{
      \begin{center}
      \rule{\wd\ttt}{0.6pt}
      \copy\ttt

      \rule[6pt]{\wd\ttt}{0.6pt}
      \end{center}
      }`

      La tabella è un orrore con le spaziature verticali, mentre la prima soluzione è un orrore dovendo definire una macro per ciascuna riga del titolo.
      La soluzione naturale sarebbe questa ma non funziona:
      `
      \newbox\ttt
      \setbox\ttt=\vbox{%
      \Large
      Ristrutturazione dell'edificio residenziale

      sito nel Comune di \jobcomune{} in località \joblocalita,

      \jobindirizzo

      \bigskip
      Committente: \clienttitolo{} \clientnome
      }

      \def\titlebox{
      \begin{center}
      \rule{\wd\ttt}{0.6pt}
      \copy\ttt

      \rule[6pt]{\wd\ttt}{0.6pt}
      \end{center}
      }
      `
      R.

    Visualizzazione 1 filone di risposte
    • Autore
      Risposte
      • #71908
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Questa soluzione con le righe dentro la tabella e \Large fuori della tabella come ti sembra?
          `
          \documentclass{article}
          \usepackage[utf8]{inputenc}
          \usepackage[T1]{fontenc}
          \usepackage[italian]{babel}
          \usepackage{lmodern}
          \usepackage{booktabs}

          \def\jobcomune{Paperopoli}
          \def\joblocalita{Lago}
          \def\clientnome{Paolino Paperino}
          \def\clienttitolo{Pap.}
          \def\jobindirizzo{Via del Lago 313}

          \begin{document}

          \newbox\ttt
          \setbox\ttt=\hbox{\Large%
          \begin{tabular}{c}
          \toprule
          Ristrutturazione dell'edificio residenziale\\
          sito nel Comune di \jobcomune\ in località \joblocalita\\
          \jobindirizzo\\[\bigskipamount]
          Committente: \clienttitolo\ \clientnome\\
          \bottomrule
          \end{tabular}}

          \def\titlebox{
          \begin{center}
          \copy\ttt
          \end{center}
          }

          \titlebox
          \end{document}
          `

          Naturalmente puoi evitare di usare la scatola \ttt e scrivere direttamente la tabella dentro un ambiente center, senza usare nessun comando primitivo tranne \bigskipamount nella spaziatura della tabella.
          `
          \begin{center}
          \Large%
          \begin{tabular}{c}
          \toprule
          Ristrutturazione dell'edificio residenziale\\
          sito nel Comune di \jobcomune{} in località \joblocalita\\
          \jobindirizzo\\[\bigskipamount]
          Committente: \clienttitolo{} \clientnome\\
          \bottomrule
          \end{tabular}
          \end{center}
          `

        • #71909
          robitex
          Amministratore del forum
            Up
            0
            Down
            ::


            Già,
            un semplice \toprule e \bottomrule vero?
            Grazie.

        Visualizzazione 1 filone di risposte
        • Devi essere connesso per rispondere a questo topic.

        Go to top