C# gdi+ сомнительный рендеринг шрифта на Win 7C#

Место общения программистов C#
Ответить
Anonymous
 C# gdi+ сомнительный рендеринг шрифта на Win 7

Сообщение Anonymous »

Я пытаюсь отображать какую -то картину, используя GDI+ с динамически загруженными шрифтами. Вот минимальный пример (.net 8.0): < /p>

Код: Выделить всё

private void Form1_Load(object sender, EventArgs e)
{
PrivateFontCollection collection = new();
collection.AddFontFile("Unbounded-Medium.ttf");

Bitmap bitmap = new(1000, 1000);
using (Graphics g = Graphics.FromImage(bitmap))
{
g.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
Font font = new(collection.Families[0], 100, FontStyle.Bold, GraphicsUnit.Point);
g.DrawString("Bbbb", font, Brushes.Red, new PointF(10, 10));
}
pictureBox1.Image = new Bitmap(bitmap, 1000, 1000);
}
Все работает нормально на нескольких машинах Win 10:

Но на Win 7 Machines. Создает следующий выход. (P> p> p> p> . alt = "Введите описание изображения здесь" src = "https://i.sstatic.net/2sq3vvm6.png"/>
По какой -то причине некоторые буквы отображаются ... сомнительно. Другие буквы выглядят нормально. Using trial-and-error approach I've found out that this kind of rendering happens:
  • Only on Win 7 machines
  • Only for font sizes above 70
  • Only for certain fonts (Unbounded-Medium in my case)
  • Only while using GDI+
Я попробовал:

[*] Изменение G.TexTrenderingHint
[*] Добавление stringformat.generictypography параметр trawstring
/> < /ol>
Почему это происходит? Это ошибка Win 7 GDI+? Можно ли решить эту проблему без обновления ОС?

Подробнее здесь: https://stackoverflow.com/questions/797 ... g-on-win-7
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»