Добавить тень к тексту в MS Word от VBA - PullRequest
0 голосов
/ 07 ноября 2018

Я работаю над шаблоном в MS Word, мне нужно добавить тень к выделению.

Макро рекордер выдает

Selection.Font.Shadow = true

но я не знал, как его использовать и как определить тип тени и ее свойства. Я не нашел названия этих типов или того, как с ними бороться, например, установил глубину или угол.

1 Ответ

0 голосов
/ 07 ноября 2018

Действительно, рекордер макросов не дает много информации о работе с «Текстовыми эффектами» ...

Свойство Shadow может указывать только, включена ли тень текстового эффекта или нет.

Чтобы изменить внешний вид тени, необходимо работать с ShadowFormat объектом. Документация для ShadowFormat несколько вводит в заблуждение, поскольку относится только к Shape объектам. Но те же свойства применяются к теням для шрифтов.

Более того, свойство для возврата ShadowFormat объекта для Font - это не ShadowFormat, а TextShadow. Так что код, как в следующем примере:

Sub AddFontShadow()
    Dim shad As Word.ShadowFormat

    Set shad = Selection.Font.TextShadow
    With shad
        Debug.Print "Blur: " & .Blur, _
                    "ForeColor: " & .ForeColor, _
                    "Obscured: " & .Obscured, _
                    "OffsetX: " & .OffsetX, _
                    "OffsetY: " & .OffsetY, _
                    "Style: " & .style, _
                    "Transparency: " & .Transparency, _
                    "Type: " & .Type
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...