Problemi coi font gfs

  • Creatore
    Topic
  • #89895
    samiel
    Partecipante
      Up
      0
      Down
      ::


      Leggendo un po’ di documentazione, mi par di capire
      che i font di gfs richiedono comandi differenti a seconda del font.
      Tuttavia ad esempio con
      `\documentclass[a4paper]{article}
      \usepackage[LGR,T1]{fontenc}
      \usepackage[utf8]{inputenc}
      \usepackage[polutonikogreek,italian]{babel}
      \usepackage{gfscomplutum}
      \newcommand{\GR}[1]{\foreignlanguage{greek}{#1}}

      \begin{document}

      \textcomplutum{dokim’h}

      \begin{otherlanguage}{greek}{dokim'h}\end{otherlanguage}

      \GR{>arq'h}

      \textgreek{dokim'h}

      \end{document}`
      vedo solo greco in LGR. Infatti nel log ho

      *****************************************************************
      GFS-Complutum style file by A. Tsolomitis
      *****************************************************************) (./greco.aux
      (/usr/local/texlive/2013/texmf-dist/tex/latex/cbfonts-fd/lgrcmr.fd))

      LaTeX Font Warning: Font shape `T1/complutum/m/n’ undefined
      (Font) using `T1/cmr/m/n’ instead on input line 24.

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

      LaTeX Font Warning: Some font shapes were not available, defaults substituted.

      ){/usr/local/texlive/2013/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc}

      Output written on greco.pdf (1 page, 23063 bytes).

      Casi simili per altri font della GFS… Dove sta l’errore?

      m

    Visualizzazione 6 filoni di risposte
    • Autore
      Risposte
      • #89896
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Secondo me l’errore sta nel fatto che la documentazione dei gfs fonts specifica che epr scrive in uno dei suoi font bisognerebbe usare l’ambinete che il pacchetto definisce, quindi per usare il complutum, bisognrebbe usare l’ambiente [tt]\begin{complutum}…\end{complutum}[/tt].
          Ma se vuoi deifnire i tuoi ocmandi per scrivere in complutum puoi usare quanto segue:`\documentclass[a4paper]{article}
          \usepackage[LGR,T1]{fontenc}
          \usepackage[utf8]{inputenc}
          \usepackage[polutonikogreek,italian]{babel}
          \usepackage{gfscomplutum}

          \newcommand*\complutumfont{\fontencoding{LGR}\fontfamily{complutum}\selectfont}
          \DeclareTextFontCommand{\textcomplutum}{\complutumfont}

          \newcommand{\GR}[1]{\foreignlanguage{greek}{\fontfamily{complutum}\selectfont#1}}
          \begin{document}

          \textcomplutum{dokim’h}

          \begin{otherlanguage}{greek}\fontfamily{complutum}\selectfont
          dokim'h\end{otherlanguage}

          \GR{>arq'h}

          \textgreek{dokim'h}

          \end{document}`
          Da me funziona e tutti gli esempi vengono composti in greco complutum tranne l;ultimo che usa un comando non ridefinito, ma presente nella definiziioni di babel-greek.ldf, e quindi usi il font di default.

          Naturalmente puoi ridefinire iil comando \foreignlanguage{greek}, e l’ambiente otherlanguage{greek}, o definire ambienti e comandi equivalenti, in modo da non dover scrivere ogni volta la selezione della famiglia complutum.

        • #89897
          samiel
          Partecipante
            Up
            0
            Down
            ::


            Veramente nella guida io leggo:

            1
            Introduction
            The font—and hence the package—supports only the LGR encoding and it
            is to be used with the greek option of the Babel package.
            The fonts are loaded with
            “usepackage–gfscomplutum ̋ or “usepackage[default]–gfscomplutum ̋.
            The latter one sets  Complutum as the default document font. The
            former defines the environment complutum and the command “textcomplutum.
            For example, while in Greek language
            “textcomplutum–dokim’h ̋
            produces
            δοκιμή.
            x-height is adjusted so that it matches with the x-height of the gfsneohelenic
            package.

            cioè si ammette il comando da me usato, ma che appunto non mi funziona,
            come non mi funziona l’ambiente….

            m

          • #89898
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              Quando Antonis Tsolomitis ha messo in rete quei font gfs probabilmente la cosa funzionava, ma, lo faceva “solo” con la sua installazione e i suoi font txfontsb. Ora leggendo il file complutum.sty, le cose funzionano diversamente, evidentemente, salvo il fatto che Tsolomitis prevedeva di usare l’ambiente complutum che tu, nei tuoi comandi non usavi.

              Probabilmente, se tu non definissi i tuoi comandi e usassi scrupolosamente solo quelli definiti da Tsolomitis, le cose andrebbero bene, ma il problema sono i tuoi comandi, che per usare una famiglia diversa da quelle deifinite con lgrcmr.fd oppure lgrlmr..fd, hanno bisogno dell’impostazione esplicita della famiglia complutum. Dico “probabilmente”, perché non ho provato e leggendo il codice ho i miei sospetti.

              La cosa sarà macchinosa, e forse avrei potuto pensarla meglio quando ho creato i font della collezione CBfonts, ma il passaggio dall’alfabeto latino all’alfabeto greco avviene SOLO mediante il cambiamento di codifica da T1, a LGR; le famiglie di font restano le stesse; quindi se scrivendo con l’alfabeto latino si usano i font Latin Modern, famiglia lmr, per esempio, allora per i font greci si usa la famiglia lmr. Se per l’alfabeto latino si usano i TXfonts, famiglia txr, per i font greci si usa la famiglia txr; questa non esiste, quindi mediante teubner si crea il file lgrtxr.fd che sostituisce la famiglia mancante con un font di sostituzione, tratto dalla mia solita collezione, così che apparentemente viene creata la famiglia greca txr, ma è solo un alias della famiglia lmr..

              Per usare font greci diversi dai miei, bisong avere, per esempio, il file lgrcomplutum.fd, che in effetti esiste, ma bisogna anche esplicitamente cambiare famiglia quando si passa al greco, perché non esiste nessuna famiglia latina che si chiami complutum, e non esiste il file t1complutum.fd, che sostituisca il font latino, per esempio LatinModern, con un font di sostituzione “Complutum Modern”, cioè che esegua la sostituzione delle serie e delle forme necessarie con quelle dei Latin Modern.

              Capisco che è complicato, ma leggendo come funziona il metodo chiamato New Font Selection Scheme (NFSS) per cambiare i font una caratteristica alla volta, (codifica, famiglia, serie, forma, corpo), ci si rende conto che tutto sommato non è poi così complicato. La cosa dovrebbe essere descritta nella guida tematica sui font (che ovviamente Tsolomitis non può avere letto, ma la cui sostanza credo gli fosse perfettamente nota). Questo meccanismo che ti ho descritto, mutatis paucis mutandis, funziona anche per il cirillico.

              Per fare diversamente da come ti ho spiegato, bisognerebbe definire dei nomi di famiglie per i font greci diversamente da quelle per i font latini e cirillici, in modo che cambiando lingua si cambiano tutte e cinque le caratteristiche., o almeno quelle più specifiche della collezione di font usate. Tsolomitis nel file complutum.sty ridefinisce \rmdefault in modo che punti alla famiglia complutum, ma quello che mi lascia perplesso è come questo cambio di famiglia possa gestire il latino (ho infatti il sospetto che apparentemente non succede nulla di strano, perché è vero che non esiste un font \T1/complutum/m/n/10, per esempio, ma esiste un “error substitution font” che corrisponde a \T1/cmr/m/n/10, e quindi paparentemente quando si scrive in latino medio diritto, non ci si accorge che si sta usando un font diverso da quello definito, salvo accorgersi che qualcosa non va se si chiede il latino nero, o corisivo…; non ho provato, ma penso che il mio sospetto non sia lontano dal vero; ci sono cascato anch’io quando creavo il pacchetto teubner).

              Il problema si complica ulteriormente se si volessero usare diversi font latini e diversi font greci contemporaneamente nello stesso documento; la soluzione di avere comandi dove il cambiamento è esplicito per la codifica e la famiglia (un po’ come nei comandi che ti ho definito nell’esempio, ma andrebbe fatto meglio), permette di avere questa flessibilità. Supponi infatti di voler mostrare nello stesso documento l’Artemisia a confronto con il Complutum. Come faresti, se non cambiando esplicitamente la famiglia?

              Spero di essermi spiegato; se ritieni che la cosa andrebbe spiegata meglio nella guida tematica sui font, fammelo sapere, che vedo di modificare quella guida. Quello che non posso fare è quello di modificare la documentazione che accompagna i vari pacchetti di font greci passati, presenti e futuri, perché sono fuori dalla mia sfera di azione.:smile:

              Ciao
              Claudio

            • #89899
              samiel
              Partecipante
                Up
                0
                Down
                ::


                La cosa non mi appare del tutto lineare, anche perché spesso
                non saprei come tradurre la teoria in pratica. Fatto si è
                che ho provato a utilizzare i comandi (e solo quelli) indicati
                nelle guide dei vati gfs font, e non sempre le cose funzionano:
                `\documentclass[a4paper]{article}
                \usepackage[LGR,T1]{fontenc}
                \usepackage[utf8]{inputenc}
                \usepackage[polutonikogreek,italian]{babel}
                %\usepackage{gfsartemisia}
                %\usepackage{gfsbaskerville}
                % ?? \usepackage{gfsbodoni}
                %\usepackage{gfscomplutum}
                %\usepackage{gfsdidot}
                %\usepackage{gfsneohellenic}
                %%\usepackage{gfsolga}
                %\usepackage{gfsporson}
                %\usepackage{gfssolomos}

                \begin{document}

                %% ARTEMISIA
                %\textgreek{dokim'h, p~wc}
                %\begin{textgreek}{dokim'h}\end{textgreek}

                %% BASKERVILLE
                %\textgfsbaskerville{dokim'h, p~wc}
                %\begin{gfsbaskerville}{dokim'h}\end{gfsbaskerville}

                % BODONI
                %\textbodoni{dokim'h, p~wc}
                %\begin{bodoni}{dokim'h}\end{bodoni}
                % appare in caratteri latini

                % COMPLUTUM
                %\textcomplutum{dokim'h, p~wc}
                %\begin{complutum}{dokim'h}\end{complutum}
                % LaTeX Font Warning: Font shape `T1/complutum/m/n' undefined
                % (Font) using `T1/cmr/m/n' instead on input line 31.

                % DIDOT
                % \textgreek{dokim'h, p~wc}
                % \begin{textgreek}{dokim'h}\end{textgreek}

                % NEOHELLENIC
                %\ textneohellenic{dokim'h, p~wc}
                %\ begin{neohellenic}{dokim'h}\end{neohellenic}
                % appare in caratteri latini

                % PORSON
                % \textporson{dokim'h, p~wc}
                % \begin{porson}{dokim'h}\end{porson}

                % SOLOMOS
                % \textsolomos{dokim'h, p~wc}
                % \begin{solomos}{dokim'h}\end{solomos}
                % LaTeX Font Warning: Font shape `T1/solomos/m/n' undefined
                % (Font) using `T1/cmr/m/n' instead on input line 43.

                \end{document}`
                Qui ho fatto una alla volta le varie prove:
                in alcuni casi i font funzionano esattamente come prescritto
                nelle guida, in altri casi no….

                m

              • #89900
                OldClaudio
                Partecipante
                  Up
                  0
                  Down
                  ::


                  Infatti, ti ho detto che in complutum.sty la ridefinizione incondizionata di \rmdefault con complutum mi pare una fesseria; infatti complutum, non mi pare che disponga di caratteri latini, e quindi l’erro font ricorre ai font cmr, come dice il messaggio d’errore.

                  Ti ripeto che la cosa migliore da fare è ridefinirsi i comandi personali, e i comandi come \textgreek, in modo che oltre la codifica LGR venga cambaita espressamante anche la famiglia.

                  Come hai visto, con i comandi che ho definito io tutto funziona come atteso, salvo \textgreek, a cui non ho ridefinito la famigla, quindi scrive in greco ma usa l’error font greco.

                • #89901
                  OldClaudio
                  Partecipante
                    Up
                    0
                    Down
                    ::



                    @samiel
                    , ho provato a interessare Günter Miede ad implementare per il greco un modo diverso di scrivere barani in quella lingua. Mi ha risposto picche, nonostante i vari suggerimenti che avevo indicato; quando chiedo una nuova funzionalità, non mi limito a chiederla, ma cerco di dare anche qualche idea su come realizzarla. Pazienza.

                    Vista la risposta negativa e considerate le tue esigenze, ho buttato giù in fretta un pacchettino da chiamare dopo babel. Eccolo:`% Package begingreek.sty
                    \NeedsTeXFormat{LaTeX2e}[2011/06/27]
                    \ProvidesPackage{begingreek}[2013/10/28]
                    % This file provides an environment “greek” similar to the one defined by polyglossia
                    % that typesets greek text with a specified LGR encoded greek 256 glyph font.
                    % is is to be used with pdfLaTeX only, not with XeLaTeX or LuaLaTeX.
                    %
                    % Load this package as \usepacackge{}{begingreek]
                    % Be sure that the specified greek font family exists and had available
                    % its lgr
                    .fd file.
                    % You can always specify a different font family trhrought the optional argument
                    % of the greek environment: \begin{greek}[arq'h}

                    \textgreek{dokim'h}% usa solo i font predefiniti da babel-greek

                    Questa parola è scritta in greco \begin{greek}>arq'h\end{greek} e vuol dire \emph{inizio}.

                    Questa parola è scritta in greco \begin{greek}[artemisia]>arq'h\end{greek} e vuol dire \emph{inizio}.

                    \end{document}`

                    Prova anche ad usarlo senza specificare nessuna opzione al pacchetto begingreek, e vedi che cosa succede.

                    Di fatto puoi scrivere con il font che preferisci sia una singola parola, sia una frase sia un capoverso intero o una testo completo con l’ambiente greek; le uniche limitazioni sono le seguenti:
                    1) funziona solo con pdflatex, e l’ho fatto apposta, affinché non venga voglia di usarlo con Xe o Lua; se lo si facesse sarebbe del tutto inutile, perché il pacchetto, di fatto è come se non venisse caricato. Con Xe e Lua, polyglossia fornisce già l’ambiente greek.
                    2) con pdflatex è necessario disporre dei file .fd da qualche parte dove pdflatex possa trovarli, quindi vanno bene i fontCBfonts compatibili cono i CM e gli LM; vanno bene quelli della GFS, vanno bene i txfontsb di Antonis Tsolomitis. Vanno bene anche i CBfonts usati coe font sostitutivi di altri font greci mancanti; per esempio se volessi usare i font greci testuali usando il pacchetto KPfonts, non ci riusciresti, se prima non avessi usato il marchingegno di teubner per creare il file .fd mancanti.

                    Sembra, ma non ho controllato, che esista un pacchetto substitutefonts che riesce a fare questa piccola magia senza bisogno di ricorrere a teubner.

                    Ciao
                    Claudio

                  • #89902
                    samiel
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      A proposito del primo tuo messaggio, in effetti nei casi in cui
                      i comandi previsti dalla guida non funzionano, è necessario
                      ricorrere a ridefinizioni come quella che mi hai indicato.

                      Per il secondo messaggio, troppa grazia! Purtroppo
                      ho problemi con computer, mi fa parecchie cose strane:
                      apre e copia i file in tempi biblici, fallisce regolarmente
                      nello scrivere DVD. Appena esco da questo impasse
                      provo la tua soluzione, mi scuso se mi servirà tempo,
                      ma devo mandare il pc in ospedale e a volte scrivo
                      da scuola, dove “ovviamente” non è installato LaTeX…

                      intanto mille grazie!
                      m

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

                  Go to top