在 open xml c# 中为字符范围添加字符间距
add character spacing for range of character in open xml c#
如何为字符范围
添加字符间距
就像我想给字符间距 In word toggling for 2 characters
gg of spacing="Expanded" with By value of 4pt
打开XML不仅有SDK,还有converting any document to C# code的工具。
了解如何使用某些单词功能的最佳方法是制作 2 个简短的文档网络 - 一个使用此功能,另一个 - 不使用。然后将两个 documnet 转换为 C# 代码并比较生成的代码(例如,您可以使用 WinMerge)。
如果您希望将样式应用到段落中间,您将需要(至少)3 个单独的 Run
元素;第一个用于无样式文本的开头,第二个用于具有间距的文本,第三个用于其余无样式文本。
要添加字符间距,您需要将 Spacing
元素添加到 Run
。 Spacing
元素有一个 Value
属性 设置你想要的间距,以二十分之一的点为单位(因此要获得 4pt,你需要将值设置为 80)。
以下代码将在 toggling
一词的 gg
上创建一个带有空格的文档
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();
}
}
以上产生以下结果:
请注意,您可以将 Spacing
的 Value
设置为负数,文本将被压缩而不是展开。
添加字符间距 就像我想给字符间距 In word toggling for 2 characters gg of spacing="Expanded" with By value of 4pt
打开XML不仅有SDK,还有converting any document to C# code的工具。
了解如何使用某些单词功能的最佳方法是制作 2 个简短的文档网络 - 一个使用此功能,另一个 - 不使用。然后将两个 documnet 转换为 C# 代码并比较生成的代码(例如,您可以使用 WinMerge)。
如果您希望将样式应用到段落中间,您将需要(至少)3 个单独的 Run
元素;第一个用于无样式文本的开头,第二个用于具有间距的文本,第三个用于其余无样式文本。
要添加字符间距,您需要将 Spacing
元素添加到 Run
。 Spacing
元素有一个 Value
属性 设置你想要的间距,以二十分之一的点为单位(因此要获得 4pt,你需要将值设置为 80)。
以下代码将在 toggling
gg
上创建一个带有空格的文档
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();
}
}
以上产生以下结果:
请注意,您可以将 Spacing
的 Value
设置为负数,文本将被压缩而不是展开。