Convierta en la línea de comando un archivo sfd (fontforge) a ttf, otf, woff, svg

Convierta en la línea de comando un archivo sfd (fontforge) a ttf, otf, woff, svg

Busco una manera de convertir automáticamente un archivo sfd (el formato de trabajo de Fontforge) al formato de fuente principal (al menos otf, ttf, woof, svg).

Pero necesito hacerlo en la línea de comando, no necesito hacerlo desde la GUI.

Desafortunadamente, parece que la aplicación Fontforge no lo admite (leí la página de manual y no se menciona este uso). De todos modos, necesito hacerlo desde la línea de comandos pero no es necesario hacerlo desde Fontforge. Cualquier otra aplicación que pueda convertir el formato de trabajo de Fontforge “SFD” al formato de fuente principal.

Entonces, ¿cómo puedo obtener comandos como este?

sfd2ttf input.sfd output.ttf
sfd2otf input.sfd output.otf
sfd2woff input.sfd output.woff
sfd2svg input.sfd output.svg

Respuesta1

Puedes hacerlo con Fontforge, veraquí:

-c cadena-script

Si el primer argumento de FontForge (o el segundo, si el primero es -lang) es "-c", entonces el argumento que sigue se tratará como una cadena que contiene comandos de script y esos comandos se ejecutarán. Todos los argumentos restantes se pasarán al script.

$ fontforge -c 'Open($1); Generate($2)' foo.sfd foo.ttf

Leerá una fuente de "foo.sfd" y luego generará una fuente truetype llamada "foo.ttf"

En su caso, puede crear un script, digamos convertsfd, como este

#!/bin/bash
fontforge -lang=ff -c 'Open($1); Generate($2)' "$1" "$2"

hazlo ejecutable y llámalo así:

$ ./convertsfd foo.sfd foo.ttf

Cambie el segundo argumento a foo.otfotros formatos según sea necesario, solo probé con ttfy otf.

Para llamar al script desde cualquier lugar, simplemente colóquelo en ~/.local/binsu directorio PATH.

información relacionada