Come unire due caratteri in Linux

Come unire due caratteri in Linux
Scegliere i caratteri giusti per il tuo progetto non è un compito banale. Un carattere ben progettato con un set di personaggi completo migliora l'esperienza dell'utente, la localizzazione e la leggibilità del testo, specialmente in progetti pesanti del testo come giochi ed ebook. La creazione di un carattere personalizzato da zero abbinando la filosofia di progettazione del tuo progetto potrebbe non essere economica. Per ovviare a questo, molti creatori di contenuti uniscono due caratteri che hanno una filosofia di design simile per creare un nuovo carattere. Questo articolo spiegherà come combinare due TrueType (.TTF) Font usando la Fontforge in Linux.

Installazione di fontforge in Linux

Per installare Fontforge in Ubuntu, eseguire il comando di seguito:

$ sudo apt install fontforge

FontForge Standalone Appimage Esecutable e i pacchetti per altre distribuzioni Linux sono disponibili qui.

Esistono due metodi che è possibile utilizzare per unire due caratteri utilizzando il fontforge. È possibile unire i caratteri utilizzando la GUI FONTFORGE oppure è possibile utilizzare uno script personalizzato che può essere eseguito in un terminale. Entrambi questi metodi sono spiegati di seguito.

Alcuni suggerimenti per la selezione dei caratteri

Per garantire la massima compatibilità e leggibilità mentre si fondono due caratteri, è importante selezionare due caratteri con uno stile di design simile. Dovresti anche evitare di fondere caratteri serif e sans-serif a meno che non sia necessario. Assicurati che due caratteri abbiano gli stessi pesi. Se si utilizza caratteri proprietari a pagamento, ricontrolla la licenza. Alcuni caratteri proprietari sono restrittivi e potrebbero non consentire l'uso commerciale di caratteri uniti. I caratteri open source sono abbastanza permissivi, ma anche in questo caso, assicurati di controllare le loro licenze per evitare problemi.

Unisci i caratteri usando uno script di fontforge

Crea un nuovo file chiamato "Mergefonts.sh "e incolla il seguente codice in esso:

#!/usr/bin/fontforge
Aperto ($ 1)
Seleziona tutto()
Scaletoem (1024)
Generare ("1.TTF ")
Vicino()
Aperto ($ 2)
Seleziona tutto()
Scaletoem (1024)
Generare ("2.TTF ")
Vicino()
Aperto ("1.TTF ")
Mergefonts ("2.TTF ")
Generare ("my_custom_font.TTF ")
Vicino()

Il codice è piuttosto semplice. L'argomento "$ 1" è per il tuo carattere principale mentre l'argomento "$ 2" è per il tuo carattere secondario. I caratteri vengono prima ridimensionati a una dimensione uniforme e poi si uniscono per generare un nuovo carattere. Se non li ridimensionhi a una dimensione comune, è possibile ottenere un testo irregolare da un carattere unito finale.

Per verificare la dimensione di un carattere in unità "EM", eseguire il comando in basso (sostituire “Font.TTF "con il nome del tuo file di carattere):

$ fontforge -lang = ff -c 'aperto ($ 1); Stampa ($ em); Close () 'Font.Ttf

Otterrai un po 'di output come questo:

Il glifo chiamato f_i è mappato su u+f001.
Ma il suo nome indica che dovrebbe essere mappato su u+fb01.
2048

Cambia le linee "ScaleToem (1024)" nello script sopra con il valore desiderato. Puoi anche modificare lo script e mettere un ulteriore argomento "$ 3" per specificare il valore delle dimensioni dalla riga di comando.

Ora per unire i due caratteri, specificare i caratteri come argomenti durante l'esecuzione di "Mergefonts.Script sh ". L'ordine di questi argomenti è importante in quanto il carattere specificato come secondo argomento ($ 2) verrà unita al carattere specificato come primo argomento ($ 1). Il primo argomento dovrebbe essere del tuo carattere principale che intendi utilizzare nel tuo progetto. Metti i "Mergefonts.Script sh "e due caratteri in una cartella, avvia una nuova finestra del terminale dalla cartella ed esegui il comando seguente per unire i caratteri:

$ ./Mergefonts.font1 sh.Font2 TTF.Ttf

Dopo aver eseguito lo script, troverai il nuovo carattere unito come "my_custom_font.TTF "nella directory di lavoro. Potresti vedere alcuni avvertimenti ed errori nel terminale dopo aver eseguito il comando sopra. Questi errori non fermano il processo di fusione dei caratteri. Se sono semplici avvertimenti, puoi ignorarli. Tuttavia, se ci sono conflitti ed errori durante il processo di fusione, potrebbe essere necessario rivederli e risolverli individualmente modificando manualmente i glifi nell'app di fontforge GUI. Dipende totalmente dal tipo di caratteri che scegli per la fusione e potresti non ottenere alcun errore.

Si noti che la prima riga nella sceneggiatura è la posizione del binario Fontforge come Shebang. Ciò consente di eseguire direttamente lo script nel terminale senza dover specificare manualmente il comando Fontforge nel terminale. Per controllare la posizione del binario di fontforge nel sistema, eseguire il comando di seguito:

$ quale carattere

In alternativa, è possibile eseguire qualsiasi script di fontforge usando l'argomento "-script".

$ fontforge -Script Mergefonts.font1 sh.Font2 TTF.Ttf

Metodo GUI

Avvia l'app FontForge dal lancio dell'applicazione e seleziona il carattere principale dal selettore di file. Fai clic sul menu "Element"> "Font Info ...".

Vai alla scheda "Generale" e ridimensiona il carattere secondo il tuo requisito. I due caratteri dovrebbero essere ridimensionati alle stesse dimensioni per evitare i problemi (come spiegato in precedenza).

Quindi, fai clic sul menu a discesa "Element"> "Unisci i caratteri ... Questo carattere verrà fuso nel file del carattere base che hai aperto per primo durante l'avvio dell'app di fontforge. Se ti viene presentato una finestra di dialogo per scegliere Kerning (spaziatura), selezionare "No" per mantenere il kerning dal file di carattere base.

Infine, fai clic su "File"> "Genera caratteri ..." Opzione menu per esportare il carattere unita.

Conclusione

FontForge è uno dei software di editing carattere più utilizzati, gratuiti e open source. Include centinaia di opzioni per modificare i caratteri e viene fornito con un potente sistema di scripting. Si consiglia di rivedere manualmente i personaggi nel carattere unito dopo aver completato il processo di unione per garantire che il risultato finale sia secondo i requisiti.