vb.net - 使用 VB.NET 检查 Word 文档中的字体样式

标签 vb.net visual-studio-2010 ms-word office-interop

我想用vb.net检查一个word文件,检查文档中的样式是否正确。

我必须在word文档中检查这些表达式

a.Verdana + 16 pt + Bold + Red

b.Verdana + 12 pt + 粗体 + 斜体 + 蓝色

c.Verdana + 11 pt + 粗体 + 斜体 + 棕色

d.Arial + 10 pt + Black

我试过了,

If objDoc.Range.Font.Name = "Arial" And objDoc.Range.Font.Size = 10 Then
   If objDoc.Range.Font.Color = WdColor.wdColorBlack Then
   End If
        MsgBox("ok")
    Else
        MsgBox("not ok")
End If

但使用此代码,仅当整个 word 文档由 Arial,10,Black 组成时才显示 msgbox“OK”,而当它包含上述表达式时显示 msgbox“Not Ok”,除了 Arial,10,Black

所以基本上我需要帮助找出由上述所有表达式/样式组成的同一个 word 文档中的所有表达式。

任何帮助都会非常非常感谢.. 请帮我解决这个问题仍然找不到解决方案..

最佳答案

通过下面的代码可以找到字体样式不同的句子。

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    Dim oDoc As New Word.Document()
    Dim wapp As New Word.Application()

    Try
        oDoc = wapp.Documents.Open(TextBox1.Text & "\" & "TEST.doc")

        For Each Senetence As Word.Range In oDoc.Sentences
            For Each Character As Word.Range In Senetence.Characters
                If Character.Font.Name <> "Verdana" AndAlso Character.Font.Name <> "Arial" Then
                    MsgBox(" Font Name not matching Error Line number " & Senetence.Text)
                    Exit For
                End If
            Next
        Next
        oDoc.Close()
    Catch ex As Exception
        oDoc.Close()
    End Try

End Sub

关于vb.net - 使用 VB.NET 检查 Word 文档中的字体样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21325158/

相关文章:

c++ - VS2010 : Add company name,等到一个DLL

visual-studio-2010 - 点击执行

visual-studio-2010 - CUDA 工具包 5 生产版本和 Visual Studio 2010 集成

vba - 如何漂亮地打印VBA代码?

javascript - 访问服务器端共享变量

vb.net - 如何在 vb.net 中启动一个不可见的进程?

vb.net - 将数据表中不同类型的列合并到一个更大的数据表中

vb.net - Crystal 报表公式错误

c# - 用C#在Word中用图片替换文本

html - 在 MS Word 中复制 HTML 样式表的外观