我有一些代码可以创建包含多个段落的文档,这些段落的文字颜色不同。类似的东西:
using (var doc = WordprocessingDocument.Create("some-file-name", WordprocessingDocumentType.Document))
{
// Add a new main document part.
var mainPart = doc.AddMainDocumentPart();
mainPart.Document = new Document();
var body = new Body();
var paragraph = new Paragraph();
var run = new Run();
...
// append bold text
run.AppendChild(new RunProperties {Bold = new Bold(), });
run.AppendChild(new Text("some-text"));
...
// append red text
run.AppendChild(new RunProperties
{ Color = new Color {Val = "FF0000"}});
run.AppendChild(new Text("some-text"));
但我还没有找到一种方法来添加彩色背景的文字。我怎样才能做到这一点?
答案 0 :(得分:1)
让我回答一下:
背景是突出显示属性:
// yellow background sample
run.AppendChild(new RunProperties { Highlight = new Highlight { Val = HighlightColorValues.Yellow } });
run.AppendChild(new Text("some-text"));
答案 1 :(得分:1)
我发现我需要在运行属性中设置w:shd property。我使用的是docx4j,但主体是相同的。