使用Word我创建了一个标准normal.dot作为测试的Docx。 Hello-world级复杂度。
我希望得到all the paragraphs
在Word中使用“Heading1
”style
设置样式。
我可以获得所有段落,但不知道如何过滤到Heading1。
using (var doc = WordprocessingDocument.Open(documentFileName, false))
{
paragraphs = doc.MainDocumentPart.Document.Body
.OfType<Paragraph>().ToList();
}
答案 0 :(得分:9)
[Test]
public void FindHeadingParagraphs()
{
var paragraphs = new List<Paragraph>();
// Open the file read-only since we don't need to change it.
using (var wordprocessingDocument = WordprocessingDocument.Open(documentFileName, false))
{
paragraphs = wordprocessingDocument.MainDocumentPart.Document.Body
.OfType<Paragraph>()
.Where(p => p.ParagraphProperties != null &&
p.ParagraphProperties.ParagraphStyleId != null &&
p.ParagraphProperties.ParagraphStyleId.Val.Value.Contains("Heading1")).ToList();
}
}