Usare più calligraphic fonts contemporaneamente

  • Creatore
    Topic
  • #121755
    Up
    0
    Down
    ::


    Ciao a tutti,

    sto scrivendo delle dispense di Analisi Reale e Funzionale e per avere continuità con la notazione del mio professore voglio usare più font calligrafici insieme.

    Questo è il documento base:
    `
    \documentclass[]{article}
    \newcommand{\Ac}{\mathcal{A}}
    \newcommand{\Bc}{\mathcal{B}}
    \newcommand{\Cc}{\mathcal{C}}
    \newcommand{\Dc}{\mathcal{D}}
    \newcommand{\Ec}{\mathcal{E}}
    \newcommand{\Fc}{\mathcal{F}}
    \newcommand{\Gc}{\mathcal{G}}
    \newcommand{\Hc}{\mathcal{H}}
    \newcommand{\Ic}{\mathcal{I}}
    \newcommand{\Jc}{\mathcal{J}}
    \newcommand{\Kc}{\mathcal{K}}
    \newcommand{\Lc}{\mathcal{L}}
    \newcommand{\Mc}{\mathcal{M}}
    \newcommand{\Nc}{\mathcal{N}}
    \newcommand{\Oc}{\mathcal{O}}
    \newcommand{\Pc}{\mathcal{P}}
    \newcommand{\Qc}{\mathcal{Q}}
    \newcommand{\Rc}{\mathcal{R}}
    \newcommand{\Sc}{\mathcal{S}}
    \newcommand{\Tc}{\mathcal{T}}
    \newcommand{\Uc}{\mathcal{U}}
    \newcommand{\Vc}{\mathcal{V}}
    \newcommand{\Wc}{\mathcal{W}}
    \newcommand{\Xc}{\mathcal{X}}
    \newcommand{\Yc}{\mathcal{Y}}
    \newcommand{\Zc}{\mathcal{Z}}
    \begin{document}
    $\Ac,\Bc,\Cc,\Dc,\Ec,\Fc,\Hc,\Ic,\Jc,\Kc,\Lc,\Mc,\Nc,\Oc,\Pc,\Qc,\Rc,\Sc,\Tc,\Uc,\Vc,\Wc,\Xc,\Yc,\Zc$
    \end{document}
    `

    Ora vorrei aggiungere, oltre a questi comandi per il calligrafico predefinito, altri nuovi comandi per scrivere delle lettere con altri font. Per essere più preciso, vorrei usare:

    • la P calligrafica da Mathtime Pro 2 Curly script (dato che non sono riuscito ad installarlo in alternativa va bene anche da Euler)
    • la t calligrafica da Euler
    • la S calligrafica da Mathpi script
    • la M calligrafica da ESSTIX calligraphic oppure dutchcal

    (questi font sono presi dalla documentazione di mathalpha)

    Un primo codice può essere:
    `
    \documentclass[]{article}
    \usepackage[cal=euler,calscaled=1]{mathalpha}
    \newcommand{\Ac}{\mathcal{A}}
    \newcommand{\Bc}{\mathcal{B}}
    \newcommand{\Cc}{\mathcal{C}}
    \newcommand{\Dc}{\mathcal{D}}
    \newcommand{\Ec}{\mathcal{E}}
    \newcommand{\Fc}{\mathcal{F}}
    \newcommand{\Gc}{\mathcal{G}}
    \newcommand{\Hc}{\mathcal{H}}
    \newcommand{\Ic}{\mathcal{I}}
    \newcommand{\Jc}{\mathcal{J}}
    \newcommand{\Kc}{\mathcal{K}}
    \newcommand{\Lc}{\mathcal{L}}
    \newcommand{\Mc}{\mathcal{M}}
    \newcommand{\Nc}{\mathcal{N}}
    \newcommand{\Oc}{\mathcal{O}}
    \newcommand{\Pc}{\mathcal{P}}
    \newcommand{\Qc}{\mathcal{Q}}
    \newcommand{\Rc}{\mathcal{R}}
    \newcommand{\Sc}{\mathcal{S}}
    \newcommand{\Tc}{\mathcal{T}}
    \newcommand{\Uc}{\mathcal{U}}
    \newcommand{\Vc}{\mathcal{V}}
    \newcommand{\Wc}{\mathcal{W}}
    \newcommand{\Xc}{\mathcal{X}}
    \newcommand{\Yc}{\mathcal{Y}}
    \newcommand{\Zc}{\mathcal{Z}}
    \begin{document}
    Lettere in Euler:
    $\Ac,\Bc,\Cc,\Dc,\Ec,\Fc,\Hc,\Ic,\Jc,\Kc,\Lc,\Mc,\Nc,\Oc,\Pc,\Qc,\Rc,\Sc,\Tc,\Uc,\Vc,\Wc,\Xc,\Yc,\Zc$
    \end{document}
    `

    Navigando su stack ho trovato un’alternativa migliore:
    `
    \documentclass[]{article}
    \usepackage{eucal}
    \newcommand{\Ac}{\mathcal{A}}
    \newcommand{\Bc}{\mathcal{B}}
    \newcommand{\Cc}{\mathcal{C}}
    \newcommand{\Dc}{\mathcal{D}}
    \newcommand{\Ec}{\mathcal{E}}
    \newcommand{\Fc}{\mathcal{F}}
    \newcommand{\Gc}{\mathcal{G}}
    \newcommand{\Hc}{\mathcal{H}}
    \newcommand{\Ic}{\mathcal{I}}
    \newcommand{\Jc}{\mathcal{J}}
    \newcommand{\Kc}{\mathcal{K}}
    \newcommand{\Lc}{\mathcal{L}}
    \newcommand{\Mc}{\mathcal{M}}
    \newcommand{\Nc}{\mathcal{N}}
    \newcommand{\Oc}{\mathcal{O}}
    \newcommand{\Pc}{\mathcal{P}}
    \newcommand{\Qc}{\mathcal{Q}}
    \newcommand{\Rc}{\mathcal{R}}
    \newcommand{\Sc}{\mathcal{S}}
    \newcommand{\Tc}{\mathcal{T}}
    \newcommand{\Uc}{\mathcal{U}}
    \newcommand{\Vc}{\mathcal{V}}
    \newcommand{\Wc}{\mathcal{W}}
    \newcommand{\Xc}{\mathcal{X}}
    \newcommand{\Yc}{\mathcal{Y}}
    \newcommand{\Zc}{\mathcal{Z}}
    \begin{document}
    Lettere in Euler:
    $\Ac,\Bc,\Cc,\Dc,\Ec,\Fc,\Hc,\Ic,\Jc,\Kc,\Lc,\Mc,\Nc,\Oc,\Pc,\Qc,\Rc,\Sc,\Tc,\Uc,\Vc,\Wc,\Xc,\Yc,\Zc$

    Lettere in calligrafico predefinito:
    $\CMcal{A},\ldots,\CMcal{Z}$
    \end{document}
    `

    In questo mondo riesco a richiamare anche il calligrafico Computer Modern. Tuttavia il mio obiettivo non è ancora raggiunto: vorrei tenere il calligrafico CM come base del documento, e poi creare qualche nuovo comando per richiamare qualche lettera in un altro tipo di calligrafico all’occorrenza, come mostrato nel seguente codice (che non funziona, è solo per far capire):
    `
    \documentclass[]{article}
    % Calligrafico Computer Modern
    \newcommand{\Ac}{\mathcal{A}}
    \newcommand{\Bc}{\mathcal{B}}
    \newcommand{\Cc}{\mathcal{C}}
    \newcommand{\Dc}{\mathcal{D}}
    \newcommand{\Ec}{\mathcal{E}}
    \newcommand{\Fc}{\mathcal{F}}
    \newcommand{\Gc}{\mathcal{G}}
    \newcommand{\Hc}{\mathcal{H}}
    \newcommand{\Ic}{\mathcal{I}}
    \newcommand{\Jc}{\mathcal{J}}
    \newcommand{\Kc}{\mathcal{K}}
    \newcommand{\Lc}{\mathcal{L}}
    \newcommand{\Mc}{\mathcal{M}}
    \newcommand{\Nc}{\mathcal{N}}
    \newcommand{\Oc}{\mathcal{O}}
    \newcommand{\Pc}{\mathcal{P}}
    \newcommand{\Qc}{\mathcal{Q}}
    \newcommand{\Rc}{\mathcal{R}}
    \newcommand{\Sc}{\mathcal{S}}
    \newcommand{\Tc}{\mathcal{T}}
    \newcommand{\Uc}{\mathcal{U}}
    \newcommand{\Vc}{\mathcal{V}}
    \newcommand{\Wc}{\mathcal{W}}
    \newcommand{\Xc}{\mathcal{X}}
    \newcommand{\Yc}{\mathcal{Y}}
    \newcommand{\Zc}{\mathcal{Z}}
    % Calligrafico Euler
    \newcommand{\Powerset}{\mathcal{P}} % Euler P
    \newcommand{\Topology}{\mathcal{T}} % Euler T
    % Calligrafico Mathpi
    \newcommand{\Sins}{\mathcal{S}} % Mathpi S
    % Calligrafico ESSTIX opppure dutchcal
    \newcommand{\Malg}{\mathcal{M}} % ESSTIX/dutchcal M
    \begin{document}
    Lettere in Computer Modern:
    $\Ac,\Bc,\Cc,\Dc,\Ec,\Fc,\Hc,\Ic,\Jc,\Kc,\Lc,\Mc,\Nc,\Oc,\Pc,\Qc,\Rc,\Sc,\Tc,\Uc,\Vc,\Wc,\Xc,\Yc,\Zc$

    Altre lettere in altri tipi di calligrafico:
    $\Powerset,\Topology,\Sins,\Malg$
    \end{document}
    `

    Spero di essere riuscito a spiegare nel dettaglio la mia situazione. Inizio a ringraziare chiunque dovesse leggere (e rispondere a) questo post.

    Modifica post: ho capito qual è il problema, non bisogna caricare i pacchetti dei font ma dichiarare l’alfabeto. Lascio qui sotto un esempio:
    `\documentclass[]{article}

    \DeclareMathAlphabet{\mathdutchcal}{U}{dutchcal}{m}{n}
    \SetMathAlphabet{\mathdutchcal}{bold}{U}{dutchcal}{b}{n}
    \DeclareMathAlphabet{\mathdutchbcal}{U}{dutchcal}{b}{n}
    \newcommand{\dtc}{\mathdutchcal}

    \DeclareSymbolFont{EulerScript}{U}{eus}{m}{n}
    \SetSymbolFont{EulerScript}{bold}{U}{eus}{b}{n}
    \DeclareSymbolFontAlphabet\mathscr{EulerScript}
    \newcommand{\scr}{\mathscr}

    \DeclareMathAlphabet{\mathrsfso}{U}{rsfso}{m}{n}

    \DeclareFontFamily{U}{BOONDOX-calo}{\skewchar\font=45 }
    \DeclareFontShape{U}{BOONDOX-calo}{m}{n}{
    <-> s*[1.05] BOONDOX-r-calo}{}
    \DeclareFontShape{U}{BOONDOX-calo}{b}{n}{
    <-> s*[1.05] BOONDOX-b-calo}{}
    \DeclareMathAlphabet{\mathcalboondox}{U}{BOONDOX-calo}{m}{n}
    \SetMathAlphabet{\mathcalboondox}{bold}{U}{BOONDOX-calo}{b}{n}
    \DeclareMathAlphabet{\mathbcalboondox}{U}{BOONDOX-calo}{b}{n}
    \newcommand{\bondox}{\mathcalboondox}

    \begin{document}
    CM:\\
    $\mathcal{A},\mathcal{B},\mathcal{C},\mathcal{D},\mathcal{E},\mathcal{F},\mathcal{G},\mathcal{H},\mathcal{I},\mathcal{J},\mathcal{K},\mathcal{L},\mathcal{M},\mathcal{N},\mathcal{O},\mathcal{P},\mathcal{Q},\mathcal{R},\mathcal{S},\mathcal{T},\mathcal{U},\mathcal{V},\mathcal{W},\mathcal{X},\mathcal{Y},\mathcal{Z}$

    \bigskip

    Euler:\\
    $\scr{A},\scr{B},\scr{C},\scr{D},\scr{E},\scr{F},\scr{G},\scr{H},\scr{I},\scr{J},\scr{K},\scr{L},\scr{M},\scr{N},\scr{O},\scr{P},\scr{Q},\scr{R},\scr{S},\scr{T},\scr{U},\scr{V},\scr{W},\scr{X},\scr{Y},\scr{Z}$

    \bigskip

    Dutchcal:\\
    $\dtc{A},\dtc{B},\dtc{C},\dtc{D},\dtc{E},\dtc{F},\dtc{G},\dtc{H},\dtc{I},\dtc{J},\dtc{K},\dtc{L},\dtc{M},\dtc{N},\dtc{O},\dtc{P},\dtc{Q},\dtc{R},\dtc{S},\dtc{T},\dtc{U},\dtc{V},\dtc{W},\dtc{X},\dtc{Y},\dtc{Z}$

    \bigskip

    rsfso:\\
    $\mathrsfso{A},\mathrsfso{B},\mathrsfso{C},\mathrsfso{D},\mathrsfso{E},\mathrsfso{F},\mathrsfso{G},\mathrsfso{H},\mathrsfso{I},\mathrsfso{J},\mathrsfso{K},\mathrsfso{L},\mathrsfso{M},\mathrsfso{N},\mathrsfso{O},\mathrsfso{P},\mathrsfso{Q},\mathrsfso{R},\mathrsfso{S},\mathrsfso{T},\mathrsfso{U},\mathrsfso{V},\mathrsfso{W},\mathrsfso{X},\mathrsfso{Y},\mathrsfso{Z}$

    \bigskip

    Bondoox:\\
    $\bondox{A},\bondox{B},\bondox{C},\bondox{D},\bondox{E},\bondox{F},\bondox{G},\bondox{H},\bondox{I},\bondox{J},\bondox{K},\bondox{L},\bondox{M},\bondox{N},\bondox{O},\bondox{P},\bondox{Q},\bondox{R},\bondox{S},\bondox{T},\bondox{U},\bondox{V},\bondox{W},\bondox{X},\bondox{Y},\bondox{Z}$

    \end{document}
    `

