Nuovo ambiente per pdfTricks

  • Creatore
    Topic
  • #16194
    Up
    0
    Down
    ::


    Salve a tutti e benvenuti nella seconda puntata della mia tesi 🙂

    Ora sto cercando di generare del codice per un nuovo ambiente.
    > Graph

    questo ambiente mi permettera’ di avere un \begin\end per generare facilemente Grafici all’interno della mia tesi senza aggiungere ogni volta le righe per pdfTricks (che sono tante) e in piu’ di contornare tutto con un ambiente figure per avere Caption e riferimento in tabella Immagini.

    Ho creato tutto il codice in blocco e non funziona:

    `
    \newenvironment{GraphBlock}[4]{%
    \begin{figure}%
    \centering%
    \begin{pdfpic}%
    \psset{unit=0.5cm}%
    \psset{framearc=.3,dash=3pt 6pt}%
    \TeXtoEPS%
    \SpecialCoor%
    \begin{pspicture}(#1)(#2)%
    }{%
    \end{pspicture}%
    \endTeXtoEPS%
    \end{pdfpic}%
    \caption{#3}%
    \label{fig:#4}%
    \end{figure}%
    }
    `

    Ecco un esempio di chiamata al nuovo ambiente:

    `
    \begin{Graph}{-1,-2}{16,2}{Caption}{Label}
    \psarc(0,0){6}{335}{25}
    \rput[tl]{0}(-1,2){Punto 1}
    \pscircle*(0,0){0.5}

    { \psset{linestyle=dashed,dash=3pt 2pt}
    \psarc(15,0){6}{155}{205}
    }
    \rput[tr]{0}(16,2){Punto 2}
    \pscircle*(15,0){0.5}
    \end{Graph}
    `

    Ed ecco cosa TeXlive mi da come output:


    ! Illegal parameter number in definition of \Graph.

    5
    l.140 }
    You meant to type ## instead of #, right?
    Or maybe a } was forgotten somewhere earlier, and things
    are all screwed up? I’m going to assume that you meant ##.
    ! Illegal parameter number in definition of \Graph.

    A me sembra che le parentesi ci siano tutte. Mi sa che ho fatto confusione con i parametri. Non riesco proprio a venirne a capo.

    Grazie in anticipo[/i]

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

      Salve a tutti e benvenuti nella seconda puntata della mia tesi 🙂

      Ora sto cercando di generare del codice per un nuovo ambiente.
      > Graph

      questo ambiente mi permettera’ di avere un \begin\end per generare facilemente Grafici all’interno della mia tesi senza aggiungere ogni volta le righe per pdfTricks (che sono tante) e in piu’ di contornare tutto con un ambiente figure per avere Caption e riferimento in tabella Immagini.

      Ho creato tutto il codice in blocco e non funziona:
      `\newenvironment{GraphBlock}[4]{%
      \begin{figure}%
      \centering%
      \begin{pdfpic}%
      \psset{unit=0.5cm}%
      \psset{framearc=.3,dash=3pt 6pt}%
      \TeXtoEPS%
      \SpecialCoor%
      \begin{pspicture}(#1)(#2)%
      }{%
      \end{pspicture}%
      \endTeXtoEPS%
      \end{pdfpic}%
      \caption{#3}%
      \label{fig:#4}%
      \end{figure}%
      }`
      Ecco un esempio di chiamata al nuovo ambiente:
      `\begin{Graph}{-1,-2}{16,2}{Caption}{Label}
      \psarc(0,0){6}{335}{25}
      \rput[tl]{0}(-1,2){Punto 1}
      \pscircle*(0,0){0.5}

      { \psset{linestyle=dashed,dash=3pt 2pt}
      \psarc(15,0){6}{155}{205}
      }
      \rput[tr]{0}(16,2){Punto 2}
      \pscircle*(15,0){0.5}
      \end{Graph}`
      Ed ecco cosa TeXlive mi da come output:

      ! Illegal parameter number in definition of \Graph.

      5
      l.140 }
      You meant to type ## instead of #, right?
      Or maybe a } was forgotten somewhere earlier, and things
      are all screwed up? I’m going to assume that you meant ##.
      ! Illegal parameter number in definition of \Graph.

      A me sembra che le parentesi ci siano tutte. Mi sa che ho fatto confusione con i parametri. Non riesco proprio a venirne a capo.

      Problema già trattato: non puoi mettere i parametri nel terzo argomento di \newenvironment. Si può risolvere in altro modo, ma ti consiglio di limitarti a creare un “wrap” all’ambiente interno:
      `\newenvironment{GraphBlock}[2]{%
      \begin{pdfpic}
      \psset{unit=0.5cm}
      \psset{framearc=.3,dash=3pt 6pt}
      \TeXtoEPS
      \SpecialCoor
      \begin{pspicture}(#1)(#2)
      }{%
      \end{pspicture}
      \endTeXtoEPS
      \end{pdfpic}
      }`
      Non risparmi molto a mettere insieme al resto anche \caption e \label, che invece funzionano bene da marcatori del tuo documento .tex, così come l’ambiente figure. L’idea di creare un contenitore per comandi ripetuti è invece ottima. Tutti quei % non servivano, ne ho lasciati un paio così per simpatia. 🙂

      Ciao
      Enrico

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

Go to top