LuaLaTeX e lista font

  • Questo topic ha 11 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 13 anni fa da OldClaudio.
  • Creatore
    Topic
  • #88549
    PM
      Up
      0
      Down
      ::


      Salve, sto provando ad usare LuaLaTeX per vari evitare varie beghe con la codifica dei caratteri e devo dire funziona molto bene. Ho tutta via una domanda, vista la penuria di referenze che, per lo meno, sono riuscito a trovare.

      Riguardo l’uso di

      `
      \setmainfont{}
      `

      ad esempio, vorrei sapere come posso accedere ad una lista dei fonts che possiedo. Ho usato il comando

      `
      mkluatexfontdb
      `

      (come OS uso ArchLinux) ed ho visto che il “database” viene fornito nel file luaotfload-names.lua, tuttavia in questo file riesco solo a leggere i “nomi dei caratteri”. Ad esempio, usando pdflatex ed il pacchetto baskervald ho scoperto che i caratteri venivano caricati da

      `
      \rmdefault}{ybv}
      `

      Ho pensato che facendo semplicemente

      `
      \setmainfont{ybv}
      `

      sarebbe andato tutto liscio, invece no. Sono certo di non aver capito qualcosa. In conclusione la domanda è come faccio per capire la corrispondenza tra caratteri indicati dal comando \rmdefault (et similia) e quelli indicati da \setmainfont? ed in particolare come faccio per selezionare come carattere principale proprio quello del pacchetto baskervald?

      Grazie

    Visualizzazione 10 filoni di risposte
    • Autore
      Risposte
      • #88550
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          I font con XeLaTeX e LuaLaTeX si caricano mediante il pacchetto fontspec.

          Leggine la documentazione con texdoc fonrspec, comando da dare in una finestra comandi, terminal xterm, o come si chiama nel tuo sistema operativo.

          I comandi che riporti per specificare la famiglia di font servono, appunto, per pdfLaTeX, non per LuaLaTeX (o per lo meno, non normalmente).

          Cercati sul tuo disco i ofnt con estensione .otf, che sono gli OpenType Fonts; quelli sono i font da usare con XeLaTeX e LuaLaTeX.

        • #88551
          Up
          0
          Down
          ::

          PM” post=88031Salve, sto provando ad usare LuaLaTeX per vari evitare varie beghe con la codifica dei caratteri e devo dire funziona molto bene. Ho tutta via una domanda, vista la penuria di referenze che, per lo meno, sono riuscito a trovare.

          Riguardo l’uso di

          `
          \setmainfont{}
          `

          ad esempio, vorrei sapere come posso accedere ad una lista dei fonts che possiedo. Ho usato il comando

          `
          mkluatexfontdb
          `

          (come OS uso ArchLinux) ed ho visto che il “database” viene fornito nel file luaotfload-names.lua, tuttavia in questo file riesco solo a leggere i “nomi dei caratteri”. Ad esempio, usando pdflatex ed il pacchetto baskervald ho scoperto che i caratteri venivano caricati da

          `
          \rmdefault}{ybv}
          `

          Ho pensato che facendo semplicemente

          `
          \setmainfont{ybv}
          `

          sarebbe andato tutto liscio, invece no. Sono certo di non aver capito qualcosa. In conclusione la domanda è come faccio per capire la corrispondenza tra caratteri indicati dal comando \rmdefault (et similia) e quelli indicati da \setmainfont? ed in particolare come faccio per selezionare come carattere principale proprio quello del pacchetto baskervald?

          Grazie

          In un terminale da’
          `luaotfload-tool –list=fullname`
          e avrai da leggere per un po’. 😉

          Ciao
          Enrico

        • #88552
          PM
            Up
            0
            Down
            ::


            Salve, vi ringrazio molto, tuttavia il problema persiste. Vi illustro meglio. Dopo diversi tentativi sono riuscito ad ottenere quello che volevo usando il seguente preambolo

            `
            \documentclass[10pt]{article}
            \usepackage[italian]{babel}
            \usepackage[T1]{fontenc}
            \renewcommand{\rmdefault}{ybv}
            `

            Adesso ho seguito i vostri consigli, in particolare dando il comando

            `
            luaotfload-tool –list=fullname
            `

            e cercando la dicitura Baskerville ho trovato un paio di font che, almeno al nome, fossero candidati… li ho provati ad inserire nel comando

            `
            \setmainfont{}
            `

            ma niente… si vede subito che non coincide col carattere “ybv”. C’è modo di ottere proprio quel carattere lì usando comandi appositi di LuaLaTeX?

            Grazie mille

            MP

          • #88553
            franen
            Partecipante
              Up
              0
              Down
              ::


              Non capisco il problema…
              Usi LuaLaTeX, quindi hai accesso ai font che hai installato sul computer.
              Ma per questo devi caricare fontspec, come ti ha indicato Claudio. \setmainfont è proprio un comando di fontspec.
              Quindi scrivendo \setmainfont{baskerville} dovresti poter compilare correttamente. Ovviamente leggi la documentazione di fontspec per i dettagli.
              Fran

            • #88554
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::

                PM” post=88045Salve, vi ringrazio molto, tuttavia il problema persiste. Vi illustro meglio. Dopo diversi tentativi sono riuscito ad ottenere quello che volevo usando il seguente preambolo

                `
                \documentclass[10pt]{article}
                \usepackage[italian]{babel}
                \usepackage[T1]{fontenc}
                \renewcommand{\rmdefault}{ybv}
                `

                Adesso ho seguito i vostri consigli, in particolare dando il comando

                `
                luaotfload-tool –list=fullname
                `

                e cercando la dicitura Baskerville ho trovato un paio di font che, almeno al nome, fossero candidati… li ho provati ad inserire nel comando

                `
                \setmainfont{}
                `

                ma niente… si vede subito che non coincide col carattere “ybv”. C’è modo di ottere proprio quel carattere lì usando comandi appositi di LuaLaTeX?

                Grazie mille

                MP

                Oltre a quello che ti ha detto @franen, tieni presente che con LuaLaTeX non devi usare babel, ma devi usare polyglossia (leggine la documentazione). Non devi usare nessuna specifica per fontenc, perché i font OpenType sono codificati UNICODE e quindi non devi specificare una codifica diversa.

                Se invece vuoi usare pdfLaTeX non puoi usare fontspec, ma devi usare i pacchetti appositi per accedere ai font diversi da quelli standard. Vedo se c’è un pacchetto per usare Baskerville con pdfLaTeX, ma certamente ybv non è il nome del pacchetto, ma il nome, casomai, della famiglia dei font. Ti suggerirei di leggere la guida tematica Font e tipografia, liberamente scaricabile dalla sezione documentazione di questo sito.

                Per tua informazione il pacchetto da caricare è baskervald; leggine la documentazione con il solito comando texdoc baskervald dato da terminale; il pacchetto si può usare solo con pdfLaTeX.

                Per saper di quali font dispone pdfLaTeX (sulla mia macchina, dove è installata una versione completa di TeXLive, ci sono più di 12.000 font disponibili, solo per pdfLaTeX, quindi in formato Adobe Type 1). Non conto i font OpenType a cui si può accedere direttamente solo con XeLaTeX e LuaLaTeX.

                A proposito di installazione completa: la tua distribuzione del sistema TeX è completa? Perché se è una distribuzione TeXLive/Debian è certamente incompleta e piuttosto datata.

              • #88555
                Up
                0
                Down
                ::

                OldClaudio” post=88049Oltre a quello che ti ha detto @franen, tieni presente che con LuaLaTeX non devi usare babel, ma devi usare polyglossia (leggine la documentazione). Non devi usare nessuna specifica per fontenc, perché i font opentype sono codificati UNICODE e quindi non devi specificare una codifica diversa.

                […]

                Polyglossia ha supporto sperimentale per LuaLaTeX, meglio babel, soprattutto nella versione 3.9.

                Ciao
                Enrico

              • #88556
                OldClaudio
                Partecipante
                  Up
                  0
                  Down
                  ::

                  egreg9″ post=88054Polyglossia ha supporto sperimentale per LuaLaTeX, meglio babel, soprattutto nella versione 3.9.

                  Ciao
                  Enrico

                  A me polyglossia non ha dato nessun problema, almeno con l’italiano; forse può darne con la sua interazione con i font dipendenti dalla lingua?

                  Ho avuto, invece, qualche problema con babel 3.9, che ho poi risolto, ma ci ho perso un po’ di tempo; si trattava di una interazione di babel, con \textlatin, e hyperref, ma era una cosa completamente diversa da quella per la quale tu avevi trovato una soluzione.
                  Ciao
                  Claudio

                • #88557
                  PM
                    Up
                    0
                    Down
                    ::


                    Salve, vi ringrazio della discussione e dei consigli, tuttavia, lasciando questioni ancillari da parte (babel / polyglossia) e dichiarando di avere un’istallazione di Texlive delle più recenti, avendo un tempo limitato e quindi non potendo leggere in dettaglio tutte le documentazioni, chedo:

                    “Come faccio, sempre che sia possibile, ad usare detta famiglia di caratteri “ybv” usando fontspec?”

                    Ho provato a caricare fontspec e a mettere

                    `
                    \setmainfont{baskerville}
                    `

                    il risultato è stato

                    `
                    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                    !
                    ! fontspec error: “font-not-found”
                    !
                    ! The font “baskerville” cannot be found.
                    `

                    Mi servirebbe l’istruzione da scrivere nel preambolo. Grazie

                  • #88558
                    Up
                    0
                    Down
                    ::

                    PM” post=88056Salve, vi ringrazio della discussione e dei consigli, tuttavia, lasciando questioni ancillari da parte (babel / polyglossia) e dichiarando di avere un’istallazione di Texlive delle più recenti, avendo un tempo limitato e quindi non potendo leggere in dettaglio tutte le documentazioni, chedo:

                    “Come faccio, sempre che sia possibile, ad usare detta famiglia di caratteri “ybv” usando fontspec?”

                    Ho provato a caricare fontspec e a mettere

                    `
                    \setmainfont{baskerville}
                    `

                    il risultato è stato

                    `
                    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                    !
                    ! fontspec error: “font-not-found”
                    !
                    ! The font “baskerville” cannot be found.
                    `

                    Mi servirebbe l’istruzione da scrivere nel preambolo. Grazie

                    [tt]ybv[/tt] si riferisce certamente a qualcosa che puoi usare con pdfLaTeX. Che io sappia il font Baskervald non è fornito in formato OpenType o TrueType.

                    Quindi fontspec non ti serve e nemmeno LuaLaTeX.

                    `\usepackage{baskervald}`

                    Ciao
                    Enrico

                  • #88559
                    franen
                    Partecipante
                      Up
                      0
                      Down
                      ::

                      PM” post=88056Ho provato a caricare fontspec e a mettere
                      `
                      \setmainfont{baskerville}
                      `
                      il risultato è stato
                      `
                      !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                      !
                      ! fontspec error: “font-not-found”
                      !
                      ! The font “baskerville” cannot be found.
                      `
                      Mi servirebbe l’istruzione da scrivere nel preambolo. Grazie

                      Ma il font Baskerville è installato sul tuo computer con quel nome?
                      Io non lo ho, ma se faccio `luaotfload-tool –list=fullname
                      ` scopro di avere, per esempio, un Segoe Ui.
                      Quindi provo a compilare questo:
                      `\documentclass{article}
                      \usepackage{fontspec}
                      \setmainfont{Segoe UI}
                      \begin{document}
                      Prova
                      \end{document}
                      ` e tutto funziona.

                      Fran

                    • #88560
                      OldClaudio
                      Partecipante
                        Up
                        0
                        Down
                        ::



                        @PM
                        , Enrico ed io ti abbiamo già detto che per usare la famiglia ybv NON defi usare LuaLaTeX.


                        @franen
                        ti ha mostrato come fare per usare fontspec e \setmainfont con un altro font, sottolineando l’importanza di usare il nome giusto del font OpenType, che va scritto esattamente (anche maiuscole e minuscole) come appare nelle proprietà del font e nella lista che hai ottenuto con luaotfload-tools –list=fullname.

                        Sulla mai macchina la famiglia dei font Baskerville si chiama Libre Baskerville; sulla tua non so come possa chiamarsi e può darsi che il nome sia formato da diverse parole separate da spazi e con iniziali maiuscole; “può darsi” indica che la mia è solo un’ipotesi.

                        Il brece documento di Enrico intitolato introxelatex.pdf (da scaricare dalla rete) o la documentazione di fontspec dicono come usare il programma otfinfo per avere tutti i dettagli specifici di un font OpenType. Ma siccome i Baskerville OpenType NON sono parte del sistema TeX, ma sono eventualmente installati insieme al sistema operativo, tu ha una certa disponibilità di font OpenType, dei quali probabilmente io non ne ho nessuna, visto che ho un sistema operativo diverso.

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

                    Go to top