Хобрук: Ваш путь к мастерству в программировании

Капители/несколько шрифтов и полужирный шрифт с использованием DrawString в GDI+

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

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

  • Текст будет маленькими заглавными буквами - все пишется с большой буквы, кроме букв "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

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

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

09.03.2009
  • это ASP.NET :-) я добавлю это выше! 09.03.2009
  • ну, я думаю, вторая часть вашего ответа верна :) я пытаюсь повысить коэффициент приема 15.04.2010
  • Новые материалы

    Шлюз с лицензией OSS, совместимый с Apollo Federation v2, появится в WunderGraph
    Сегодня мы рады сообщить, что мы сотрудничаем с поддерживаемой YC Tailor Technologies, Inc. для внедрения Apollo Federation v2. Реализация будет лицензирована MIT (Engine) и Apache 2.0..

    Это оно
    Ну, я официально уволился с работы! На этой неделе я буду лихорадочно выполнять последние требования Думающего , чтобы я мог сосредоточиться на поиске работы. Что именно это значит?..

    7 полезных библиотек JavaScript, которые вы должны использовать в своем следующем проекте
    Усильте свою разработку JavaScript Есть поговорка «Не нужно изобретать велосипед». Библиотеки — лучший тому пример. Это поможет вам написать сложные и трудоемкие функции простым способом...

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

    C в C.R.U.D с использованием React-Redux
    Если вы использовали React, возможно, вы знакомы с головной болью, связанной с обратным потоком данных. Передача состояния реквизитам от родительских компонентов к дочерним компонентам может..

    5 обязательных элементов современного инструмента конвейера данных
    В цифровом мире предприятия используют конвейеры данных для перемещения, преобразования и хранения огромных объемов данных. Эти конвейеры составляют основу бизнес-аналитики и играют..

    Случай использования npm3 вместо npm2 для разработки библиотеки
    Некоторое время назад я создал библиотеку на NodeJS, чтобы упростить рендеринг на стороне сервера и клиента. Он использует React и React Router для отображения соответствующего HTML на веб-сайте...