Jak dodawać znaki dolne w akapitach za pomocą automatyzacji programu Word?
Pracuję nad programem w języku C #, który używa biblioteki Microsoft Word 14.0 Object Library do tworzenia pliku .doc, dodawania do niego akapitów i zapisywania go. Jest mały formularz z przyciskiem opisującym działania (zobacz poniższy kod). Ta część nie ma problemów.
Problem:
Aktualny tekst w utworzonym pliku słów będzie następujący:
Niektóre znaki tekstowe = 3,0
To, co muszę osiągnąć, to utworzenie akapitu, w którym znajdują się znaki w indeksie dolnym (w akapicie powyżej litery „eff” powinny być indeksowane):
Ostateczny dokument zawierałby około 100 linii, jak wyżej, z różnymi znakami, które są indeksowane.
Znalazłem sposób na indeksowanie całego akapitu linią,
paragraph1.Range.Font.Subscript = 1;
ale nie znalazłem sposobu na zaimplementowanie go na osobnych znakach.
Wiem też, że w Unicode są litery i cyfry indeksu dolnego, których mogę używać, ale niestety Unicode nie ma pełnego alfabetu w formacie indeksu, więc nie jest to opcja.
Pytanie: Czy istnieje sposób, aby osiągnąć cel i wstawić coś w rodzaju „eff” w indeksie wewnątrz akapitu w świeżo utworzonym dokumencie programu Word?
Przykładowy kod:
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();
}