GodFull
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Пытаюсь подключить кастомные шрифты из ресурсов проекта
Склепал функцию с гайдов из интернета
Использую так -> CustomFontTest(Properties.Resources.MuseoSansCyrl_2.Length, Properties.Resources.MuseoSansCyrl_2, customLabel3, 11);
Также сделал кастомный label с сглаживанием текста
Все работает но когда я пытаюсь подключить шрифты к более чем 15 лабелям мне кидает ошибку:
'Была сделана попытка чтения или записи в защищенную память. Это часто указывает на то, что память другая.
Ошибку кидает в районе кода с кастомным лабелем
Запуск от имени админа не помогает, менял через манифест
Не знаю что делать, менять все лабели на стандартные?
UPD теперь проблема с любым количеством лабелев
Склепал функцию с гайдов из интернета
C#:
void CustomFontTest(int fontLenght, byte[] fontData, Label label, int FontSize)
{
PrivateFontCollection pfc = new PrivateFontCollection();
int fontLength = fontLenght;
byte[] fontdata = fontData;
System.IntPtr data = Marshal.AllocCoTaskMem(fontLength);
Marshal.Copy(fontdata, 0, data, fontLength);
pfc.AddMemoryFont(data, fontLength);
label.Font = new Font(pfc.Families[0], FontSize);
}
Также сделал кастомный label с сглаживанием текста
Код:
public class CustomLabel : Label
{
private TextRenderingHint _hint = TextRenderingHint.AntiAlias;
public TextRenderingHint TextRenderingHint
{
get { return this._hint; }
set { this._hint = value; }
}
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.TextRenderingHint = TextRenderingHint;
base.OnPaint(e);
}
}
Пожалуйста, авторизуйтесь для просмотра ссылки.
:'Была сделана попытка чтения или записи в защищенную память. Это часто указывает на то, что память другая.
Ошибку кидает в районе кода с кастомным лабелем
Запуск от имени админа не помогает, менял через манифест
Не знаю что делать, менять все лабели на стандартные?
UPD теперь проблема с любым количеством лабелев