Interop.Word 不适用于阿拉伯语文本

本文关键字:阿拉伯语 文本 适用于 不适用 Word Interop | 更新日期: 2023-09-27 18:30:27

我正在尝试使用C#.net创建一个word文档,我所做的是使用以下代码使用Interop.Word:

object oMissing = System.Reflection.Missing.Value;
object oEndOfDoc = "''endofdoc"; /* 'endofdoc is a predefined bookmark */ 
//Start Word and create a new document.
Word._Application oWord;
Word._Document oDoc;
oWord = new Word.Application();
oWord.Visible = true;
oDoc = oWord.Documents.Add(ref oMissing, ref oMissing,
    ref oMissing, ref oMissing);
//Insert a paragraph at the beginning of the document.
Word.Paragraph oPara1;
oPara1 = oDoc.Content.Paragraphs.Add(ref oMissing);
oPara1.Range.Text = "Heading 1";
oPara1.Range.Font.Bold = 1;
oPara1.Format.SpaceAfter = 24;    //24 pt spacing after paragraph.
oPara1.Range.InsertParagraphAfter();
//Insert a paragraph at the end of the document.
Word.Paragraph oPara2;
object oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
oPara2 = oDoc.Content.Paragraphs.Add(ref oRng);
oPara2.Range.Text = "Heading 2";
oPara2.Format.SpaceAfter = 6;
oPara2.Range.InsertParagraphAfter();

一切都工作正常,除了我的文本是阿拉伯语并设置 oPara1.Range.Font.Bold = 1; 不起作用也更改字体名称

你能弄清楚为什么我遇到这个麻烦,我该如何解决它

Interop.Word 不适用于阿拉伯语文本

nagham_4ng在上面的评论中所写的解决方案是在适当的情况下使用 Font.NameBiFont.BoldBi 属性,而不是 Font.NameFont.Bold