Colonna invisibile in una tabella

  • Creatore
    Topic
  • #33499
    strolego
    Partecipante
      Up
      0
      Down
      ::


      Vorrei scrivere una tabella con una colonna (in particolare l’ultima) invisibile (se si verificano determinate condizioni)
      Una soluzione è
      `\iftest
      \newcolumntype{C}{>{\color{white}}}
      \else
      \newcolumntype{C}{>{\color{black}}}
      \fi
      \begin{tabular}{l{Cr}}
      a&b\\
      c&d\\
      \end{tabular}`
      ma il testo prodotto nel pdf può essere copiato e incollato e non è più invisibile 🙁

      Quello che vorrei è qualcosa del tipo:
      `\def\cancella#1{\phantom{#1}}
      \newcolumntype{A}{>{\cancella}} `
      che però non funziona.
      Il codice precedente funziona se metto un delimitatore e cambio di conseguenza il testo della tabella (cosa che vorrei evitare) cioè se scrivo
      `\def\cancella#1({\phantom{#1}}
      \newcolumntype{A}{>{\cancella}}
      \begin{tabular}{l{Ar}}
      a&b(\\
      c&d(\\
      \end{tabular}`
      In alternativa potrebbe andarmi bene anche qualcosa come
      `\def\taglia#1{\@gobble}
      \newcolumntype{A}{>{\taglia}} `
      che taglia solo il primo carattere, mentre io ho bisogno che tagli tutto fino a fine riga.

      Qualche suggerimento?
      Grazie e ciao a tutti.

    Visualizzazione 1 filone di risposte
    • Autore
      Risposte
      • #33500
        Up
        0
        Down
        ::

        Vorrei scrivere una tabella con una colonna (in particolare l’ultima) invisibile (se si verificano determinate condizioni)
        Una soluzione è
        `\iftest
        \newcolumntype{C}{>{\color{white}}}
        \else
        \newcolumntype{C}{>{\color{black}}}
        \fi
        \begin{tabular}{l{Cr}}
        a&b\\
        c&d\\
        \end{tabular}`
        ma il testo prodotto nel pdf può essere copiato e incollato e non è più invisibile 🙁

        Quello che vorrei è qualcosa del tipo:
        `\def\cancella#1{\phantom{#1}}
        \newcolumntype{A}{>{\cancella}} `
        che però non funziona.
        Il codice precedente funziona se metto un delimitatore e cambio di conseguenza il testo della tabella (cosa che vorrei evitare) cioè se scrivo
        `\def\cancella#1({\phantom{#1}}
        \newcolumntype{A}{>{\cancella}}
        \begin{tabular}{l{Ar}}
        a&b(\\
        c&d(\\
        \end{tabular}`
        In alternativa potrebbe andarmi bene anche qualcosa come
        `\def\taglia#1{\@gobble}
        \newcolumntype{A}{>{\taglia}} `
        che taglia solo il primo carattere, mentre io ho bisogno che tagli tutto fino a fine riga.

        Qualche suggerimento?

        `\newcolumntype{A}{>{\cancella}l<{\finqui}} \def\cancella#1\finqui{\unskip\phantom{#1}\ignorespaces}` Purtroppo non funziona se sei nell'ultima colonna :( a meno che non usi \cr per terminare ciascuna riga. Ho l'impressione che si possa fare di meglio, ma occorrerebbe entrare in dettagli molto intricati. Ciao Enrico

      • #33501
        strolego
        Partecipante
          Up
          0
          Down
          ::


          Come sempre, grazie Enrico. Almeno mi consola vedere che non riuscivo a risolvere il problema perché sull’ultima colonna non è banale.

          Ciao
          Flavio

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

      Go to top