Linea piè di pagina e note a piè di pagina

  • Creatore
    Topic
  • #59295
    paolo.oliveri
    Partecipante
      Up
      0
      Down
      ::


      Buongiorno,
      innanzitutto ringrazio tutti gli esperti perché, pur essendo il mio primo messaggio, sono riuscito a risolvere praticamente tutti i miei problemi andando a leggere questo fantastico forum.
      ora però credo di avere un problema alquanto più complesso e non so come risolverlo.
      Sto scrivendo un documento sfruttando la classe memoir, e la mia idea era creare la seguente programmazione del piè di pagina:
      Per ogni pagina, se non sono presenti note a piè di pagina, allora metto una linea orizzontale di un punto;
      se invece sono presenti delle note, allora faccio in modo che venga stampata solamente la riga che le note a piè di pagina stampano da sé (che peraltro ho modificato facendo in modo che sia lunga tutto il box di scrittura e larga un punto).
      Mi immagino che ci voglia un qualche tipo di interazione ma non sono riuscito a capire quale, e in più non sono ancora abbastanza bravo ad usare i clicli di TeX. Ho guardato un bel po’ in giro ma non ho trovato niente del genere. Qualcuno ha idee?
      Grazie mille! 😉

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

        Buongiorno,
        innanzitutto ringrazio tutti gli esperti perché, pur essendo il mio primo messaggio, sono riuscito a risolvere praticamente tutti i miei problemi andando a leggere questo fantastico forum.
        ora però credo di avere un problema alquanto più complesso e non so come risolverlo.
        Sto scrivendo un documento sfruttando la classe memoir, e la mia idea era creare la seguente programmazione del piè di pagina:
        Per ogni pagina, se non sono presenti note a piè di pagina, allora metto una linea orizzontale di un punto;
        se invece sono presenti delle note, allora faccio in modo che venga stampata solamente la riga che le note a piè di pagina stampano da sé (che peraltro ho modificato facendo in modo che sia lunga tutto il box di scrittura e larga un punto).
        Mi immagino che ci voglia un qualche tipo di interazione ma non sono riuscito a capire quale, e in più non sono ancora abbastanza bravo ad usare i clicli di TeX. Ho guardato un bel po’ in giro ma non ho trovato niente del genere. Qualcuno ha idee?
        Grazie mille! 😉

        Benvenuto! Forse noterai che ho corretto tutti i pié in piè.

        Usare pesanti filetti di separazione non mi sembra una grande idea. Quello che desideri può essere ottenuto con
        `\usepackage{afterpage}
        \newif\iftheresafootnote
        \makefootrule{headings}
        {\textwidth}
        {\footruleheight} %%% questo è il valore importante
        {.5\normalbaselineskip}
        \renewcommand{\footruleheight}{%
        \iftheresafootnote 0pt\else 1pt\fi}
        \makeatletter
        \renewcommand{\@makefntext}[1]{\makefootmark \set@@footnote #1}
        \newcommand{\set@@footnote}{%
        \global\theresafootnotetrue\afterpage{\global\theresafootnotefalse}}
        \makeatother`
        Non so però come tu abbia modificato il filetto al piede. Fammi sapere. E rinuncia a tale sconcezza. 🙂

        Ciao
        Enrico

      • #59297
        paolo.oliveri
        Partecipante
          Up
          0
          Down
          ::


          Ciao Enrico,
          sì scusa, a volte parlo come mangio, ma come si suol dire, sono un matematico…:)
          Ho smanettato un po’, e c’era un errore nel codice che mi hai scritto: andando a modificare direttamente mettendo la condizione nel \footruleheight succedeva che il filetto di separazione veniva messo ovunque, compreso frontespizio eccetera ed il comando:
          `
          \makefootrule{}{\textwidth}{\footruleheight}{\footruleskip}
          `
          non aveva alcun effetto, in quanto era proprio la modifica del comando di spessore del filetto che modificava tutto. Ho pensato che questo accadesse perché il comando modificato è troppo a basso livello. Allora mi sono inventato un nuovo comando che lascia stare in pace il precedente, e h risolto così:
          `
          \newif\iftheresafootnote
          \newcommand{\heightoffootrule}{
          \iftheresafootnote 0pt
          \else 1pt
          \fi}
          \makeatletter
          \renewcommand{\@makefntext}[1]{\makefootmark \set@@footnote #1}
          \newcommand{\set@@footnote}{\global\theresafootnotetrue\afterpage{\global\theresafootnotefalse}}
          \makeatother
          `
          Per quanto riguarda il filetto delle note a piè di pagina ho modificato il filetto così:
          `
          \renewcommand*{\footnoterule}{
          \kern -1pt
          \hrule width \columnwidth height 1pt
          \kern 1pt}
          `
          Ciao,
          Paolo

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

      Go to top▲