0

After an update of Imagemagick in Ubuntu 22.04, none of the fonts in the type-ghostscript.xml file is recognized (not listed in the convert -list font command).

The type-ghostscript.xml file is included in the /etc/ImageMagick-6/type.xml file, and the fonts files exists. I ran the imagick_type_gen scripts as shown in Make ImageMagick recognize a font but fonts like Helvetica are not listed.

Elier
  • 1

1 Answers1

1

Here are some ways to help work out what is going wrong. First, you can check your ImageMagick version, and whether you have fontconfig, gslib (Ghostscript) and freetype delegates built into your version:

identify -version

Version: ImageMagick 7.1.1-3 Q16-HDRI aarch64 20959 https://imagemagick.org
Copyright: (C) 1999 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenMP(5.0) 
Delegates (built-in): bzlib fontconfig freetype gslib heic jng jp2 jpeg jxl lcms lqr ltdl lzma openexr png ps raw tiff webp xml zlib

Then you can check your CONFIGURE_PATH to see where ImageMagick is looking for its confguration files such as type.xml, delegates.xml and policy.xml:

identify -list configure | grep CONFIGURE_PATH

CONFIGURE_PATH        /opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/

Then you can examine those files:

more /opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/type-ghostscript.xml

Then you can run your identify -list font command again with debugging turned on in order to see what ImageMagick looks at, what it finds and what it understands:

identify -debug all -list font 2>&1 | more  

2023-03-26T10:43:03+00:00 0:00.001 0.000u 7.1.1 Configure identify[20272]: utility.c/ExpandFilenames/975/Configure
  Command line: identify {-debug} {all} {-list} {font}
2023-03-26T10:43:03+00:00 0:00.001 0.000u 7.1.1 Configure identify[20272]: configure.c/GetConfigureOptions/695/Configure
  Searching for configure file: "/opt/homebrew/Cellar/imagemagick/7.1.1-3/share/ImageMagick-7/type.xml"
2023-03-26T10:43:03+00:00 0:00.001 0.000u 7.1.1 Configure identify[20272]: configure.c/GetConfigureOptions/695/Configure
  Searching for configure file: "/opt/homebrew/Cellar/imagemagick/7.1.1-3/lib/ImageMagick//config-Q16HDRI/type.xml"
2023-03-26T10:43:03+00:00 0:00.001 0.000u 7.1.1 Configure identify[20272]: configure.c/GetConfigureOptions/695/Configure
  Searching for configure file: "/opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/type.xml"
2023-03-26T10:43:03+00:00 0:00.001 0.010u 7.1.1 Configure identify[20272]: configure.c/GetConfigureOptions/695/Configure
  Searching for configure file: "/opt/homebrew/Cellar/imagemagick/7.1.1-3/share/doc/ImageMagick-7/type.xml"
2023-03-26T10:43:03+00:00 0:00.001 0.010u 7.1.1 Configure identify[20272]: configure.c/GetConfigureOptions/695/Configure
  Searching for configure file: "/Users/mark/.config/ImageMagick/type.xml"
2023-03-26T10:43:03+00:00 0:00.001 0.010u 7.1.1 Configure identify[20272]: type.c/LoadTypeCache/1098/Configure
  Loading type configure file "/opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/type.xml" ...
2023-03-26T10:43:03+00:00 0:00.001 0.010u 7.1.1 Policy identify[20272]: policy.c/IsRightsAuthorized/647/Policy
  Domain: Path; rights=Read; pattern="/opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/type-ghostscript.xml" ...
2023-03-26T10:43:03+00:00 0:00.001 0.010u 7.1.1 Configure identify[20272]: type.c/LoadTypeCache/1098/Configure
  Loading type configure file "/opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/type-ghostscript.xml" ...

Path: /opt/homebrew/Cellar/imagemagick/7.1.1-3/etc/ImageMagick-7/type-ghostscript.xml
  Font: AvantGarde-Book
    family: AvantGarde
    style: Normal
    stretch: Normal
    weight: 400
    glyphs: /opt/homebrew/share/ghostscript/fonts/a010013l.pfb
  Font: AvantGarde-BookOblique
    family: AvantGarde
    style: Oblique
    stretch: Normal
    weight: 400
    glyphs: /opt/homebrew/share/ghostscript/fonts/a010033l.pfb
Mark Setchell
  • 191,897
  • 31
  • 273
  • 432