Пользовательский шрифт для текста в диаграммах Haskell - PullRequest
0 голосов
/ 01 июля 2018

Я использую библиотеку диаграмм, чтобы сгенерировать какой-либо текст с помощью собственного шрифта. Глядя на документацию для Text , не ясно, как можно указать конкретный файл шрифта .ttf? Я пытался использовать разные файлы .ttf, как в примере ниже, но никто не работал.

discountText :: Maybe Int -> Diagram B
discountText discount =
  case discount of
    Nothing -> mempty
    Just value ->
      text (show value ++ " %") # font "Roboto-Light.ttf" # fontSize 90

Другая альтернатива выглядит как SVGFonts , но я бы хотел добиться этого без другой библиотеки. Итак, как вы, ребята, устанавливаете пользовательские шрифты в диаграммах?

UPD: ответ, представленный ниже, очень объяснителен. Чтобы решить проблему, я фактически использовал SVGFonts , который добавляет дополнительный шаг преобразования .ttf в .svg, но выполняет свою работу.

1 Ответ

0 голосов
/ 01 июля 2018

Обработка шрифтов в Diagrams сильно зависит от серверной части. diagrams-cairo должен иметь возможность использовать любой шрифт TTF в вашей системе. В Linux он будет искать имена с помощью FontConfig. Он должен использовать предоставленный ОС механизм поиска шрифтов в других ОС, но я не могу вспомнить, чтобы когда-либо сам проверял это.

Какой бэкэнд вы планируете использовать? Я неравнодушен к diagrams-cairo для обработки текста, но это самый сложный бэкэнд для установки, особенно на не-Linux. Скорее всего, улучшены и другие бэкэнды с тех пор, как в последний раз я проверял их обработку текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...