convert -size 300x50 xc:none -font Arial -pointsize 20 -gravity center -draw "fill white text 1,1 \"$1\" text 0,0 \"$1\" fill black text -1,-1 \"$1\"" $WATERMARK_FILE
Выше команды приводит к следующей ошибке:
convert.im6: unable to read font `Arial' @ warning/annotate.c/RenderType/853.
Я искал в Интернете и обнаружил, что многие пользователи видели эту ошибку, но не нашли никакого решения. Кто-нибудь может помочь?
ПРИМЕЧАНИЕ 1. В моей системе установлен шрифт Arial:
$ fc-list | grep -i arial
/usr/share/fonts/truetype/msttcorefonts/Arial_Italic.ttf: Arial:style=Italic,Cursiva,kurzíva,kursiv,Πλάγια,Kursivoitu,Italique,Dőlt,Corsivo,Cursief,Kursywa,Itálico,Курсив,İtalik,Poševno,nghiêng,Etzana
/usr/share/fonts/truetype/msttcorefonts/ariblk.ttf: Arial Black:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
/usr/share/fonts/truetype/msttcorefonts/Arial.ttf: Arial:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,thường,Arrunta
/usr/share/fonts/truetype/msttcorefonts/arialbd.ttf: Arial:style=Bold,Negreta,tučné,fed,Fett,Έντονα,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,Полужирный,Fet,Kalın,Krepko,đậm,Lodia
/usr/share/fonts/truetype/msttcorefonts/Arial_Bold_Italic.ttf: Arial:style=Bold Italic,Negreta cursiva,tučné kurzíva,fed kursiv,Fett Kursiv,Έντονα Πλάγια,Negrita Cursiva,Lihavoitu Kursivoi,Gras Italique,Félkövér dőlt,Grassetto Corsivo,Vet Cursief,Halvfet Kursiv,Pogrubiona kursywa,Negrito Itálico,Полужирный Курсив,Tučná kurzíva,Fet Kursiv,Kalın İtalik,Krepko poševno,nghiêng đậm,Lodi etzana
/usr/share/fonts/truetype/msttcorefonts/arialbi.ttf: Arial:style=Bold Italic,Negreta cursiva,tučné kurzíva,fed kursiv,Fett Kursiv,Έντονα Πλάγια,Negrita Cursiva,Lihavoitu Kursivoi,Gras Italique,Félkövér dőlt,Grassetto Corsivo,Vet Cursief,Halvfet Kursiv,Pogrubiona kursywa,Negrito Itálico,Полужирный Курсив,Tučná kurzíva,Fet Kursiv,Kalın İtalik,Krepko poševno,nghiêng đậm,Lodi etzana
/usr/share/fonts/truetype/msttcorefonts/Arial_Black.ttf: Arial Black:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
/usr/share/fonts/truetype/msttcorefonts/Arial_Bold.ttf: Arial:style=Bold,Negreta,tučné,fed,Fett,Έντονα,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,Полужирный,Fet,Kalın,Krepko,đậm,Lodia
/usr/share/fonts/truetype/msttcorefonts/ariali.ttf: Arial:style=Italic,Cursiva,kurzíva,kursiv,Πλάγια,Kursivoitu,Italique,Dőlt,Corsivo,Cursief,Kursywa,Itálico,Курсив,İtalik,Poševno,nghiêng,Etzana
ПРИМЕЧАНИЕ 2. Изменение регистра в имени шрифта ( arial
вместо Arial
) не помогает.
ПРИМЕЧАНИЕ 3. Использование абсолютного пути к файлу шрифта с полным именем файла шрифта ( filename.fileextension
) устраняет ошибку:
convert -size 300x50 xc:none -font "/usr/share/fonts/truetype/msttcorefonts/Arial.ttf" -pointsize 20 -gravity center -draw "fill white text 1,1 \"$1\" text 0,0 \"$1\" fill black text -1,-1 \"$1\"" $WATERMARK_FILE
fonts
imagemagick
convert-command
Учитель PHP
источник
источник
fc-list | grep -i arial
. Команда, которую вы показываете, сработала для меня без ошибок. У вас установлен Arial?arial
или имя немного отличается. Вы также должны иметьmsttcorefonts
установленное, я думаю.Ответы:
Arial не является бесплатным шрифтом. Его условия использования на платформах с открытым исходным кодом, таких как Linux и Ubuntu, делают невозможным распространение как часть установки. Вы должны использовать одну из бесплатных / открытых альтернатив, таких как Освобождение.
Вы можете перечислить шрифты, которые у вас есть
convert -list font
. Например:источник
$ convert -list font | grep "Font:" | grep Arial
команду , и это привело:Font: Arial-Black-Regular Font: Arial-Bold Font: Arial-Bold-Italic Font: Arial-Italic Font: Arial-Regular
. Таким образом, я понимаю, что должен использовать «Arial-Regular» вместо «Arial» в качестве имени шрифта. Пожалуйста, обновите свой ответ!У меня та же проблема с моим Macbook сегодня. Причина этого проста.
convert использует только известные шрифты. Все известные шрифты для преобразования перечислены с этой командой.
Мой нужный шрифт был в
~/Library/Fonts
. новообращенный не перечислил это.Я следовал инструкциям Марка Сетчелла и был способен генерировать мой
type.xml
.Запись для моего шрифта в type.xml
Я могу использовать имя или абсолютный путь для создания моего изображения.
источник