-
Notifications
You must be signed in to change notification settings - Fork 4
/
Styles.vb
82 lines (75 loc) · 4.38 KB
/
Styles.vb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
Imports DevExpress.XtraRichEdit.API.Native
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Threading.Tasks
Namespace RichEditAPISample.CodeExamples
Friend Class StylesActions
Private Shared Sub CreateNewCharacterStyle(ByVal document As DevExpress.XtraRichEdit.API.Native.Document)
#Region "#CreateNewCharacterStyle"
document.LoadDocument("Documents//Grimm.docx", DevExpress.XtraRichEdit.DocumentFormat.OpenXml)
Dim cstyle As DevExpress.XtraRichEdit.API.Native.CharacterStyle = document.CharacterStyles("MyCStyle")
If cstyle Is Nothing Then
cstyle = document.CharacterStyles.CreateNew()
cstyle.Name = "MyCStyle"
cstyle.Parent = document.CharacterStyles("Default Paragraph Font")
cstyle.ForeColor = System.Drawing.Color.DarkOrange
cstyle.Strikeout = DevExpress.XtraRichEdit.API.Native.StrikeoutType.[Double]
cstyle.FontName = "Verdana"
document.CharacterStyles.Add(cstyle)
End If
Dim myRange As DevExpress.XtraRichEdit.API.Native.DocumentRange = document.Paragraphs(CInt((0))).Range
Dim charProps As DevExpress.XtraRichEdit.API.Native.CharacterProperties = document.BeginUpdateCharacters(myRange)
charProps.Style = cstyle
document.EndUpdateCharacters(charProps)
#End Region ' #CreateNewCharacterStyle
End Sub
Private Shared Sub CreateNewParagraphStyle(ByVal document As DevExpress.XtraRichEdit.API.Native.Document)
#Region "#CreateNewParagraphStyle"
document.LoadDocument("Documents//Grimm.docx", DevExpress.XtraRichEdit.DocumentFormat.OpenXml)
Dim pstyle As DevExpress.XtraRichEdit.API.Native.ParagraphStyle = document.ParagraphStyles("MyPStyle")
If pstyle Is Nothing Then
pstyle = document.ParagraphStyles.CreateNew()
pstyle.Name = "MyPStyle"
pstyle.LineSpacingType = DevExpress.XtraRichEdit.API.Native.ParagraphLineSpacing.[Double]
pstyle.Alignment = DevExpress.XtraRichEdit.API.Native.ParagraphAlignment.Center
document.ParagraphStyles.Add(pstyle)
End If
document.Paragraphs(CInt((2))).Style = pstyle
#End Region ' #CreateNewParagraphStyle
End Sub
Private Shared Sub CreateNewLinkedStyle(ByVal document As DevExpress.XtraRichEdit.API.Native.Document)
#Region "#CreateNewLinkedStyle"
document.BeginUpdate()
document.AppendText("Line One" & Global.Microsoft.VisualBasic.Constants.vbLf & "Line Two" & Global.Microsoft.VisualBasic.Constants.vbLf & "Line Three")
document.EndUpdate()
'Create new paragraph style
Dim lstyle As DevExpress.XtraRichEdit.API.Native.ParagraphStyle = document.ParagraphStyles("MyLinkedStyle")
If lstyle Is Nothing Then
document.BeginUpdate()
lstyle = document.ParagraphStyles.CreateNew()
lstyle.Name = "MyLinkedStyle"
lstyle.LineSpacingType = DevExpress.XtraRichEdit.API.Native.ParagraphLineSpacing.[Double]
lstyle.Alignment = DevExpress.XtraRichEdit.API.Native.ParagraphAlignment.Center
document.ParagraphStyles.Add(lstyle)
Dim lcstyle As DevExpress.XtraRichEdit.API.Native.CharacterStyle = document.CharacterStyles.CreateNew()
lcstyle.Name = "MyLinkedCStyle"
document.CharacterStyles.Add(lcstyle)
lcstyle.LinkedStyle = lstyle
lcstyle.ForeColor = System.Drawing.Color.DarkGreen
lcstyle.Strikeout = DevExpress.XtraRichEdit.API.Native.StrikeoutType.[Single]
lcstyle.FontSize = 24
document.EndUpdate()
'Apply created styles
'to the text range and to the entire paragraph
document.Paragraphs(CInt((1))).Style = lstyle
Dim myRange As DevExpress.XtraRichEdit.API.Native.DocumentRange = document.Paragraphs(CInt((0))).Range
Dim charProps As DevExpress.XtraRichEdit.API.Native.CharacterProperties = document.BeginUpdateCharacters(myRange)
charProps.Style = lcstyle
document.EndUpdateCharacters(charProps)
End If
#End Region ' #CreateNewLinkedStyle
End Sub
End Class
End Namespace