Использовать разные веса шрифта?

1

У меня есть приложение asp.net, и я использую собственный шрифт, однако мне нужно использовать как жирную версию, так и легкую версию шрифта. Они оба из одного семейства шрифтов. Я добавляю их так:

protected PrivateFontCollection pfc = new PrivateFontCollection();

pfc.AddFontFile(HttpContext.Current.Server.MapPath(@"~\Content\Fonts\Exo-Bold.ttf"));
pfc.AddFontFile(HttpContext.Current.Server.MapPath(@"~\Content\Fonts\Exo-Light.ttf"));

Font questionFont = new Font(pfc.Families[0], 32, FontStyle.Regular, GraphicsUnit.World);

Хотя я добавляю два файла шрифтов, в массиве семейств pfc есть только один элемент, поэтому все выделяется полужирным шрифтом независимо от того, что я указываю FontStyle. Как я могу использовать оба файла, которые я добавил, и как я могу сделать некоторые вещи смелыми, а некоторые вещи светятся?

  • 0
    использует правило css @ font-face? stackoverflow.com/questions/2436749/...
  • 0
    Нет, так как мне нужно использовать метод DrawString для объекта Graphics ...
Теги:
true-type-fonts

1 ответ

0

Не нужно добавлять один и тот же шрифт дважды с разными стилями. Большинство шрифтов поддерживают несколько стилей. Arial.ttf прекрасно работает при добавлении только что-то вроде Arial.ttf.

Font regularFont = new Font(pfc.Families[0], 32, FontStyle.Regular, GraphicsUnit.World);
Font boldFont = new Font(pfc.Families[0], 32, FontStyle.Bold, GraphicsUnit.World);
  • 0
    Как я могу получить «Light» версию шрифта? К сожалению, я уже попробовал вышеуказанный подход и не могу получить желаемых результатов.
  • 0
    Я не уверен, какой шрифт вы используете, но если вы посмотрите на распространенные шрифты, установленные в вашей системе, то нет отдельных версий, выделенных жирным шрифтом или курсивом. Если это проблема с вашим шрифтом, я бы просто не использовал PrivateFontCollection .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню