gpt4 book ai didi

c# - Powerpoint 中形状的部分下划线检查不起作用?

转载 作者:太空宇宙 更新时间:2023-11-03 12:09:06 24 4
gpt4 key购买 nike

ppShape.TextFrame.TextRange.Font.Underline == MsoTriState.msoTrue
ppShape.TextFrame.TextRange.Font.Underline == MsoTriState.msoFalse
ppShape.TextFrame.TextRange.Font.Underline == MsoTriState.msoTriStateMixed

上面的代码检查 powerpoint 形状是否有...1.所有文字都加下划线2.所有文字不加下划线3. 部分文字加下划线

第三点,部分文本加下划线不起作用,对于形状混合的下划线文本,随机返回 false 或 true。

这对粗体和斜体来说效果很好,即

ppShape.TextFrame.TextRange.Font.Bold == MsoTriState.msoTriStateMixed
ppShape.TextFrame.TextRange.Font.Italic == MsoTriState.msoTriStateMixed

我还在 GitHub 上向微软提出了关于这个问题的问题, https://github.com/MicrosoftDocs/VBA-Docs/issues/462

让我知道是否有任何方法可以解决这个问题,或者至少有任何替代方法可以解决这个问题???

最佳答案

作为解决方法,您可以检查 TextRange 中的每个运行。在 VBA 中,您可以将形状传递给这样的函数:

Function IsUnderlined(oSh As Shape) As Boolean
Dim oRng As TextRange
For Each oRng In oSh.TextFrame.TextRange.Runs
If oRng.Font.Underline Then
IsUnderlined = True
Exit Function
End If
Next
End Function

如果文本中的任何字符带有下划线,该函数将返回 True。

关于c# - Powerpoint 中形状的部分下划线检查不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53368191/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com