如何以编程方式访问该字体

时间:2017-11-03 10:22:11

标签: c# asp.net fonts gdi+ plesk

我试图以编程方式访问某个字体,因为我无法在共享主机上安装字体

我使用此代码

    Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load

    Dim collection As New PrivateFontCollection()
    collection.AddFontFile(Server.MapPath("~\ShadowsIntoLight.ttf"))

    Dim image As New Bitmap(500, 500)
    Dim g As Graphics = Graphics.FromImage(image)

    Dim RedBrush As New SolidBrush(Color.Black)
    Dim drawFont As New Font("Shadows Into Light", 36)

    g.DrawString("the lazy fox jumped over the brown log", drawFont, RedBrush, 0, 100)

    Dim path As String = Server.MapPath("~/image.png")
    image.Save(path, ImageFormat.Png)
    g.Dispose()
    image.Dispose()

    Response.Write("<img src=""image.png""/>")

End Sub

但它始终显示Arial字体。 如何让它显示特定字体

谢谢

1 个答案:

答案 0 :(得分:0)

你能在后台使用CSS吗? 在&#39; Fonts文件夹中将自定义字体添加到您的解决方案中。 &GT;将现有项添加到visual studio中的fonts文件夹

示例:(使用我下载的随机字体)

@font-face{
font-family: myFont;
src: url(/Fonts/Belleza-Regular.ttf);

}

.MyClass{
color:green;
font-family: myFont;
 }

然后将此字体附加到代码中的任何位置?

myControl.CssClass = "MyClass" etc..



可能比你想要的方式稍微长一点,只有当你附加到控件上时才有效,但这可能是一个很好的解决方法。

修改

也许是这样的? Using custom TTF font for DrawString image rendering