Используете пользовательские шрифты в GMT (универсальные инструменты сопоставления)?

Я часто использую Generic Mapping Tools (GMT) для создания высококачественных географических карт в формате postscript. Недавно я хотел переключиться со стандартных шрифтов PostScript (Helvetica, Courrier и т. Д., Доступных по умолчанию в GMT) на другие шрифты, которые я установил на свой компьютер.

Я массово искал этот вопрос в Google, и все, что я обнаружил, это то, что можно использовать пользовательские шрифты следующим образом:

  1. Создайте файл CUSTOM_font_info.d в локальном каталоге или в share / pslib GMT каталога GMT и укажите имя, размер и кодировку пользовательского шрифта.

      # CUSTOM_font_info.d
    
      YourCustomFont     0.700    0
    
  2. В вашем сценарии bash установите переменную FONT с вашим пользовательским шрифтом (gmt set FONT YourCustomFont)

Как только я это сделал, я выполнил свой сценарий GMT, никаких предупреждений или ошибок не произошло, но шрифт на моем рисунке не тот, который мне нужен. Кто-нибудь видит, что происходит?

Кстати, я использую GMT 5.1.2 под Mac OS X 10.11.2, а шрифт, который я хочу использовать, - CMU Sans Serif (загружается как в форматах .tff, так и .dfont).


person Léonard    schedule 29.01.2016    source источник
comment
После небольшого поиска, я сделал способ установить переменную FONT, похоже, gmt gmtset FONT YourCustomFont. Это то, что вы пробовали?   -  person Etan Reisner    schedule 29.01.2016
comment
Да, я так и поступил. Что странно, когда GMT не находит шрифт, он обычно возвращает предупреждающее сообщение, в котором говорится, что шрифт используется вместо этого. В моем случае у меня нет предупреждающего сообщения, но шрифт установлен по умолчанию.   -  person Léonard    schedule 30.01.2016


Ответы (1)


Я только что столкнулся с теми же симптомами, и мне удалось решить проблему. В моем случае шрифт, который я хотел использовать, был Libris ADF Std. я имел

LibrisADFStd 0.7 0

в файле определения шрифта и

gmt set FONT LibrisADFStd

в моем сценарии GMT. Я проверил имя с помощью fc-list в своей системе Ubuntu 16.04. Как и вы, я обнаружил, что файл обработан без ошибок или предупреждений, но выходной файл не отображался с желаемым шрифтом - он вернулся к Courier. Однако шрифт явно был найден, поскольку указание несуществующего шрифта действительно вызывает предупреждение от GMT.

В конце концов я обнаружил, что у шрифта есть «имя PostScript», которое отличается от его обычного системного имени. Запуск fc-query в файле OTF шрифта дал, среди множества других результатов, следующее:

postscriptname: "LibrisADFStd-Regular"(s)

Изменение LibrisADFStd на LibrisADFStd-Regular в файле определения шрифта GMT и скрипте позволило GMT успешно использовать шрифт.

person Pont    schedule 19.04.2017
comment
Спасибо за Ваш ответ. Я попытался применить ваш рецепт: он все еще не работает, но теперь я получаю ту же ошибку, что и в первом сообщении этого обсуждения. Попытка применить решения, представленные в обсуждении, не меняет результатов. - person Léonard; 08.05.2017