Visualizzazione 4 filoni di risposte
  • Autore
    Risposte
    • #121756
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Devi semplicemente chiamare con nomi diversi i caratteri definiti con eucale e quellei definiti con il calligrafico di default.
        Se li chiami con le stesse macro, è ovvio che LaTeX non li può distingure; quindi per esempio \Ac defintio con il calligrafico dei font matematici standard e \Ae per qelli definiti con euccal.

        Alternaticamente puoi definire solo due macro che accettino ciascuna un argomento, per esempio, una che si chiama \CMcal e l’altra \EUcal, per cui scrivendo \CMcal{A} ti viene la A scritta colo calligrafico nativo e scrivendo \EUcal{A} ti viene la A scrittta colo il calligafico di eucal…
        Per tua informazione esiste il documento symbols, che puoi leggere da terminale dando il comando texdoc symbols, che elenca tutti i pacchetti e tutti i simboli che si possono comporre con LaTeX; per cercare ciò che ti interessa, esiste un indice generale dettagliatissimo e un indice analitico con i debili collegamente ipertestuali, cosicché riesci a scegliere i pacchetti che vuoi e con i quali puoi eseguire le definizioni che credi.±±

      • #121757
        Up
        0
        Down
        ::

        OldClaudio” post=122324Devi semplicemente chiamare con nomi diversi i caratteri definiti con eucale e quellei definiti con il calligrafico di default.
        Se li chiami con le stesse macro, è ovvio che LaTeX non li può distingure; quindi per esempio \Ac defintio con il calligrafico dei font matematici standard e \Ae per qelli definiti con euccal.

        Alternaticamente puoi definire solo due macro che accettino ciascuna un argomento, per esempio, una che si chiama \CMcal e l’altra \EUcal, per cui scrivendo \CMcal{A} ti viene la A scritta colo calligrafico nativo e scrivendo \EUcal{A} ti viene la A scrittta colo il calligafico di eucal…
        Per tua informazione esiste il documento symbols, che puoi leggere da terminale dando il comando texdoc symbols, che elenca tutti i pacchetti e tutti i simboli che si possono comporre con LaTeX; per cercare ciò che ti interessa, esiste un indice generale dettagliatissimo e un indice analitico con i debili collegamente ipertestuali, cosicché riesci a scegliere i pacchetti che vuoi e con i quali puoi eseguire le definizioni che credi.±±

        Ciao OldClaudio, ti ringrazio per la risposta. Sicuramente sono io a non aver capito quello che intendi, però questo codice non fa quello che voglio:
        `
        \documentclass[]{article}
        \newcommand{\Ac}{\mathcal{A}}
        \usepackage{eucal}
        \newcommand{\Ae}{\mathcal{A}}
        \usepackage{dutchcal}
        \newcommand{\Ad}{\mathcal{A}}
        \begin{document}
        $\Ac,\Ae,\Ad$
        \end{document}
        `

        Infatti le tre A calligrafiche sono tutte in font dutchcal, perché sia quel comando che anche euler sovrascrivono il calligrafico di default. Io se possibile vorrei tenere il calligrafico nativo, e poi avere dei comandi per richiamare gli altri font (che sia una macro sola tipo \EUcal{}, \DUcal{}, ecc per ogni altro font che voglio usare oppure un comando per ogni lettera \Ae, \Ad, ecc).

        Per quanto riguarda il documento symbols, se ti riferisci a quello di Scott Pakin ho guardato ma ho trovato solamente la tabella 316 Math alphabet, con pochissimi font. Sulla documentazione del pacchetto mathalpha ci sono molti più esempi invece. E per quanto riguarda il terminale io uso SublimeText3 + Latextools su Mac, e da novizio non so dove digitare quel comando.

        Grazie della pazienza

      • #121758
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Infatti non devi usare nelle definizioni sempre \mathcla, che usa i calligrafici standard, ma per definire quelli col pedice e devi usare \eucal, e via di questo passo per gli altri stili calligrafici,

        • #121759
          Up
          0
          Down
          ::


          Scusa OldClaudio, non capisco a cosa ti riferisca con “quelli col pedice”. Saresti così gentile da farmi un piccolissimo esempio di istruzione?

        • #121760
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Supponiamo che tu usi il calligrafico di Computer Modern e il calligrafico di Euler e che su, per usare quest’ultimo abbia caricato l’apposito pacchetto che ti definisce il comando \eucal. allora i simboli colo pedice c, \Ac, \Bc,…\Zc li definisci con`\newcommand\Ac{\mathcal{A}}`eccetera. Quelli col pedice e li definisci con `\newcommand\Ae{\eucal{a}}`

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

        Go to top