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

  • Creatore
    Topic
  • #59295
    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
      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