如何在visual studio 2008中为C#.net窗口应用程序使用自定义字体?

如何在visual studio 2008中为C#.net窗口应用程序使用自定义字体?,c#,winforms,fonts,C#,Winforms,Fonts,我想在Windows应用程序中使用印度字体(印地语)。当我对印地语文本使用Mangal字体时,文本可见,但为块格式 所以任何人都可以帮我 您可以使用以下代码: YourMainForm.YourTextBox.Font = new Font("Your name of indian font", YourMainForm.YourTextBox.Font.Size); 创建新的windows窗体项目,并在For

我想在Windows应用程序中使用印度字体(印地语)。当我对印地语文本使用Mangal字体时,文本可见,但为块格式

所以任何人都可以帮我

您可以使用以下代码:

YourMainForm.YourTextBox.Font = new Font("Your name of indian font", 
                                         YourMainForm.YourTextBox.Font.Size);

创建新的windows窗体项目,并在Form.OnLoad处理程序中添加以下行:

PrivateFontCollection pfc = new PrivateFontCollection();
string fontFilePath = "C:\\Fonts\\PALETX3.ttf"
pfc.AddFontFile(fontFilePath);
label1.Font = new Font(pfc.Families[0], 16, FontStyle.Regular);
您可以从中找到更多信息

确保您使用的字体支持控件中的Unicode字符。您可以使用windows实用程序角色映射找到这一点


一些旧字体具有特定代码页的字符,但不具有Unicode字符。例如,windows font Marlett仅定义了几个Unicode字符,其余字符将显示为屏幕截图中的框。如果是这种情况,最好的办法是找到新的Unicode版本的字体。虽然理论上你可以使用字体编辑软件自己创建一个新版本(字形已经在里面了),但这并不容易。祝您好运:)

您的系统上确实安装了这种字体吗?WinForms应用程序中是否正确显示了字体中的任何字符?是的,因为我已经在系统中安装了该字体。当字体没有您试图显示的字符的标志符号时,您会看到矩形。使用Charmap.exe小程序查看哪些Unicode代码点对字体有效。@用户:如何在windows窗体中键入kannada字体,请帮助我您需要更改行标签1.font=新字体(pfc.Families[0],16,FontStyle.Regular);匹配您的文本框