Warning font

  • Creatore
    Topic
  • #90798
    Up
    0
    Down
    ::


    Salve a tutti.

    Sono incorso in un warning compilando con [tt]pdflatex[/tt] il seguente codice
    `
    \documentclass{article}

    \usepackage[T1]{fontenc}
    \usepackage{lmodern,cfr-lm}

    \usepackage{modiagram}

    \begin{document}
    \begin{MOdiagram}[labels,names]
    \atom[A]{left}{2s={;}, 2p={;}}
    \atom{right}{2s={;}, 2p={;}}
    \molecule{2sMO={;},2pMO={;}}
    \EnergyAxis
    \end{MOdiagram}

    \end{document}
    `
    Il warning che ottengo è il seguente
    `
    LaTeX Font Warning: Font shape `LGR/clm2j/m/n' undefined
    (Font) using `LGR/cmr/m/n' instead on input line 24.

    [1

    {/usr/local/texlive/2013/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
    (./xyz.aux)

    LaTeX Font Warning: Some font shapes were not available, defaults substituted.
    `
    L’erroe scompare se rimuovo il comando [tt]\molecule[/tt], la chiave [tt]labels[/tt] dell’ambiente o il pacchetto [tt]cfr-lm[/tt]. Suppongo quindi che il problema sia tra le lettere greche stampate per indicare gli orbitali e il pacchetto di estensione del font latin modern. Ora vorrei sapere se c’è un modo per farli coesistere. Grazie per il vostro aiuto :D.
    Marco

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

      skevin93″ post=90346Salve a tutti.

      Sono incorso in un warning compilando con [tt]pdflatex[/tt] il seguente codice
      `
      \documentclass{article}

      \usepackage[T1]{fontenc}
      \usepackage{lmodern,cfr-lm}

      \usepackage{modiagram}

      \begin{document}
      \begin{MOdiagram}[labels,names]
      \atom[A]{left}{2s={;}, 2p={;}}
      \atom{right}{2s={;}, 2p={;}}
      \molecule{2sMO={;},2pMO={;}}
      \EnergyAxis
      \end{MOdiagram}

      \end{document}
      `
      Il warning che ottengo è il seguente
      `
      LaTeX Font Warning: Font shape `LGR/clm2j/m/n' undefined
      (Font) using `LGR/cmr/m/n' instead on input line 24.

      [1

      {/usr/local/texlive/2013/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
      (./xyz.aux)

      LaTeX Font Warning: Some font shapes were not available, defaults substituted.
      `
      L’erroe scompare se rimuovo il comando [tt]\molecule[/tt], la chiave [tt]labels[/tt] dell’ambiente o il pacchetto [tt]cfr-lm[/tt]. Suppongo quindi che il problema sia tra le lettere greche stampate per indicare gli orbitali e il pacchetto di estensione del font latin modern. Ora vorrei sapere se c’è un modo per farli coesistere. Grazie per il vostro aiuto :D.
      Marco

      È un avviso del tutto innocuo. Se vuoi eliminarlo,
      `\documentclass{article}

      \usepackage[T1]{fontenc}
      \usepackage{lmodern,cfr-lm}

      \usepackage{modiagram}
      \DeclareFontFamily{LGR}{clm2j}{}
      \DeclareFontShape{LGR}{clm2j}{m}{n}{<-> ssub*cmr/m/n}{}

      \begin{document}
      \begin{MOdiagram}[labels,names]
      \atom[A]{left}{2s={;}, 2p={;}}
      \atom{right}{2s={;}, 2p={;}}
      \molecule{2sMO={;},2pMO={;}}
      \EnergyAxis
      \end{MOdiagram}

      \end{document}`
      Ciao
      Enrico

    • #90800
      Up
      0
      Down
      ::


      Se è un avviso innocuo non mi faccio problemi. Grazie per la tempestiva risposta. 😀

      Marco

    • #90801
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Secondo me non è un warning così innocuo.

        il font della famiglia cml2j è disponibile in diverse codifiche, ma non nella codifica del greco LGR; il fatto che te lo sostituisca con il font cmr con codifica LGR va bene solo in un certo senso; il senso è questo: se usi solo i corpi normalmente usati dalle classi di LaTeX, come article, che usano corpi fissi e se per caso chiedessi un corpo di 9,5pt, ti userebbe quello di corpo 9pt oppure quello di 10pt.

        Invece se la sostituzione è fatta con la famiglia lmr in codifica LGR, hai il vantaggio che questa famiglia è continuamente scalabile come lo sono i font cfr-lm.

        Ecco perché io preferirei che usassi la soluzione di Enrico, ma dichiarassi la famiglia lmr, invece della famiglia cmr..

        Piccoli dettagli, che forse non ti portano nessuna differenza sostanziale nella composizione del tuo testo, ma potrebbero esserti utili in altri documenti.

        Ti segnalo anche il pacchettino substitutefont che definisce il comando \substitutefont; caricato quel pacchetto, potresti dare il comando`
        \substitutefont{LGR}{clm2j}{lmr}`che ti esegue tutte le sostituzioni anche per le serie e le forme presenti in quella famiglia. Sostanzialmente fa la stessa cosa delle due righe di Enrico, malo fa per tutte le serie e le forme; magari non ti serve ora, ma potrebbe esserti utile in futuro.

      • #90802
        Up
        0
        Down
        ::


        Anzitutto grazie @OldClaudio per il tuo intervento :D. Ora, il mio documento contiene poche lettere greche in tondo (solo quelle stampate dal pacchetto per gli orbitali molecolari), quindi penso non applicherò la tua soluzione. Ma se in futuro avrò noie con il font, ci vorrà poco ad aggiungere le due righe necessarie che mi consigli 😉

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

    Go to top