gdi32.dll Проблема создания шрифта "CreateFontIndirect" - PullRequest
0 голосов
/ 06 января 2020

Я хочу использовать CreateFontIndirect для создания шрифта в C# Программе. но LOGFONT не имеют FontSize. у него просто есть lfHeight

Так что я поставил fontSize на lfHeight. Затем окончательный размер шрифта изменился.

Я думал, FontSize и lfHeight - это одно и то же, но кажется, что они разные.

Как конвертировать?

[DllImport("gdi32.dll", CharSet = CharSet.Auto)]
public static extern IntPtr CreateFontIndirect([In, MarshalAs(UnmanagedType.LPStruct)]LOGFONT lplf);

LOGFONT lf = new LOGFONT();
lf.lfHeight = (int)temp.TextFont.Size;
IntPtr handle = CreateFontIndirect(lf);

Font font = Font.FromHfont(handle);
// font.FontSize != temp.TextFont.Size !!!!!!Different size
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...