2010-04-16 6 views
14

He estado jugando a la generación de imágenes en ImageMagick en Ubuntu 9.10. Quiero que reconozca una fuente para que pueda llamarla por su "sobrenombre".Haga que ImageMagick reconozca una fuente

puedo encontrar la lista de fuentes ImageMagick reconoce escribiendo

identify -list font

En esa lista veo Tiempos-Bold. Por lo tanto,

convert -font Times-Bold label:abcdef times.gif

generará un archivo gif con la fuente Times New Roman Bold.

Sé que puedo pasar la ruta a la fuente en lugar de su apodo, pero necesito poder usar su apodo, así que tengo menos errores al pasar de un sistema a otro. La fuente que trato de poner en práctica en particular es una fuente de tipo verdadero llamada Segoe UI.

Ya tengo Segoe UI instalada en mi sistema. Si paso el camino a la fuente, funciona. Pero quiero poder usar algo como

convert -font Segoe-UI label:abcdef segoe.gif

¡Gracias!

Respuesta

17

Por lo que recuerdo, identify usa un archivo de configuración, llamado type.xml, para ubicar las fuentes por nombre. Puede modificar la copia de este archivo de imagemagick a nivel de sistema, o agregar fuentes adicionales en una de nivel de usuario.

Hay un script llamado imagick_type_gen que utilizará la base de datos "localizar" para buscar fuentes en su sistema y generar uno de estos archivos de configuración, que luego puede usar para configurar imagemagick; para un usuario ordinario creo que esto va en ~/.magick/type.xml, aunque puedes ponerlo en un nivel de sistema en alguna parte. Esto es generalmente what I've used in the past.

Así que, básicamente, creo que necesita configurar su sistema de archivo type.xml o agregar uno de nivel de usuario. Siempre que pueda hacer esto cuando se mueva a un nuevo sistema, para cualquier usuario que ejecute imagemagick, al menos debe poder salirse con la suya sin cambiar su código si la ruta de acceso a la fuente es diferente.

+2

Excelente. Gracias Matt! Para aquellos semi-nuevos en la línea de comando, ejecuté el script escribiendo "./path/to/imagick_type_gen". Me aseguré de que fuera ejecutable primero por "sudo chmod + x/path/to/imagick_type_gen". –

+0

También tenía 2 tipos de fuentes: Segoe UI Bold y Segoe UI. Estaba pasando un parámetro "audaz" en el programa que estaba usando, RMagick pero no estaba en negrita. Lo que hice fue editar el archivo y todas las cosas que apuntaban al archivo seguibd.ttf (esa es la versión en negrita de la interfaz de usuario de Segoe), cambié la familia de fuentes a un apodo que quiero. No estoy seguro de que esta sea la mejor manera, pero funcionó. –

+1

Usando cli en debian (en 2014), en lugar de 'identify -list Type', utilicé' convert -list font' para obtener una lista de fuentes disponibles. Impresionante, gracias por la respuesta y la publicación de tu blog. –

Cuestiones relacionadas