Я считаю, что Photoshop делает передискретизацию. Возможно, вы не сможете получить результаты, столь же хорошие, как в Photoshop - у него есть улучшенные алгоритмы привязки к пикселям, и, вероятно, такие вещи, как незначительное увеличение контуров для получения более темного результата - но если SmoothingMode.AntiAlias
(как предложил Джордж) недостаточно, вы можете попробовать эти шаги, чтобы увидеть, получают ли они желаемый результат.
- Создайте новый
Font
размером в два раза больше того, что вы хотите получить.
- Измерьте текст, используя больший шрифт, и создайте
Bitmap
этого размера. Обязательно создайте его в формате, поддерживающем альфа-прозрачность.
- Нарисуйте текст к вашему
Bitmap
(в (0, 0)). (Вы, вероятно, хотите использовать SmoothingMode.AntiAlias
здесь.)
- Нарисуйте
Bitmap
к конечной цели, уменьшив ее на 50%. Убедитесь, что вы используете высококачественный режим изменения размера.
Это даст больше эффекта "сглаживания" из вашего образца изображения, потому что вы в основном рисуете в субпиксельную сетку. Ваши результаты могут отличаться - вам может потребоваться нарисовать на (0, 1) вместо (0, 0), чтобы он выглядел достаточно резким, и вам может понадобиться настроить размер шрифта. Вы могли бы даже попробовать рисовать 3x вместо 2x, но вы не получите большой выгоды от того, чтобы идти дальше, чем это.
Большое беспокойство вызывает то, что ваш текст может получиться недостаточно темным - если линии прорисовываются с шириной 1 пиксель в 2х размере, то в конечном результате они будут только на 50% черными. Лучший способ справиться с этим - выбрать шрифт с более толстыми линиями. Вы также можете попробовать перерисовать текст в вашем Bitmap
- нарисуйте его один раз в (0, 0), затем снова в (0, 1) или (1,0) - чтобы увидеть, достаточно ли это утолщает линии, чтобы выглядеть хорошо, как только вы уменьшите размер. Вам придется экспериментировать.
Я бы не рекомендовал это для рисования текста общего назначения (где пользователь выбирает макет и размер шрифта), но если вы можете полностью контролировать размер шрифта, вы можете, вероятно, настроить это, чтобы получить довольно хороший результат результаты.