1 | Imports System.Drawing |
2 | Imports System.Drawing.Text |
3 | Imports System.Drawing.Imaging |
4 | Imports System.Drawing.Drawing2D |
5 | |
6 | |
7 | |
8 | Public Class LoadFont |
9 | Inherits System.Web.UI.Page |
10 | |
11 | Web Form Designer Generated Code |
25 | |
26 | Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load |
27 | |
28 | Dim pic As New System.Drawing.Bitmap(320, 200, PixelFormat.Format24bppRgb) |
29 | Dim g As Graphics = Graphics.FromImage(pic) |
30 | g.Clear(Color.White) |
31 | g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias |
32 | g.SmoothingMode = SmoothingMode.AntiAlias ' antialias objects |
33 | |
34 | |
35 | Dim pointF As New PointF(10, 0) |
36 | Dim solidBrush As New SolidBrush(Color.Black) |
37 | |
38 | Dim familyName As String = "lazy dog" |
39 | Dim familyNameAndStyle As String |
40 | |
41 | Dim privateFontCollection As New PrivateFontCollection() |
42 | |
43 | ' to load in the font add the font file to the private collection. |
44 | privateFontCollection.AddFontFile(Server.MapPath("./lazydog.ttf")) |
45 | |
46 | Dim thisFont As FontFamily = privateFontCollection.Families(0) |
47 | |
48 | ' Is the regular style available? |
49 | If thisFont.IsStyleAvailable(FontStyle.Regular) Then |
50 | familyNameAndStyle = thisFont.Name & " Regular" |
51 | Dim regFont As New Font(thisFont, 24, FontStyle.Regular, GraphicsUnit.Pixel) |
52 | g.DrawString(familyNameAndStyle, regFont, solidBrush, pointF) |
53 | pointF.Y += regFont.Height |
54 | End If |
55 | |
56 | ' Is the bold style available? |
57 | If thisFont.IsStyleAvailable(FontStyle.Bold) Then |
58 | familyNameAndStyle = thisFont.Name & " Bold" |
59 | Dim boldFont As New Font(thisFont, 24, FontStyle.Bold, GraphicsUnit.Pixel) |
60 | g.DrawString(familyNameAndStyle, boldFont, solidBrush, pointF) |
61 | pointF.Y += boldFont.Height |
62 | End If |
63 | |
64 | ' Is the italic style available? |
65 | If thisFont.IsStyleAvailable(FontStyle.Italic) Then |
66 | familyNameAndStyle = thisFont.Name & " Italic" |
67 | Dim italicFont As New Font(thisFont, 24, FontStyle.Italic, GraphicsUnit.Pixel) |
68 | g.DrawString(familyNameAndStyle, italicFont, solidBrush, pointF) |
69 | pointF.Y += italicFont.Height |
70 | End If |
71 | |
72 | ' Is the bold italic style available? |
73 | If thisFont.IsStyleAvailable(FontStyle.Italic) And _ |
74 | thisFont.IsStyleAvailable(FontStyle.Bold) Then |
75 | familyNameAndStyle = thisFont.Name & " BoldItalic" |
76 | Dim italicFont As New Font(thisFont, 24, FontStyle.Italic Or FontStyle.Bold, GraphicsUnit.Pixel) |
77 | g.DrawString(familyNameAndStyle, italicFont, solidBrush, pointF) |
78 | pointF.Y += italicFont.Height |
79 | End If |
80 | |
81 | ' Is the underline style available? |
82 | If thisFont.IsStyleAvailable(FontStyle.Underline) Then |
83 | familyNameAndStyle = thisFont.Name & " Underline" |
84 | Dim underlineFont As New Font(thisFont, 24, FontStyle.Underline, GraphicsUnit.Pixel) |
85 | g.DrawString(familyNameAndStyle, underlineFont, solidBrush, pointF) |
86 | pointF.Y += underlineFont.Height |
87 | End If |
88 | |
89 | ' Is the strikeout style available? |
90 | If thisFont.IsStyleAvailable(FontStyle.Strikeout) Then |
91 | familyNameAndStyle = thisFont.Name & " Strikeout" |
92 | Dim strikeFont As New Font(thisFont, 24, FontStyle.Strikeout, GraphicsUnit.Pixel) |
93 | g.DrawString(familyNameAndStyle, strikeFont, solidBrush, pointF) |
94 | End If |
95 | |
96 | ' set the content type |
97 | Response.ContentType = "image/gif" |
98 | |
99 | ' send the image to the viewer |
100 | pic.Save(Response.OutputStream, ImageFormat.Gif) |
101 | |
102 | ' tidy up |
103 | pic.Dispose() |
104 | |
105 | End Sub |
106 | |
107 | End Class |