使用OpenXml給word文檔添加文字,每個模塊都有自己對於的屬性以及內容,要設置樣式就先聲明屬性對象,將樣式Append到屬性裡面,再將屬性append到模塊裡面,那麼模塊裡面的內容就具備該樣式了。此方法默認是在文件後面追加內容
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Wordprocessing; namespace AddStringToWord { public class Program { public static void Main(string[] args) { AddString("Test.docx", "你好呀"); } public static void AddString(string filePath, string str) { using (WordprocessingDocument doc = WordprocessingDocument.Open(filePath, true)) { Paragraph paragraph = new Paragraph(); Run run = new Run(); RunProperties runProperties = new RunProperties(); //屬性 RunFonts fonts = new RunFonts() { EastAsia = "DFKai-SB" }; // 設置字體 FontSize size = new FontSize() { Val = "52" }; // 設置字體大小 Color color = new Color() { Val = "red" }; // 設置字體樣式 // 將樣式添加到屬性裡面 runProperties.Append(color); runProperties.Append(size); runProperties.Append(fonts); run.Append(runProperties); run.Append(new Text(str)); paragraph.Append(run); doc.MainDocumentPart.Document.Body.Append(paragraph); doc.MainDocumentPart.Document.Save(); } } } }
截圖如下:
如果你的Office是2007版本的,用WORD打開docx文件,另存為WORD 2003的doc文件即可。
如果你的Office是2003版本的,到微軟去下載一個Office 2007的兼容包即可打開docx文件,然後另存即可。
可以用正則表達式匹配,然後再將匹配出來的集合保存到Word中RPX圖文轉換軟件,很不錯的,你可以試下
hkgab346702011/7/27 23:52:04