C# Language
Включая ресурсы шрифтов
Поиск…
параметры
параметр | подробности |
---|---|
fontbytes | байтовый массив из двоичного .ttf |
Выполнить «Fontfamily» из ресурсов
public FontFamily Maneteke = GetResourceFontFamily(Properties.Resources.manteka);
Интеграционный метод
public static FontFamily GetResourceFontFamily(byte[] fontbytes)
{
PrivateFontCollection pfc = new PrivateFontCollection();
IntPtr fontMemPointer = Marshal.AllocCoTaskMem(fontbytes.Length);
Marshal.Copy(fontbytes, 0, fontMemPointer, fontbytes.Length);
pfc.AddMemoryFont(fontMemPointer, fontbytes.Length);
Marshal.FreeCoTaskMem(fontMemPointer);
return pfc.Families[0];
}
Использование с кнопкой «Button»
public static class Res
{
/// <summary>
/// URL: https://www.behance.net/gallery/2846011/Manteka
/// </summary>
public static FontFamily Maneteke = GetResourceFontFamily(Properties.Resources.manteka);
public static FontFamily GetResourceFontFamily(byte[] fontbytes)
{
PrivateFontCollection pfc = new PrivateFontCollection();
IntPtr fontMemPointer = Marshal.AllocCoTaskMem(fontbytes.Length);
Marshal.Copy(fontbytes, 0, fontMemPointer, fontbytes.Length);
pfc.AddMemoryFont(fontMemPointer, fontbytes.Length);
Marshal.FreeCoTaskMem(fontMemPointer);
return pfc.Families[0];
}
}
public class FlatButton : Button
{
public FlatButton() : base()
{
Font = new Font(Res.Maneteke, Font.Size);
}
protected override void OnFontChanged(EventArgs e)
{
base.OnFontChanged(e);
this.Font = new Font(Res.Maneteke, this.Font.Size);
}
}
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow