C# 操作Word文本框——插入图片、表格、文字、超链接等
生活随笔
收集整理的這篇文章主要介紹了
C# 操作Word文本框——插入图片、表格、文字、超链接等
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
概述
Text Box(文本框)是Word排版的工具之一。在Word文檔中的任何地方插入文本框,可添加補充信息,放在合適的位置,也不會影響正文的連續性。我們可以設置文本框的大小,線型,內部邊距,背景填充等效果。文本框內可以圖文混排,設置字體,字號,圖片大小、文字鏈接,繪入表格等。
在下面的示例中,將分為兩部分來介紹Word中插入文本框:
第一部分:插入圖文混排的文本框,包括圖片填充、內部邊距設置、圖文混排、文字超鏈接等元素
第二部分:如何在Word文本框中插入表格、讀取表格、刪除表格
?
使用工具
- Free Spire.Doc for .NET 6.3 (免費版)
- Visual Stuido
示例操作
【示例1】添加圖文混排的文本框
using Spire.Doc; using Spire.Doc.Documents; using System.Drawing; using Spire.Doc.Fields;namespace AddTextBox_Doc {class Program{static void Main(string[] args){//實例化Document類,并加載Word文檔Document document = new Document();document.LoadFromFile("Sample.docx");//獲取首個section中的第一個Paragraph,并添加指定大小的文本框TextBox TB = document.Sections[0].Paragraphs[0].AppendTextBox(180, 340);//指定文本框在頁面中的位置TB.Format.HorizontalOrigin = HorizontalOrigin.Page;TB.Format.HorizontalPosition = 330;TB.Format.VerticalOrigin = VerticalOrigin.Page;TB.Format.VerticalPosition = 110;//設置文本環繞方式TB.Format.TextWrappingStyle = TextWrappingStyle.Square;TB.Format.TextWrappingType = TextWrappingType.Both;//格式化文本框TB.Format.LineStyle = TextBoxLineStyle.Double;TB.Format.LineColor = Color.Black;TB.Format.LineDashing = LineDashing.Solid;TB.Format.LineWidth = 3;TB.Format.InternalMargin.Top = 15;TB.Format.InternalMargin.Bottom = 10;TB.Format.InternalMargin.Left = 12;TB.Format.InternalMargin.Right = 10;//加載圖片并填充圖片作為文本框背景TB.Format.FillEfects.Type = BackgroundType.Picture;TB.Format.FillEfects.Picture = Image.FromFile(@"C:\Users\Administrator\Desktop\1.jpg");//添加段落1到文本框,并添加文本,設置文本格式Paragraph para1 = TB.Body.AddParagraph();para1.Format.AfterSpacing = 6;para1.Format.HorizontalAlignment = HorizontalAlignment.Center;TextRange TR1 = para1.AppendText("The TIMES");TR1.CharacterFormat.FontName = "Andalus";TR1.CharacterFormat.FontSize = 12;TR1.CharacterFormat.TextColor = Color.Black;//添加段落2,加載圖片并設置圖片大小、位置Paragraph para2 = TB.Body.AddParagraph();Image image = Image.FromFile(@"C:\Users\Administrator\Desktop\The times.jpg");DocPicture picture = para2.AppendPicture(image);picture.Width = 120;picture.Height = 160;para2.Format.AfterSpacing = 8;para2.Format.HorizontalAlignment = HorizontalAlignment.Center;//添加段落3,插入文本并設置格式Paragraph para3 = TB.Body.AddParagraph();TextRange TR2 = para3.AppendText("The Times is the first newspaper to have borne that name, lending it to numerous other papers around the world, such as The Times of India and The New York Times. ");TR2.CharacterFormat.FontName = "Cambria";TR2.CharacterFormat.FontSize = 10;para3.Format.LineSpacing = 15;para3.Format.HorizontalAlignment = HorizontalAlignment.Left;//插入超鏈接到指定字符串para3.Format.SuppressAutoHyphens = true;para3.AppendHyperlink("https://en.wikipedia.org/wiki/The_Times", "See more", HyperlinkType.WebLink);//保存并打開文檔document.SaveToFile("Result.docx");System.Diagnostics.Process.Start("Result.docx"); }} }?文本框添加效果:
?
【示例2】Word文本框中插入表格、讀取文本框中的表格、刪除表格
1.插入表格
C#
using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; namespace InsertTableToTextbox_Doc {class Program{static void Main(string[] args){//創建一個Document類對象Document document = new Document();//添加section到文檔Section section = document.AddSection();//添加段落sectionParagraph paragraph = section.AddParagraph();//添加指定大小的文本框到段落TextBox textbox = paragraph.AppendTextBox(300, 100);//添加文本到文本,設置文本格式Paragraph textboxParagraph = textbox.Body.AddParagraph();TextRange textboxRange = textboxParagraph.AppendText("Sample Report 1");textboxRange.CharacterFormat.FontName = "Arial";//插入表格到文本框Table table = textbox.Body.AddTable(true);//指定表格行數、列數table.ResetCells(4, 4);//實例化數組內容string[,] data = new string[,] { {"Name","Age","Gender","ID" }, {"John","28","Male","0023" }, {"Steve","30","Male","0024" }, {"Lucy","26","female","0025" } };//將數組內容添加到表格 for (int i = 0; i < 4; i++){for (int j = 0; j < 4; j++){TextRange tableRange = table[i, j].AddParagraph().AppendText(data[i, j]);tableRange.CharacterFormat.FontName = "Arial";}}//應用表格樣式table.ApplyStyle(DefaultTableStyle.MediumGrid3Accent1);//保存并打開文檔document.SaveToFile("Output.docx", FileFormat.Docx2013);System.Diagnostics.Process.Start("Output.docx");}} }?
這里應用表格格式,Spire.Doc 支持多種不同的表格類型,可根據需要自行選擇。
?
表格添加效果:
?【示例3】讀取文本框中的表格
C#
?
【示例2】讀取文本框中的表格 C# using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; using System.IO; using System.Text;namespace GetTableFromTextbox_Doc {class Program{static void Main(string[] args){//載入Word文檔Document document = new Document("Output.docx");//獲取第一個文本框TextBox textbox = document.TextBoxes[0];//獲取文本框中第一個表格Table table = textbox.Body.Tables[0] as Table;//實例化StringBuilder類StringBuilder sb = new StringBuilder();//遍歷表格中的段落并提取文本foreach (TableRow row in table.Rows){foreach (TableCell cell in row.Cells){foreach (Paragraph paragraph in cell.Paragraphs){sb.AppendLine(paragraph.Text);}}}File.WriteAllText("text.txt", sb.ToString());}} }?讀取結果:
?
?
?
【示例4】刪除Word文本框中的表格
?
C#
using Spire.Doc; using Spire.Doc.Fields;namespace RemoveTableFormTextbox_Doc {class Program{static void Main(string[] args){//創建Document實例Document document = new Document("Output.docx");//獲取第一個文本框TextBox textbox = document.TextBoxes[0];//刪除文本框中第一個表格textbox.Body.Tables.RemoveAt(0);//保存文檔document.SaveToFile("RemoveTable.docx", FileFormat.Docx2013);System.Diagnostics.Process.Start("RemoveTable.docx");}} }?
刪除效果:
以上全部內容為本次關于操作Word文本框的全部內容,如需轉載請注明出處。
總結
以上是生活随笔為你收集整理的C# 操作Word文本框——插入图片、表格、文字、超链接等的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 年终奖扣税方式1月1日起施行,程序员你还
- 下一篇: iPhone密码管理