簡體   English   中英

C# Word Interop 向段落添加底部邊框會創建一個換行符我想去掉

[英]C# Word Interop adding bottom border to paragraph creates a newline I want to get rid of

我正在嘗試為我的文本添加底部邊框,以便在其下方創建一條水平線。 插入行沒問題,但我之前得到一個換行符,不知道如何擺脫它。 我想在我的文本正下方插入該行,並在它之后的新行中找到 cursor。

有人知道怎么做嗎?

這是我目前正在使用的代碼:

object oMissing = System.Reflection.Missing.Value;
object oEndOfDoc = "\\endofdoc";

Word._Application oWord;
Word._Document oDoc;
oWord = new Word.Application();
oWord.Visible = false;
oDoc = oWord.Documents.Add(ref oMissing, ref oMissing, ref oMissing, ref oMissing);

oDoc.PageSetup.TopMargin = 36;
oDoc.PageSetup.RightMargin = 36;
oDoc.PageSetup.BottomMargin = 36;
oDoc.PageSetup.LeftMargin = 36;

Word.Paragraph titolo;
object oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
titolo = oDoc.Content.Paragraphs.Add(ref oRng);
titolo.Range.Text = "My text";
titolo.Range.Font.Name = "Open Sans";
titolo.Range.Font.Size = 16;
titolo.Range.Font.Italic = 0;
titolo.Alignment = Word.WdParagraphAlignment.wdAlignParagraphCenter;
titolo.Format.SpaceAfter = 24;
titolo.Range.InsertParagraphAfter();

Word.Paragraph section1_title;
oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
section1_title = oDoc.Content.Paragraphs.Add(ref oRng);
section1_title.Range.Text = "Text I want a line under";
            section1_title.Range.Borders[Word.WdBorderType.wdBorderBottom].LineStyle = Word.WdLineStyle.wdLineStyleSingle;
section1_title.Range.Font.Name = "Open Sans";
section1_title.Range.Font.Size = 12;
section1_title.Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;
section1_title.Range.InsertParagraphAfter();

oWord.Visible = true;

為了讓事情更清楚,這是我得到的,這是我想要的。 請注意,在第一張圖片中,我在文本和行之間有一條可寫行(就像我在“我的文本”的末尾有一個 \n 一樣)。

我還嘗試修剪文本。

感謝任何人回答。

編輯:這是生成的文件(GoogleDrive 鏈接)

EDIT2:發布完整代碼。 需要 Microsoft.Office.Interop.Word 程序集引用才能工作並使用 Word = Microsoft.Office.Interop.Word;

我找到了解決我的問題的方法:基本上我獲取了段落范圍的文本並檢查是否有空行,如果我找到它,我將其刪除。

這是我在帖子末尾添加的代碼:

if (section1_title.Range.Text.Trim() == string.Empty)
{
    section1_title.Range.Select();
    oWord.Selection.Delete();
}

我不確定這是執行此操作的最佳方法,或者我是否可以做其他事情,但是,唉,它正在工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM