Маленькие заглавные буквы / несколько шрифтов и жирный шрифт с использованием DrawString в GDI + - PullRequest
1 голос
/ 09 марта 2009

Я хочу написать некоторый текст, используя smallcaps в сочетании с разными шрифтами для разных слов.

Чтобы уточнить, мне может понадобиться сообщение "Добро пожаловать на наш новый веб-сайт", которое генерируется в PNG-файл для заголовка страницы.

  • Текст будет smallcaps - все написано заглавными буквами, но 'W', 'N' и 'W' немного больше.
  • Новый веб-сайт будет отличаться от остального текста.

Есть ли способ, которым я могу сделать это, не делая это полностью вручную?

Делать что-то подобное концептуально я хочу:

 graphics.DrawString("<font size=2>W</font>ELCOME TO OUR <b><font size=2>N</font>" +
                     "EW <font size=2>W</font>EBSITE</b>");

Лучший подход, который я смог найти до сих пор здесь , но я боюсь, что приложу все усилия, чтобы сделать это вручную, и в итоге получу ужасный кернинг или трекинг проблемы.

Редактировать: Я должен был упомянуть, что это делается в ASP.NET, поэтому он должен быть быстрым и максимально гибким. Я хочу, чтобы это было автоматизировано, чтобы я мог легко локализоваться и не создавать тонны маленьких изображений.

1 Ответ

0 голосов
/ 09 марта 2009

Кажется, что вы действительно должны использовать RichTextBox здесь ... есть метод для извлечения растрового изображения из RichTextBox, который вы можете затем представить в виде растрового изображения в вашем графическом контексте. Конечно, вам нужно сделать Managed C ++ здесь, и я не знаю, сможете ли вы сделать это в вашем проекте.

В противном случае, я думаю, вам нужно будет сделать это вручную с DrawString и MeasureString, что является болью.

...