Interazione tra \hline e \rowcolors

  • Creatore
    Topic
  • #113602
    dario
    Partecipante
      Up
      0
      Down
      ::


      Risolto un problema se ne fa un altro.

      Ho un file con un tot di tabelle così strutturate:

      `
      \hline
      Riga di intestazione
      \hline
      Riga 1 di contenuto
      Riga 2 di contenuto

      \hline
      `

      in modo da avere righe orizzontali ai due bordi della tabella e tra intestazione e contenuto. Fin qui tutto ok. In un secondo momento, volendo colorare in modo alternato le righe, ho aggiunto il parametro

      al pacchetto xcolor e all’inizio del documento ho scritto

      \rowcolors{2}{gray!10}{white}

      Volendo poi avere l’intestazione sempre bianca, ho scritto in ogni tabella, tra il primo \hline e la riga dell’intestazione,

      \rowcolor{white}

      (so che questo si potrebbe fare anche con un contatore, ma per il momento ho fatto a mano)

      Ora, il punto è che il comportamento dei due \hline ai bordi dell’intestazione è sostanzialmente casuale (o ha un comportamento a me ignoto). Ad esempio, nella prima tabella c’è solo l’\hline di sopra, nella seconda tabella solo quello sotto all’intestazione, nella terza né l’uno né l’altro.

      Ho pensato che i colori di sfondo delle righe potessero influenzare in qualche modo i colori degli \hline, ma anche provando a forzare \arrayrulecolor{black}\hline non ottengo il risultato sperato.

      Ecco un piccolo esempio compilabile:

      `
      \documentclass[a3paper, 12pt]{article}
      \usepackage[latin1]{inputenc}
      \usepackage[T1]{fontenc}
      \usepackage{eulervm}

      \usepackage{lmodern}
      \usepackage{textcomp}
      \usepackage[italian, english]{babel}
      \usepackage{amsmath, amssymb, amscd, amsthm, amsfonts, mathrsfs, braket,imakeidx, enumitem}
      \usepackage{multicol}
      \usepackage[landscape,top=2cm,bottom=2cm,right=2.5cm,left=2cm]{geometry}
      \usepackage{longtable}

      \usepackage{totalmathematics}

      \usepackage{hyperref}
      \usepackage[labelfont={bf},size={footnotesize}]{caption}
      \usepackage[table]{xcolor}
      \usepackage{titlesec}

      \begin{document}

      \rowcolors{2}{gray!10}{white}

      Testo…

      Tabella 1

      \begin{longtable}{p{0.2\textwidth} p{0.1\textwidth} p{0.25\textwidth} p{0.25\textwidth} p{0.2\textwidth}}

      \hline
      \rowcolor{white}
      \textsc{Titolo1} & \textsc{Titolo2} & \textsc{Titolo3} & \textsc{Titolo4} & \textsc{Titolo5} \\
      \arrayrulecolor{black}\hline
      \endhead

      \textbf{Esempio} & di & prima & riga & \\

      \hline
      \end{longtable}

      Tabella 2

      \begin{longtable}{p{0.2\textwidth} p{0.1\textwidth} p{0.2\textwidth} p{0.3\textwidth} p{0.2\textwidth}}
      \hline
      \rowcolor{white}
      \textsc{Titolo1} & \textsc{Titolo2} & \textsc{Titolo3} & \textsc{Titolo4} & \textsc{Titolo5} \\
      \arrayrulecolor{black}\hline
      \endhead

      \textbf{Esempio} & di & un'altra & riga & \\

      \hline
      \end{longtable}

      \end{document}

      `

    Visualizzazione 0 filoni di risposte
    • Autore
      Risposte
      • #113603
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Onestamente non ho capito che cosa vuoi fare; Suppongo che tu voglia colorare di grigio alternativamente le varie righe, conservando i filetti orizzontali, ma lasciando bianca la riga delle intestazioni.
          Se è così non devi usare \rawcolor dentro le tabelle serve a poco, ma serve scambiare di posto nel comando \rowcolors il bianco e il grigio.

          Se aggiungi altre righe senza \hline dopo la riga di “Esempio & di & un’altra & riga \\” vedi benissimo che i filett specificati con \hline restano al loro posto.

          Tuttavia Sarebbe meglio che usassi il pacchetto booktabs, in modo che usi solo \toprule sora la riga di intestazione, \midrule sotto al riga di intestazione, e \bottomrule alla fine della tabella; documentazione texdoc booktabs.

          Il tuo esempio, comunque non è compilabile perché il pacchetto totalmathematics non fa parte delel distribuzioni standard del sistema TeX. Non escluderei che i difetti che osservi dipendano da quel pacchetto to personale o avuto in “regalo” da altri, magari la rete. È vero che “a caval donato non si guarda in bocca”, ma prima di usarlo devi sapere se è idoneo e compatibile con gli altri elementi del tuo documento.

          Devo osservare anche che la lunga lista di pacchetti che carichi con un solo comando \usepackage, operazione più che lecita, contie il solito errore di caricare amsfonts dopo aver caricato amssymb; abbiamo gia scritto millanta volte in questo forum che amssymb caricalui stesso amsfonts e ne rende usabii i singoli caratteri. Quindi non c’è nessun bisogno di caricarlo.
          Carichi amscd; sei sicuro di voler disegnare diagrammi commutativi? Altri software lo fanno molto meglio, per esempio TikZ.
          I font invocati con il pacchetto mathrsfs sono dei bei font calligrafici inclinati; ma lo sono troppo per cui non ricevono in modo appropriato eventuali esponenti; per esempio la trasformata inversa di Laplace o quella di Fourier vengono malissimo. Tra l’altro confliggono con i font Euler Virtual Math che invochi con il pacchetto eulervm. Però contengono i font Euler calligrafici meno inclinati di quelli di Ralph Smith.
          Se scrivi della matematica delle grandezze, i font Euler non sono indicati perché le sue lettere non sono sufficientemente inclinate da distinguerle facilmente dal tondo.
          Spero che tu abbia caricato braket e enumitem a ragione veduta.
          Spero anceh che tu abbia specificato il formato della carta A3 a ragion veduta componendovi detro in modalità landscape; quindi lavorando con un folio alto 293mm e largo 420mm.

          Infine suppongo che tu abbia letto la documentazione di longtable che richiede la didascalia nella prima intestazione, la dichiarazione delle intestazioni dopo la prima; la dichiarazione del piedi di ogni parte di tabella tranne l’ultima e la dichiarazione del piede dell’ultima parte di tabella.

          Forse non guasterebbe, nonostante tu non sia un neofita, se dessi un’occhiata a qualche guida generale tra quelle che si trovano nella sezione Documentazione di questo forum.

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

      Go to top