好吧,所以我正在嘗試爲我的程序使用私人收藏集來爲其添加一點獨特性。我使用的字體默認情況下未安裝在計算機上。字體的名字是youmurdererbb_reg。我有資源文件夾中的字體文件,該文件是.ttf格式。以下是我迄今爲止:(VB.net)如何爲私人字體使用.ttf(字體)文件收集
Imports System.Drawing
Imports System.Windows.Forms
Imports System.Drawing.Text
Imports System.Text
Dim pc As New PrivateFontCollection
Private Sub Main_Menu_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Try
pc.AddFontFile(YouMurderer)
Catch ex As Exception
Trace.WriteLine(ex.ToString)
End Try
End Sub
Private Sub Main_Menu_Paint(sender As Object, e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
Dim Fnt As Font = New Font(pc.Families(0), 80, FontStyle.Regular)
e.Graphics.DrawString("This is the text that is being drawn", Fnt, Brushes.Black, 10, 10)
End Sub
現在在哪裏聲明的私人字體集,我曾嘗試這些不同的東西,得到它的工作:
Dim YouMurderer As String = Encoding.ASCII.GetString(My.Resources.youmurdererbb_reg)
Dim YouMurderer As String = Convert.ToString(My.Resources.youmurdererbb_reg)
Dim YouMurderer As String = Convert.ToBase64String(My.Resources.youmurdererbb_reg)
Dim YouMurderer As String = Encoding.UTF8.GetString(My.Resources.youmurdererbb_reg)
但哪一個我選擇,它只是顯示整個形式與一個大的紅色「X」(像一個pictureboxes「ErrorImage」)(我有一個圖片設置爲表單背景作爲附加信息)。
另一個問題是,如果我不嘗試將其轉換:
Value of type '1-dimensional array of Byte' cannot be converted to 'String'.
我需要這方面的幫助。NET(:
Dim YouMurderer As String = My.Resources.youmurdererbb_reg
然後將其與的錯誤出現框架4)!整個程序正在使用VB.net編寫,而不是C#或C++或JAVA。
Hrmmm,我安裝了nuget和bizark軟件包,但是,它沒有將FontUtil識別爲任何已聲明的函數。有什麼我應該先導入? – 2012-02-10 19:28:28
您將要導入名稱空間。它應該是@Import BizArk.Core.Util(來自內存:) – Brian 2012-02-10 19:34:26
順便說一句,我剛剛在我上面的例子中猜到了字體的名字,你可能需要弄清楚你需要使用哪個名字,這並不總是一個簡單的任務。 – Brian 2012-02-10 19:35:55