devxlogo

Setting the font family of the selected text of a RichTextBox

Setting the font family of the selected text of a RichTextBox

' Set the specified font to the selection of a RichTextBox' Note: require GetSafeStyleForFontFamily'' Example: SetFontFamily(richTextBox1, "Times New Roman")Public Sub SetFontFamily(ByVal rtb As RichTextBox, ByVal fontName As String)    Dim fontFam As New System.Drawing.FontFamily(fontName)    Dim style As System.Drawing.FontStyle    ' if the selection length is > 0, work char by char    If rtb.SelectionLength > 0 Then        Dim selStart As Integer = rtb.SelectionStart        Dim selLength As Integer = rtb.SelectionLength        Dim i As Integer        For i = 0 To selLength - 1            ' select 1 char            rtb.Select(selStart + i, 1)            ' get the font style of the selected char            style = GetSafeStyleForFontFamily(fontFam, rtb.SelectionFont.Style)            ' create and assign to the char a new font with the new style            rtb.SelectionFont = New Font(fontFam, rtb.SelectionFont.Size, style)        Next        ' reselect the original selection        rtb.Select(selStart, selLength)    Else        ' get a safe style of the selection        style = GetSafeStyleForFontFamily(fontFam, rtb.SelectionFont.Style)        ' assign the new font        rtb.SelectionFont = New Font(fontFam, rtb.SelectionFont.Size, style)    End IfEnd Sub

devx-admin

Share the Post: