相关疑难解决方法(0)

更改非英语TextBox的字体

请考虑以下代码

With ActivePresentation
    Set sldNewSlide = .Slides.Add(.Slides.Count + 1, ppLayoutBlank)
    With sldNewSlide
    Set shpCurrShape = .Shapes.AddTextbox(msoTextOrientationHorizontal, 25, 50, 50, 200)

        With shpCurrShape
           With .TextFrame.TextRange

              '------------ Below is an ARABIC string
              .Text = ChrW$(&H6A9) & ChrW$(&H64A) & ChrW$(&H641) & " " & ChrW$(&H62D) & ChrW$(&H627) & ChrW$(&H644) & ChrW$(&H643)

              With .Font
                 .Name = "someFontName" '-------------- THIS LINE IS NOT WORKING
                 .Size = 65
              End With

           End With
        End With

    End With
End With
Run Code Online (Sandbox Code Playgroud)

如上所述,阿拉伯语文本的字体未被更改.当文本框包含英文文本时,字体更改效果很好.如果有混合的阿拉伯语和英语文本,英语字体会更改,但阿拉伯语文本保持默认字体(即Arial).

此代码在Office 2003中运行正常,但在尝试在Office 2007/2010中运行时遇到此问题.我已仔细检查,我试图指定的字体已安装在计算机上.

虽然我只测试了阿拉伯语脚本语言(arabic/urdu/persian等),但我想在处理任何非拉丁语脚本语言时会出现这个问题.

有什么建议?似乎是ms office的后续版本中的一个错误.

PS.按照@Steve( …

fonts powerpoint vba powerpoint-vba

7
推荐指数
1
解决办法
2302
查看次数

在VB6中显示Unicode文本(希伯来语等)的最佳选择是什么

我有一些客户希望在希伯来语中使用我们的语音治疗软件.

这些程序是在VB6中.我所知道的最佳选择是:

  1. 使用MS Office中的Forms 2.0控件,但您无法分发它们.
  2. http://www.hexagora.com/en_dw_unictrl.asp $ 899
  3. http://www.iconico.com/UniToolbox/ 499美元

还有其他选择吗?

vb6 unicode internationalization

6
推荐指数
1
解决办法
7760
查看次数