Я хочу использовать 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