當前位置:吉日网官网 - 油畫收藏 - 請問 有沒有軟件可以實現自動標註英文音標的功能?

請問 有沒有軟件可以實現自動標註英文音標的功能?

分享]WORD與金山詞霸-自動標註音標的小程序

'* +++++++++++++++++++++++++++++

'* Created By I Love You_Word!@ExcelHome 2005-2-25 08:09:09

'僅測試於System: Windows NT Word: 10.0 Language: 2052

'^The Code CopyIn [ThisDocument-ThisDocument]^'

'* -----------------------------

Sub GetPhonetic()

'寫在前面:您運行此程序前必須引用MSForms

'即VBE/工具/引用:Microsoft Forms 2.0 Object Library (C:\WINNT\system32\FM20.DLL)

'打開金山詞霸,並使用顯示在任務欄中,不是最小化系統托盤(啟動欄)中!!(金山詞霸/主菜單/

'設置/界面方案/其它/其它選項:任務欄圖標,去勾)並關閉屏幕取詞功能!

'將每個單詞為壹個段落,註意,本程序未加入單詞拼寫檢查,可在WORD中拼寫和語法檢查中設置

Dim EwTxt As String, MyData As DataObject, CopyTxt As String, MyRange As Range

Dim Mystring() As String, aString As String, i As Paragraph, StartWrite As Long

On Error Resume Next

If Tasks.Exists("金山詞霸") = False Then Exit Sub '如果未在任務欄中則關閉程序

Tasks("金山詞霸").WindowState = wdWindowStateNormal '正常窗口

Set MyData = New DataObject '引用DataObject

Application.ScreenUpdating = False '關閉屏幕更新

With ActiveDocument

For Each i In .Paragraphs '在段落中循環

If Len(i.Range) = 1 Then GoTo GN '如果為空白段落則繼續下壹次

EwTxt = i.Range.Text '返回文本(單詞)

StartWrite = i.Range.End - 1 '取得段落標記前的位置

Set MyRange = .Range(StartWrite, StartWrite) '取得段落標記前的插入點區域

Tasks("金山詞霸").Activate '激活金山詞霸應用程序

SendKeys EwTxt, True '發送單詞

SendKeys "{TAB 2}", True '移動二次TAB

SendKeys "^c", True '復制

MyData.GetFromClipboard '從剪貼板復制數據到 DataObject

CopyTxt = MyData.GetText(1) '獲得無格式文本

Mystring = VBA.Split(CopyTxt, vbCrLf) '返回壹個數組

aString = Mystring(1) '取得數組中的第二個值,也就是音標

MyRange.InsertAfter " " & aString '在插入點處插入音標

'設置該區域的音標字體

.Range(StartWrite + 2, i.Range.End - 2).Font.Name = "Kingsoft Phonetic Plain"

GN: Next

Application.ScreenUpdating = True '恢復屏幕更新工作

Tasks(VBA.Replace(.Name, ".doc", "")).Activate '激活WORD文檔

'提示

MsgBox "自動音標標註工作已經結束!", vbInformation + vbOKOnly, "Microsoft Word"

End With

End Sub

  • 上一篇:裙子在精不在多,什麽樣的裙子顯瘦而且搭配什麽都會很好看呢?
  • 下一篇:上半身像蛇,下半身像章魚的古代生物是如何形成的?
  • copyright 2024吉日网官网