![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]()
![]() |

|
| Knowledge Base Most common error and how to trouble shoot them off |
![]() |
|
Font Saved As String
|
LinkBack | Thread Tools | Display Modes |
|
|
#1 (permalink) |
|
Fixed Error!
Posts: 141
Location: Chennai
Join Date: Feb 2007
Rep Power: 2
IM:
|
I have saved a font from a richtextbox as a string, which I also store in a sql table. i.e. savedfont = Richtextbox.font.tostring Later if I want to reload the font from the sql table, how do I reapply that font back to the richtextbox i.e. richtextbox.font = xxxxxxxxxx Can I do it like this and if so please let me know how ? |
|
|
|
|
|
|
|
|
#2 (permalink) |
|
Fixed Error!
Posts: 141
Location: Chennai
Join Date: Feb 2007
Rep Power: 2
IM:
|
The .Font property is of type System.Drawing.Font. The .ToString function gathers many of the fonts properties and places them into a string. You would have to use quite a bit of code to split this string up, and write its properties. Are you after the specific font including all its properties (eg. Bold, Font-Size, etc...) or just the font name? If its just the font name you need, simply save: RichTextBox.Font.FontFamily.Name in the database, then reconstruct it using: RichTextBox.Font = New Font(savedfont, 12) Where 12 is an arbitary font size. You could save several of the important font settings in different columns (such as FontFamily, Size, Style) Otherwise you would need to use the following use the String.Split to split the "," and "=" characters. Then contruct your font using the "New Font(your variables here)" syntax. Of course another method might be to use serialization (where an object is converted to binary or string format), but unfortunitly XML serialization wont directly work with this example (as the Font class doesn't have a parameter-less constructor. Another simple way might be to create your own (easy to un-crypt) string (similar to Serializing, but customised): '' Saving font from Me.RichTextBox1.Font Dim strSavedFont As String With Me.RichTextBox1.Font strSavedFont = String.Format("{0},{1},{2},{3},{4}", New Object() {.FontFamily.Name.ToString, .Size.ToString, Convert.ToInt32(.Style), Convert.ToInt32(.Unit), .GdiCharSet.ToString}) End With MsgBox(Me.RichTextBox1.Font.ToString) '' Save strSavedFont to Database '' Database Code HERE '' Load strSavedFont from Database Dim objReturnedFont As Font Dim strFontValues() As String = strSavedFont.Split(",") objReturnedFont = New Font(strFontValues(0), strFontValues(1), Convert.ToInt32(strFontValues(2)), Convert.ToInt32(strFontValues(3)), Convert.ToByte(strFontValues(4))) MsgBox(objReturnedFont.ToString) '' objReturnedFont is identical to the origional font |
|
|
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | |
|
|