Ошибка пользовательских шрифтов в c # - PullRequest
0 голосов
/ 03 мая 2018

У меня проблема при загрузке пользовательских шрифтов в winforms с помощью c #.

Ниже моя реализация:

public Form2()
{
    InitializeComponent();

    //font
    {
        PrivateFontCollection pfc = new PrivateFontCollection();
        int fontLength = Properties.Resources.ARCADECLASSIC.Length;
        byte[] fontdata = Properties.Resources.ARCADECLASSIC;
        IntPtr data = Marshal.AllocCoTaskMem(fontLength);
        Marshal.Copy(fontdata, 0, data, fontLength);
        pfc.AddMemoryFont(data, fontLength);
        button12.Font = new Font(pfc.Families[0], button12.Font.Size);
        button9.Font = new Font(pfc.Families[0], button9.Font.Size);
        label1.Font = new Font(pfc.Families[0], label1.Font.Size);
        button5.Font = new Font(pfc.Families[0], button5.Font.Size);
        button1.Font = new Font(pfc.Families[0], button1.Font.Size);
        button3.Font = new Font(pfc.Families[0], button3.Font.Size);
        button4.Font = new Font(pfc.Families[0], button4.Font.Size);
    }
}

Работает, но иногда вместо текста появляется красный крестик:

enter image description here

Какое решение для этого? Я выхожу из области видимости?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...