【发布时间】:2011-06-08 20:07:57
【问题描述】:
我在生成 Word 文档时遇到了严重的问题。
这是我用于在书签中发送文本的库函数:
public void sentText(string _BkMk, string _text, bool _break, RunProperties _rProp)
{
Text text = new Text(_text) { Space = SpaceProcessingModeValues.Preserve };
Run run = new Run(new RunProperties(_rProp));
run.Append(text);
Run run2 = new Run();
if (_break)
{
run2.Append(new Break());
//CarriageReturn cr = new CarriageReturn();
//run2.Append(cr);
}
foreach (BookmarkStart bookmarkStart in bookmarkMap.Values)
{
if (bookmarkStart.Name.Value == _BkMk)
{
bookmarkStart.InsertBeforeSelf(run);
if (_break)
{
bookmarkStart.InsertBeforeSelf(run2);
}
}
}
runProperties 中包含字体、大小等... 最大的问题是当我在同一个书签中发送不同的字符串时,我需要留一个行空间。我发送一个空字符串或类似“”的空格,结果是一个空行,但字体(TimesNewRoman)和大小(12)不同。对我来说,在这个空行中保留字体大小真的很重要......
有什么想法吗?
【问题讨论】:
-
为什么我不能这样做?: Run run2 = new Run(new RunProperties(_rProp));当我运行代码时它说该元素来自一棵树......目前我创建另一个函数 InsertBlank(string _BkMk, RunProperties _rProp) 在这里我用我想要的运行属性执行这个新的 Break (在这里我可以做到这一点)
-
请编辑您的问题,而不是给 cmets 留下重要信息。
标签: c# .net ms-word openxml openxml-sdk