2012-11-07 164 views
6

我試圖通過C#創建一個Word文檔。我希望能夠在我的代碼中的某個位置插入分頁符,但是我不確定如何執行此操作。我主要使用StringBuilder來創建html。 這是在Visual Studio 2010中用c#完成的。我已經看過一些指南,但其中大多數使用「Word變量」之類的代碼。所以我不確定「Word」是來自額外下載的庫還是不是。如何在創建MS Word文檔時插入分頁符

+2

最有可能Word變量是因爲添加了對Microsoft Word庫的引用,然後使用Word = Microsoft.Office.interop.Word; – Sorceri

回答

12

下面是將一些文本寫入word文檔然後添加分頁符的示例。然後將其餘的文字寫入文檔。爲了得到更好的答案,您可能需要重新編寫您的問題,因爲您不清楚何時需要插入中斷以及如何將信息寫入文檔。我假設很多,這是從來沒有好的。

using Word = Microsoft.Office.interop.Word; 

//create a word app 
Word._Application wordApp = new Word.Application(); 
//add a page 
Word.Document doc = wordApp.Documents.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value); 
//show word 
wordApp.Visible = true; 
//write some tex 
doc.Content.Text = "This is some content for the word document.\nI am going to want to place a page break HERE "; 
//inster a page break after the last word 
doc.Words.Last.InsertBreak(Word.WdBreakType.wdPageBreak); 
//add some more text 
doc.Content.Text += "This line should be on the next page."; 
//clean up 
Marshal.FinalReleaseComObject(wordApp); 
Marshal.FinalReleaseComObject(doc); 
GC.Collect(); 
GC.WaitForPendingFinalizers(); 
GC.Collect(); 
+0

我正在創建所有內容並將其附加到StringBuilder。然後我將StringBuilder寫入StreamWriter。當While循環完成數據的第一次迭代時,我想插入一個分頁符。所以每個迭代的所有內容都是它自己的頁面。 – john

5

如果位置你想插入分頁符選擇(通過Word.Selection):

最簡單的方法是插入有下面的代碼:

selection.TypeText("\f"); 
+0

當我專注於逐行輸出文本時,確實很棒 –

相關問題