inserire caselle con la spunta

  • Creatore
    Topic
  • #84893
    Up
    0
    Down
    ::


    salve a tutti. devo inserire una tabella il latex. nelle colonne devo inserire, per ciascun elemento della riga, una casella con un quadratino. devo mettere la spunta dove presente l’elemento e lasciare il quadratino vuoto se l’elemento non è presente.

    esiste un modo in latex per inserire queste “figure” (o comandi)??

    grazie a tutti per l’attenzione! :mrgreen:

Visualizzazione 15 filoni di risposte
  • Autore
    Risposte
    • #84894
      Up
      0
      Down
      ::

      Dr Spencer Reid” post=84268salve a tutti. devo inserire una tabella il latex. nelle colonne devo inserire, per ciascun elemento della riga, una casella con un quadratino. devo mettere la spunta dove presente l’elemento e lasciare il quadratino vuoto se l’elemento non è presente.

      esiste un modo in latex per inserire queste “figure” (o comandi)??

      grazie a tutti per l’attenzione! :mrgreen:

      Apri un terminale e scrivi
      `texdoc symbols`
      poi nel PDF che ti compare cerca ‘check’. Scegli quello che più ti piace e usa il pacchetto indicato. Io metterei solo il segno di spunta senza la casella, lasciando bianco dove l’elemento non è presente.

      Ciao
      Tommaso

    • #84895
      Up
      0
      Down
      ::


      Puoi provare

      `$\text{\rlap{$\checkmark$}}\square$`

      Necessita di amsmath e amssymbol

      Emil

    • #84896
      Up
      0
      Down
      ::

      Dr Spencer Reid” post=84268salve a tutti. devo inserire una tabella il latex. nelle colonne devo inserire, per ciascun elemento della riga, una casella con un quadratino. devo mettere la spunta dove presente l’elemento e lasciare il quadratino vuoto se l’elemento non è presente.

      esiste un modo in latex per inserire queste “figure” (o comandi)??

      grazie a tutti per l’attenzione! :mrgreen:

      Tre possibilità (la prima è una modifica di quella di Emil).
      `\documentclass{article}
      \usepackage{amsmath,amssymb,wasysym}

      \newcommand{\emilcheckbox}{\ensuremath{\leavevmode\rlap{$\checkmark$}\square}}
      \newcommand{\emilnoncheckbox}{\ensuremath{\square}}

      \newcommand{\egcheckbox}{{\ooalign{\hidewidth$\checkmark$\cr$\square$\cr}}}
      \newcommand{\egnoncheckbox}{\ensuremath{\square}}

      \begin{document}
      \emilcheckbox\quad\emilnoncheckbox

      \egcheckbox\quad\egnoncheckbox

      \CheckedBox\quad\Square % wasysym
      \end{document}`
      Ciao
      Enrico

    • #84897
      Up
      0
      Down
      ::


      Ah beh.. se c’è una soluzione con [tt]\ooalign[/tt] mi sento quasi in dovere di dare una soluzione con TikZ 😉 `
      \documentclass{article}
      \usepackage{amssymb,tikz}
      \usetikzlibrary{calc,fadings}

      \def\mark{mark}
      \def\nomark{no mark}

      \begin{tikzfadingfrompicture}[name=tikz]
      \node [text=transparent!5]{$\checkmark$};
      \end{tikzfadingfrompicture}

      \tikzset{box/.style={
      rectangle,
      draw,
      minimum size=0.225cm,
      inner sep=1pt,
      },
      insert mark/.style={
      append after command={%
      \pgfextra{%
      \begin{pgfinterruptpath}
      \shade[path fading=tikz,
      fit fading=false,
      mark style]
      ($(\tikzlastnode.south east)-(0,0.0075)$)
      rectangle ($(\tikzlastnode.north west)-(0,0.0075)$)
      ;%
      \end{pgfinterruptpath}
      }%
      }
      },
      mark style/.style={
      left color=black,
      right color=black
      },
      }

      \newcommand{\marksetstyle}[1]{
      \tikzset{mark style/.append style={#1}}
      }

      \newcommand{\tikzcheckmark}[1][mark]{%
      \def\check{#1}%
      \ifx\check\mark%
      \tikz[baseline=-0.5ex]\node[box,insert mark]{};%
      \fi%
      \ifx\check\nomark%
      \tikz[baseline=-0.5ex]\node[box]{};%
      \fi%
      }

      \begin{document}

      \tikzcheckmark\quad\tikzcheckmark[no mark]\par

      \vspace{1ex}

      \marksetstyle{top color=orange, bottom color=blue!80!cyan}
      \tikzcheckmark\quad\tikzcheckmark[no mark]\par

      \vspace{1ex}

      \marksetstyle{top color=red,bottom color=yellow!60!orange}
      \tikzcheckmark\quad\tikzcheckmark[no mark]

      \vspace{1ex}

      \marksetstyle{left color=green,right color=red,middle color=white}
      \tikzcheckmark\quad\tikzcheckmark[no mark]

      \vspace{1ex}

      \marksetstyle{top color=magenta!60!red,bottom color=blue}
      \tikzcheckmark\quad\tikzcheckmark[no mark]

      \vspace{1ex}

      \marksetstyle{inner color=yellow!60!orange,outer color=magenta!50!blue}
      \tikzcheckmark\quad\tikzcheckmark[no mark]
      \end{document}
      ` Il risultato:

      [attachment=671]Senzanome_2013-04-15.jpg[/attachment]

      Ovviamente è del tutto superfulo usare TikZ per uno scopo del genere, a meno che non si vogliano ottenere quei particolari effetti “sfumando” il colore della spunta.

      Ciao
      Claudio

      Attachments:
      You must be logged in to view attached files.
    • #84898
      Up
      0
      Down
      ::

      cfiandra” post=84295Ah beh.. se c’è una soluzione con [tt]\ooalign[/tt] mi sento quasi in dovere di dare una soluzione con TikZ 😉 `
      \documentclass{article}
      \usepackage{amssymb,tikz}
      \usetikzlibrary{calc,fadings}

      \def\mark{mark}
      \def\nomark{no mark}

      \begin{tikzfadingfrompicture}[name=tikz]
      \node [text=transparent!5]{$\checkmark$};
      \end{tikzfadingfrompicture}

      \tikzset{box/.style={
      rectangle,
      draw,
      minimum size=0.225cm,
      inner sep=1pt,
      },
      insert mark/.style={
      append after command={%
      \pgfextra{%
      \begin{pgfinterruptpath}
      \shade[path fading=tikz,
      fit fading=false,
      mark style]
      ($(\tikzlastnode.south east)-(0,0.0075)$)
      rectangle ($(\tikzlastnode.north west)-(0,0.0075)$)
      ;%
      \end{pgfinterruptpath}
      }%
      }
      },
      mark style/.style={
      left color=black,
      right color=black
      },
      }

      \newcommand{\marksetstyle}[1]{
      \tikzset{mark style/.append style={#1}}
      }

      \newcommand{\tikzcheckmark}[1][mark]{%
      \def\check{#1}%
      \ifx\check\mark%
      \tikz[baseline=-0.5ex]\node[box,insert mark]{};%
      \fi%
      \ifx\check\nomark%
      \tikz[baseline=-0.5ex]\node[box]{};%
      \fi%
      }

      \begin{document}

      \tikzcheckmark\quad\tikzcheckmark[no mark]\par

      \vspace{1ex}

      \marksetstyle{top color=orange, bottom color=blue!80!cyan}
      \tikzcheckmark\quad\tikzcheckmark[no mark]\par

      \vspace{1ex}

      \marksetstyle{top color=red,bottom color=yellow!60!orange}
      \tikzcheckmark\quad\tikzcheckmark[no mark]

      \vspace{1ex}

      \marksetstyle{left color=green,right color=red,middle color=white}
      \tikzcheckmark\quad\tikzcheckmark[no mark]

      \vspace{1ex}

      \marksetstyle{top color=magenta!60!red,bottom color=blue}
      \tikzcheckmark\quad\tikzcheckmark[no mark]

      \vspace{1ex}

      \marksetstyle{inner color=yellow!60!orange,outer color=magenta!50!blue}
      \tikzcheckmark\quad\tikzcheckmark[no mark]
      \end{document}
      ` Il risultato:

      [attachment=671]Senzanome_2013-04-15.jpg[/attachment]

      Ovviamente è del tutto superfulo usare TikZ per uno scopo del genere, a meno che non si vogliano ottenere quei particolari effetti “sfumando” il colore della spunta.

      Ciao
      Claudio

      Una dritta. Invece di [tt]\ifx\check\mark[/tt] puoi dire
      `\ifnum\pdfstrcmp{#1}{mark}=0`
      Se vuoi un codice che non dipenda da pdftex, basta caricare pdftexcmds e puoi usare
      `\ifnum\pdf@strcmp{#1}{mark}=\z@`
      (naturalmente occorre [tt]\makeatletter[/tt]). In questo modo funziona con pdftex, xetex e luatex (grazie al solito Heiko Oberdiek).

      Ciao
      Enrico

    • #84899
      Up
      0
      Down
      ::


      Ma non pensate che per una banale casella con la spunta bastasse guardare un simbolo già pronto? 😉

      Ciao
      Tommaso

    • #84900
      Up
      0
      Down
      ::


      grazie a tutti per le risposte!!

      in effetti ci sono simboli già pronti, anche se non sono il max, ma piuttosto che fare tutti quei casini, mi accontento del simbolo, anche perché è una tabella temporanea 😉

    • #84901
      Up
      0
      Down
      ::


      `$\text{\rlap{$\checkmark$}}\square$`

      Ti sembra complicato?

      Emil

    • #84902
      Up
      0
      Down
      ::

      EmilLask” post=84315`$\text{\rlap{$\checkmark$}}\square$`

      Ti sembra complicato?

      Sì. 🙂

      `$\rlap{$\checkmark$}\square$`

      Ciao
      Enrico

    • #84903
      Up
      0
      Down
      ::


      Sì, decisamente meno complicato.

    • #84904
      Up
      0
      Down
      ::

      egreg9″ post=84302Una dritta. Invece di [tt]\ifx\check\mark[/tt] puoi dire
      `\ifnum\pdfstrcmp{#1}{mark}=0`
      Se vuoi un codice che non dipenda da pdftex, basta caricare pdftexcmds e puoi usare
      `\ifnum\pdf@strcmp{#1}{mark}=\z@`
      (naturalmente occorre [tt]\makeatletter[/tt]). In questo modo funziona con pdftex, xetex e luatex (grazie al solito Heiko Oberdiek).

      Ciao
      Enrico

      Grazie mille per la dritta 🙂 in effetti così si evitano definizioni del tutto inutili.

      illinguista1972″ post=84312Ma non pensate che per una banale casella con la spunta bastasse guardare un simbolo già pronto? 😉

      Ciao
      Tommaso

      Assolutamente no! 😉 E poi spunte con sfumature così belle dove le peschi? 😆

      Altra ipotesi. Metti caso che l’utente voglia avere delle spunte “date a mano”, che non compaiano sempre nella medesima posizione: come si può fare? Beh.. con TikZ è abbastanza facile: `
      \documentclass{article}
      \usepackage{amssymb,tikz,pdftexcmds}

      \tikzset{box/.style={
      minimum size=0.225cm,
      inner sep=1pt,
      },
      insert random mark/.style={
      append after command={%
      node[inner sep=0pt,
      xshift={rand*0.02cm},
      yshift={rand*0.02cm}]
      at (\tikzlastnode.center){$\checkmark$}
      }
      },
      }

      \makeatletter
      \newcommand{\tikzrealcheckmark}[1][mark]{%
      \ifnum\pdf@strcmp{#1}{mark}=\z@%
      \tikz[baseline=-0.5ex]\node[box,insert random mark]{$\square$};%
      \fi%
      \ifnum\pdf@strcmp{#1}{no mark}=\z@%
      \tikz[baseline=-0.5ex]\node[box]{$\square$};%
      \fi%
      }
      \makeatother

      \begin{document}

      \tikzrealcheckmark\quad\tikzrealcheckmark[no mark]\par

      \vspace{1ex}

      \tikzrealcheckmark\quad\tikzrealcheckmark[no mark]\par

      \vspace{1ex}

      \tikzrealcheckmark\quad\tikzrealcheckmark[no mark]\par

      \vspace{1ex}

      \tikzrealcheckmark\quad\tikzrealcheckmark[no mark]\par

      \vspace{1ex}

      \tikzrealcheckmark\quad\tikzrealcheckmark[no mark]\par

      \vspace{1ex}

      \tikzrealcheckmark\quad\tikzrealcheckmark[no mark]\par

      \end{document}
      ` Il risulato è:

      [attachment=673]Senzanome_2013-04-16.jpg[/attachment]

      Per motivi di tempo ho usato direttamente [tt]\square[/tt] per il riquadro e le spunte non sono “sfumate”; sia ora che nel primo esempio riportato il risultato non è ottimale: le spunte sono riprodotte “sotto” il riquadro, anche se con gli esempi solo in nero non si nota. Per renderlo accettabile, ossia riprodurre le spunte “sopra” il riquadro, è necessario del duro lavoro perché: a) è necessario introdurre la libreria [tt]backgrounds[/tt], b) disegnare sopra un [tt]path[/tt] esistente richiede un minimo di cautela (le opzioni – colore ecc..- sono già isolate grazie a [tt]pgfinterruptpath[/tt], ma occorre sostituire tutta la costruzione del nodo [tt]\node[box,…][/tt] con l’equivalente in [tt]\draw[/tt] altrimenti la libreria [tt]backgrounds[/tt] non avrebbe effetto) e c) probabilmente sarebbe molto complicato sfumare e rendere mobile le spunte allo stesso tempo.

      Ciao
      Claudio

      Attachments:
      You must be logged in to view attached files.
    • #84905
      robitex
      Amministratore del forum
        Up
        0
        Down
        ::


        Ma cos’è un concorsone…
        Ci vuole un regolamento…
        R.

      • #84906
        Up
        0
        Down
        ::

        robitex” post=84359Ma cos’è un concorsone…

        In effetti potrebbe essere un’idea 😉

        Ciao
        Claudio

      • #84907
        Up
        0
        Down
        ::


        non per riesumare un vecchio post ma i pacchetti matematici che consigliate aggiornando latex non ci sono più. quindi i codici per i checkmark non sono più validi. ho usato un semplice \surd e ho tagliato la testa al toro :mrgreen:

      • #84908
        Up
        0
        Down
        ::

        Dr Spencer Reid” post=84967non per riesumare un vecchio post ma i pacchetti matematici che consigliate aggiornando latex non ci sono più. quindi i codici per i checkmark non sono più validi. ho usato un semplice \surd e ho tagliato la testa al toro :mrgreen:

        A me suona un po’ strano: uno dei pacchetti che era consigliato è [tt]amssymb[/tt] e fatico proprio a credere che aggiornando sia stato rimosso. Controlla bene di avere “aggiornato” in modo corretto.

        Ciao
        Claudio

      • #84909
        Up
        0
        Down
        ::

        Dr Spencer Reid” post=84967non per riesumare un vecchio post ma i pacchetti matematici che consigliate aggiornando latex non ci sono più. quindi i codici per i checkmark non sono più validi. ho usato un semplice \surd e ho tagliato la testa al toro :mrgreen:

        È un problema noto. Se guardi qui, trovi tutto ciò che c’è da fare:
        http://tex.stackexchange.com/a/96795/4427

        Ciao
        Enrico

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

    Go to top