【发布时间】:2012-10-11 09:57:50
【问题描述】:
我正在使用 C# 编写一个程序,该程序使用 Microsoft Word 14.0 对象库来创建一个 .doc 文件,向其中添加段落并保存它。有一个带有按钮的小表单,可以执行所描述的操作(参见下面的代码)。这部分没有问题。
问题:
创建的word文件中的当前文本如下:
一些文本 beff = 3.0
我需要完成的是创建一个段落,里面有下标字符。(在上面的段落中,字母“eff”应该是下标):
最终的文档将包含大约 100 行与上述类似的行,并带有不同的下标字符。
我找到了一种用行为整个段落下标的方法,
paragraph1.Range.Font.Subscript = 1;
但没有办法在单独的字符上实现它。
我也知道我可以使用 Unicode 中的下标字母和数字,但不幸的是,Unicode 没有下标格式的完整字母,所以这也不是一个选择。
问题: 有没有办法让我完成目标并在新创建的 Word 文档的段落内的下标中插入类似“eff”的内容?
示例代码:
private void btnReport_Click(object sender, EventArgs e)
{
Word._Application oWord;
Word._Document oDoc;
oWord = new Word.Application();
oDoc = oWord.Documents.Add();
var paragraph1 = oDoc.Content.Paragraphs.Add();
paragraph1.Range.Text = "Some text beff = 3.0";
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.Filter = "Word document|*.doc";
saveFileDialog1.Title = "Save the Word Document";
if (DialogResult.OK == saveFileDialog1.ShowDialog())
{
string docName = saveFileDialog1.FileName;
if (docName.Length > 0)
{
object oDocName = (object)docName;
oDoc.SaveAs(ref oDocName);
}
}
oWord.Quit();
}
【问题讨论】:
标签: c# ms-word automation paragraph subscript