答案 0 :(得分:1)
Open XML不仅包含SDK,还包含converting any document to C# code的工具。
了解如何使用某些单词功能的最佳方法是制作2个短文档 - 一个使用此功能,另一个使用 - 没有。然后将两个documnet转换为C#代码并比较生成的代码(例如,您可以使用WinMerge)。
答案 1 :(得分:0)
如果您希望将样式应用于段落的中间,则需要(至少)3个单独的Run
元素;第一个用于开头的无格式文本,第二个用于具有间距的文本,第三个用于其余的无格式文本。
要添加字符间距,您需要向Run
添加Spacing
元素。 Spacing
元素具有Value
属性,可以在一个点的二十分之一处设置所需的间距(因此要获得4pt,您需要将值设置为80)。
以下代码将在单词gg
toggling
创建一个间距为文档的文档
public static void CreateDoc(string fileName)
{
// Create a Wordprocessing document.
using (WordprocessingDocument package =
WordprocessingDocument.Create(fileName, WordprocessingDocumentType.Document))
{
// Add a new main document part.
package.AddMainDocumentPart();
//create a body and a paragraph
Body body = new Body();
Paragraph paragraph = new Paragraph();
//add the first part of the text to the paragraph in a Run
paragraph.AppendChild(new Run(new Text("This sentence has spacing between the gg in to")));
//create another run to hold the text with spacing
Run secondRun = new Run();
//create a RunProperties with a Spacing child.
RunProperties runProps = new RunProperties();
runProps.AppendChild(new Spacing() { Val = 80 });
//append the run properties to the Run we wish to assign spacing to
secondRun.AppendChild(runProps);
//add the text to the Run
secondRun.AppendChild(new Text("gg"));
//add the spaced Run to the paragraph
paragraph.AppendChild(secondRun);
//add the final text as a third Run
paragraph.AppendChild(new Run(new Text("ling")));
//add the paragraph to the body
body.AppendChild(paragraph);
package.MainDocumentPart.Document = new Document(body);
// Save changes to the main document part.
package.MainDocumentPart.Document.Save();
}
}
请注意,您可以将Value
的{{1}}设置为负数,文本将被压缩而不是展开。