C# /VB.NET 创建PDF项目符号列表和多级编号列表
发布时间:2020-12-16 01:08:22 所属栏目:百科 来源:网络整理
导读:使用项目符号和编号,可以让文档的层次结构更清晰、更有条理,也更容易突出重点。在编辑文档的过程中,我个人也比较偏爱项目标号来标注文章重点信息。在之前的文章中,介绍了如何在Word中来创建项目标号和编号列表,在本篇文章中,将介绍创建PDF项目符号列表
使用项目符号和编号,可以让文档的层次结构更清晰、更有条理,也更容易突出重点。在编辑文档的过程中,我个人也比较偏爱项目标号来标注文章重点信息。在之前的文章中,介绍了如何在Word中来创建项目标号和编号列表,在本篇文章中,将介绍创建PDF项目符号列表和多级编号列表的方法。 借助工具:?Spire.PDF.dll PS:dll可以直接在安装路径下的Bin文件夹中获取。 1.创建PDF符号列表C# using System; System.Drawing; Spire.Pdf; Spire.Pdf.Graphics; Spire.Pdf.Lists; namespace CreateList_PDF { class Program { static void Main(string[] args) { //创建一个PDF文档 PdfDocument doc = new PdfDocument(); 添加一页A4大小的页面 PdfPageBase page = doc.Pages.Add(PdfPageSize.A4); float y = 10; 创建标题并设置格式,包括字体、字号、颜色 PdfBrush brush1 = PdfBrushes.Black; PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("楷体",18f,FontStyle.Regular),true); PdfStringFormat format1 = PdfStringFormat(PdfTextAlignment.Center); page.Canvas.DrawString(Categories List(项目列表)2,y,format1); y = y + font1.MeasureString("5创建列表文字并设置格式 RectangleF rctg = new RectangleF(new PointF(0,0),page.Canvas.ClientSize); PdfLinearGradientBrush brush = PdfLinearGradientBrush(rctg,Color.SteelBlue,Color.Blue,PdfLinearGradientMode.Vertical); PdfTrueTypeFont font2 = 宋体); String formatted = Part 1 Listening(听力部分) n Part 2 Speaking(口语部分) n Part 3 Reading(阅读部分) n Part 4 Writing(写作部分)" + n Part 5 Test(测试) 1 n Part 6 Test(测试) 2 n Part 7 Test Answers(测试答案)创建PdfList 类对象,并设置列表及样式 PdfList list = PdfList(formatted); list.Font = font2; list.Indent = 8; list.TextIndent = ; list.Brush = brush; PdfLayoutResult result = list.Draw(page,y); y = result.Bounds.Bottom; 保存并打开文档 doc.SaveToFile(List.pdf); System.Diagnostics.Process.Start(); } } } 测试结果: ? VB.NET Imports System System.Drawing Spire.Pdf Spire.Pdf.Graphics Spire.Pdf.Lists Namespace CreateList_PDF Class Program Private Shared Sub Main(ByVal args As String()) Dim doc As PdfDocument = New PdfDocument() Dim page As PdfPageBase = doc.Pages.Add(PdfPageSize.A4) Dim y Single = 10 Dim brush1 As PdfBrush = PdfBrushes.Black Dim font1 As PdfTrueTypeFont = New PdfTrueTypeFont(New Font(True) Dim format1 As PdfStringFormat = PdfStringFormat(PdfTextAlignment.Center) page.Canvas.DrawString(= y + 5 Dim rctg As RectangleF = New RectangleF(New PointF(Dim brush As PdfLinearGradientBrush = Dim font2 Dim formatted String = Part 1 Listening(听力部分) " & vbLf & Part 2 Speaking(口语部分) Part 3 Reading(阅读部分) Part 4 Writing(写作部分) Part 5 Test(测试) 1 Part 6 Test(测试) 2 Part 7 Test Answers(测试答案)" Dim list As PdfList = PdfList(formatted) list.Font = font2 list.Indent = list.TextIndent = list.Brush = brush Dim result As PdfLayoutResult = list.Draw(page,y) y = result.Bounds.Bottom doc.SaveToFile() System.Diagnostics.Process.Start() End Sub End Class End Namespace 2.创建PDF多级编号列表Spire.Pdf.dll支持多种类型的编号类型: C# Spire.Pdf.Lists; System.Drawing; List2 { 新建PDF文档,并添加一页A4大小的空白页面 PdfDocument doc = PdfDocument(); PdfPageBase page = doc.Pages.Add(PdfPageSize.A4); 添加标题并设置文本和格式 PdfBrush brush1 =目录一览添加文本并设置字体 RectangleF rctg = ); String formatted1 = 第一章 总 论; String formatted2 = 第一节 经济法概述 ; String formatted3 = 第二节 经济法主体 ; String formatted4 = 第二章 公司法律制度设置编号列表样式 PdfOrderedMarker marker1 = new PdfOrderedMarker(PdfNumberStyle.Numeric,1)"> PdfFont(PdfFontFamily.Helvetica,15f)); PdfOrderedMarker marker2 = new PdfOrderedMarker(PdfNumberStyle.LowerRoman,12f)); 为第一级编号列表设置格式 PdfSortedList list1 = PdfSortedList(font2); list1.Indent = ; list1.TextIndent = ; list1.Brush = brush; list1.Marker = marker1; 为第二级编号列表设置格式 PdfSortedList list2 = PdfSortedList(font2); list2.Marker = marker2; list2.Brush = brush; list2.TextIndent = 应用编号列表格式到指定文本 PdfListItem item = list1.Items.Add(formatted1); item.SubList = list2; list2.Items.Add(formatted2); list2.Items.Add(formatted3); list1.Items.Add(formatted4); 设置PDF文档布局和位置 PdfTextLayout textLayout = PdfTextLayout(); textLayout.Break = PdfLayoutBreakType.FitPage; textLayout.Layout = PdfLayoutType.Paginate; list1.Draw(page,保存文件 doc.SaveToFile(多级列表.pdf); } } } 测试结果: VB.NET Spire.Pdf.Lists System.Drawing List2 Dim formatted1 Dim formatted2 Dim formatted3 Dim formatted4 Dim marker1 As PdfOrderedMarker = PdfOrderedMarker(PdfNumberStyle.Numeric,NewPdfFont(PdfFontFamily.Helvetica,15F)) Dim marker2 PdfOrderedMarker(PdfNumberStyle.LowerRoman,12F)) Dim list1 As PdfSortedList = PdfSortedList(font2) list1.Indent = list1.TextIndent = list1.Brush = brush list1.Marker = marker1 Dim list2 PdfSortedList(font2) list2.Marker = marker2 list2.Brush = brush list2.TextIndent = Dim item As PdfListItem = list1.Items.Add(formatted1) item.SubList = list2 list2.Items.Add(formatted2) list2.Items.Add(formatted3) list1.Items.Add(formatted4) Dim textLayout As PdfTextLayout = PdfTextLayout() textLayout.Break = PdfLayoutBreakType.FitPage textLayout.Layout = PdfLayoutType.Paginate list1.Draw(page,textLayout) doc.SaveToFile(End Namespace 以上内容为本次关于“创建PDF项目标号列表和多级编号列表”的全部内容。如需转载,请注明出处。感谢阅读! ? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读