你可以参考下这篇教程里面的方法C#设置段落间距,不过需要在你的工程文件中引用Spire.Doc.dll这个类库,
创新互联公司服务项目包括丹阳网站建设、丹阳网站制作、丹阳网页制作以及丹阳网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,丹阳网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到丹阳省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
gf.DrawString("竖着的值", Font, Brush, new point(X,Y) ,new StringFormat(StringFormatFlags.DirectionVertical));
用这个方法可以
文字编辑结束后,选择“移动”工具(工具箱第一个工具,快捷键V),然后按Ctrl+T快捷键进行“自由变换”,会在文字上出现控制框,把鼠标移到控制框外边指针就会变成旋转的样式,按住鼠标左键拖动就可以进行任意角度旋转了。
添加spire.doc.jar为依赖,百度搜索免费版的下载即可
Imports Spire.Doc
Imports Spire.Doc.Documents
Imports System.Drawing
Namespace SetRowSpace
Class Program
Shared Sub Main(ByVal args() As String)
'创建文档
Document doc = New Document()
'添加section
Dim s As Section = doc.AddSection()
'添加段落
Dim para As Paragraph = s.AddParagraph()
para.AppendText("这是测试文字,这是测试文字,这是测试文字,这是测试文字,这是测试文字," +
"这是测试文字,这是测试文字,这是测试文字,这是测试文字,这是测试文字,这是测试文字,"+
"这是测试文字,这是测试文字,这是测试文字,这是测试文字。")
'设置段落中行距
para.Format.LineSpacing = 20f
'创建段落样式
Dim style As ParagraphStyle = New ParagraphStyle(doc)
style.Name = "paraStyle"
style.CharacterFormat.FontName = "宋体"
style.CharacterFormat.FontSize = 13
doc.Styles.Add(style)
'应用段落样式
para.ApplyStyle("paraStyle")
'保存文档
doc.SaveToFile("SetLineSpacing.docx", FileFormat.Docx2013)
System.Diagnostics.Process.Start("SetLineSpacing.docx")
End Sub
End Class
End Namespace
也不是不可以实现,只不过复杂一点而已,具体看下面代码。不过在需要换行等情况下的文本显示,还是建议用RichTextBox开启只读属性比较省心、比较合适。
Private Sub AutoNextRow()
'获取ListBox行集合文本
Dim length As Integer = (ListBox1.Items.Count - 1)
Dim items(length) As String '行文本数组
For i As Integer = 0 To length
items(i) = ListBox1.Items(i).ToString
Next
'处理ListBox换行
ListBox1.Items.Clear() '清空行内容
Using g As Graphics = Graphics.FromHwnd(ListBox1.Handle)
Dim result As New List(Of Object)
Dim w As Single = ListBox1.ClientSize.Width
Dim sf As SizeF, str As StringBuilder
For Each s As String In items
str = New StringBuilder
For i As Integer = 0 To (s.Length - 1)
sf = g.MeasureString(str.ToString s(i), ListBox1.Font)
If sf.Width w Then
result.Add(str.ToString)
str = New StringBuilder
End If
str.Append(s(i))
If i = s.Length - 1 Then result.Add(str.ToString)
Next
Next
ListBox1.Items.AddRange(result.ToArray) '填充行内容
End Using
End Sub
让LABEL里的文字竖排方法:
设置Label控件的Alignment为2
调整字号大小到显示单个字,或者收小Label控件的宽度(Width)
代码方法:
Private Function Vertical_Horizontal(ByVal nStr As String) As String
Dim MyStr As String, i As Integer
Static Vert As Boolean
For i = 1 To Len(nStr)
If i Len(nStr) Then
MyStr = MyStr + Mid$(nStr, i, 1) vbCrLf
Else
MyStr = MyStr + Mid$(nStr, i, 1)
End If
Next
Vertical_Horizontal = MyStr
Vert = True
End Function
Private Sub Form_Load()
Label1.AutoSize = True
Label1.Caption = "VB如何让标签里的文字竖排"
Label1.Caption = Vertical_Horizontal(Label1.Caption)
End Sub